From 3822b0f7d4fc1ff47dc5aca8da9745934a715622 Mon Sep 17 00:00:00 2001 From: Alex Tsitsiura Date: Wed, 8 Nov 2023 16:43:52 +0200 Subject: [PATCH] [Telink] Add retention target & Update builds to docker version 25 (#30271) * [Telink] Add tlsr9528a retention overlay * [Telink]: Fixed -wundef for CONFIG_BT option Fixed undef error for CONFIG_BT option Signed-off-by: Misha Tkachenko * [Telink]: Extended common heap size Extended common heap size (COMMON_LIBC_MALLOC_ARENA_SIZE) to 12288 bytes Signed-off-by: Misha Tkachenko * [Telink]: Added Thread-only mode Added Thread-only mode for testing Signed-off-by: Misha Tkachenko * [Telink] Fix after rebase * [Telink] Use base board without retention for mcuboot build * [Telink] Add retention board to CI * [Telink] Disable LEDs for retention board * [Telink] Add script for update Telink Zephyr to specific revision * [Telink] Fix crash/hang during factory reset * [Telink] Disable Update Zephyr to specific revision by default * [Telink] Update builds to docker version 25 * Restyled by whitespace * Restyled by clang-format --------- Signed-off-by: Misha Tkachenko Co-authored-by: Serhii Salamakha Co-authored-by: Misha Tkachenko Co-authored-by: Andrii Bilynskyi Co-authored-by: Restyled.io Co-authored-by: Andrei Litvin --- .github/workflows/bloat_check.yaml | 2 +- .github/workflows/build.yaml | 10 ++-- .github/workflows/chef.yaml | 11 ++-- .github/workflows/cirque.yaml | 2 +- .github/workflows/doxygen.yaml | 2 +- .github/workflows/examples-ameba.yaml | 2 +- .github/workflows/examples-asr.yaml | 2 +- .github/workflows/examples-bouffalolab.yaml | 2 +- .../workflows/examples-cc13x2x7_26x2x7.yaml | 2 +- .github/workflows/examples-cc32xx.yaml | 2 +- .github/workflows/examples-efr32.yaml | 2 +- .github/workflows/examples-esp32.yaml | 4 +- .github/workflows/examples-infineon.yaml | 2 +- .github/workflows/examples-k32w.yaml | 2 +- .github/workflows/examples-linux-arm.yaml | 2 +- .github/workflows/examples-linux-imx.yaml | 2 +- .../workflows/examples-linux-standalone.yaml | 2 +- .github/workflows/examples-mbed.yaml | 2 +- .github/workflows/examples-mw320.yaml | 2 +- .github/workflows/examples-nrfconnect.yaml | 2 +- .github/workflows/examples-openiotsdk.yaml | 2 +- .github/workflows/examples-qpg.yaml | 2 +- .github/workflows/examples-stm32.yaml | 2 +- .github/workflows/examples-telink.yaml | 45 ++++++++------- .github/workflows/examples-tizen.yaml | 2 +- .github/workflows/full-android.yaml | 2 +- .github/workflows/fuzzing-build.yaml | 2 +- .github/workflows/java-tests.yaml | 2 +- .github/workflows/lint.yml | 2 +- .github/workflows/minimal-build.yaml | 2 +- .github/workflows/qemu.yaml | 4 +- .github/workflows/release_artifacts.yaml | 4 +- .github/workflows/smoketest-android.yaml | 2 +- .github/workflows/tests.yaml | 4 +- .github/workflows/unit_integration_test.yaml | 2 +- .github/workflows/zap_regeneration.yaml | 2 +- .github/workflows/zap_templates.yaml | 2 +- config/telink/chip-module/CMakeLists.txt | 11 ++-- config/telink/chip-module/Kconfig.defaults | 25 +++++++- .../air-quality-sensor-app/telink/prj.conf | 6 -- examples/all-clusters-app/ameba/README.md | 4 +- examples/all-clusters-app/telink/prj.conf | 6 -- .../all-clusters-minimal-app/ameba/README.md | 4 +- examples/bridge-app/telink/prj.conf | 6 -- examples/chef/telink/prj.conf | 6 -- examples/contact-sensor-app/telink/prj.conf | 6 -- examples/light-switch-app/ameba/README.md | 4 +- examples/light-switch-app/telink/prj.conf | 6 -- .../light-switch-app/telink/src/AppTask.cpp | 2 + examples/lighting-app/ameba/README.md | 4 +- examples/lighting-app/telink/prj.conf | 6 -- examples/lock-app/telink/prj.conf | 6 -- examples/ota-requestor-app/ameba/README.md | 4 +- examples/ota-requestor-app/telink/prj.conf | 6 -- examples/pigweed-app/ameba/README.md | 4 +- .../telink/common/include/AppTaskCommon.h | 2 +- .../telink/common/src/AppTaskCommon.cpp | 17 +++++- .../platform/telink/util/src/LEDWidget.cpp | 17 +++++- .../platform/telink/util/src/PWMDevice.cpp | 7 ++- examples/pump-app/telink/prj.conf | 6 -- examples/pump-controller-app/telink/prj.conf | 6 -- .../resource-monitoring-app/telink/prj.conf | 6 -- examples/shell/telink/prj.conf | 6 -- examples/smoke-co-alarm-app/telink/prj.conf | 6 -- .../telink/prj.conf | 6 -- examples/thermostat/telink/prj.conf | 6 -- examples/window-app/telink/prj.conf | 6 -- integrations/cloudbuild/build-all.yaml | 7 ++- integrations/cloudbuild/chef.yaml | 6 +- integrations/cloudbuild/smoke-test.yaml | 14 ++--- scripts/build/build/targets.py | 1 + scripts/build/builders/telink.py | 3 + .../build/testdata/all_targets_linux_x64.txt | 2 +- scripts/tools/telink/update_zephyr.py | 57 +++++++++++++++++++ .../telink/CHIPDevicePlatformConfig.h | 4 ++ src/platform/telink/CHIPPlatformConfig.h | 4 -- .../telink/tlsr9528a_retention.overlay | 55 ++++++++++++++++++ src/test_driver/tizen/README.md | 4 +- 78 files changed, 288 insertions(+), 218 deletions(-) create mode 100755 scripts/tools/telink/update_zephyr.py create mode 100644 src/platform/telink/tlsr9528a_retention.overlay diff --git a/.github/workflows/bloat_check.yaml b/.github/workflows/bloat_check.yaml index 36908d97d06385..fe3876435755d0 100644 --- a/.github/workflows/bloat_check.yaml +++ b/.github/workflows/bloat_check.yaml @@ -33,7 +33,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 steps: - name: Checkout diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 1fdec87ac8a696..66ae3a04488447 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -40,7 +40,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/log_output:/tmp/test_logs" options: --privileged --sysctl "net.ipv6.conf.all.disable_ipv6=0 @@ -135,7 +135,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/log_output:/tmp/test_logs" options: --privileged --sysctl "net.ipv6.conf.all.disable_ipv6=0 @@ -283,7 +283,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/log_output:/tmp/test_logs" options: --sysctl "net.ipv6.conf.all.disable_ipv6=0 @@ -343,7 +343,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/log_output:/tmp/test_logs" options: --sysctl "net.ipv6.conf.all.disable_ipv6=0 @@ -451,7 +451,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/log_output:/tmp/test_logs" options: --privileged --sysctl "net.ipv6.conf.all.disable_ipv6=0 diff --git a/.github/workflows/chef.yaml b/.github/workflows/chef.yaml index e1de11ca0becb1..abb438c004fa76 100644 --- a/.github/workflows/chef.yaml +++ b/.github/workflows/chef.yaml @@ -33,7 +33,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 options: --user root steps: @@ -54,7 +54,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-esp32:24 + image: ghcr.io/project-chip/chip-build-esp32:25 options: --user root steps: @@ -75,7 +75,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-nrf-platform:24 + image: ghcr.io/project-chip/chip-build-nrf-platform:25 options: --user root steps: @@ -96,7 +96,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-telink:24 + image: ghcr.io/project-chip/chip-build-telink:25 options: --user root steps: @@ -106,6 +106,9 @@ jobs: uses: ./.github/actions/checkout-submodules-and-bootstrap with: platform: telink + # - name: Update Zephyr to specific revision (for developers purpose) + # shell: bash + # run: scripts/run_in_build_env.sh "python3 scripts/tools/telink/update_zephyr.py e6a32f41ccec55c2233631406842b71ff270089d" - name: CI Examples Telink shell: bash run: | diff --git a/.github/workflows/cirque.yaml b/.github/workflows/cirque.yaml index 5338ed27e4c2fe..8a869f9577928f 100644 --- a/.github/workflows/cirque.yaml +++ b/.github/workflows/cirque.yaml @@ -40,7 +40,7 @@ jobs: # need to run with privilege, which isn't supported by job.XXX.contaner # https://github.com/actions/container-action/issues/2 # container: - # image: ghcr.io/project-chip/chip-build-cirque:24 + # image: ghcr.io/project-chip/chip-build-cirque:25 # volumes: # - "/tmp:/tmp" # - "/dev/pts:/dev/pts" diff --git a/.github/workflows/doxygen.yaml b/.github/workflows/doxygen.yaml index 0480d013741b85..4dcee19d7ee344 100644 --- a/.github/workflows/doxygen.yaml +++ b/.github/workflows/doxygen.yaml @@ -81,7 +81,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/project-chip/chip-build-doxygen:24 + image: ghcr.io/project-chip/chip-build-doxygen:25 if: github.actor != 'restyled-io[bot]' diff --git a/.github/workflows/examples-ameba.yaml b/.github/workflows/examples-ameba.yaml index 95ed4e23999c76..90d707b2a6ccc4 100644 --- a/.github/workflows/examples-ameba.yaml +++ b/.github/workflows/examples-ameba.yaml @@ -36,7 +36,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-ameba:24 + image: ghcr.io/project-chip/chip-build-ameba:25 options: --user root steps: diff --git a/.github/workflows/examples-asr.yaml b/.github/workflows/examples-asr.yaml index 93c26450b01c85..f49c6d10f86dfd 100644 --- a/.github/workflows/examples-asr.yaml +++ b/.github/workflows/examples-asr.yaml @@ -34,7 +34,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-asr:24 + image: ghcr.io/project-chip/chip-build-asr:25 options: --user root steps: diff --git a/.github/workflows/examples-bouffalolab.yaml b/.github/workflows/examples-bouffalolab.yaml index e0aa45bf677c50..fdaba18c3a06a0 100644 --- a/.github/workflows/examples-bouffalolab.yaml +++ b/.github/workflows/examples-bouffalolab.yaml @@ -35,7 +35,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-bouffalolab:24 + image: ghcr.io/project-chip/chip-build-bouffalolab:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" steps: diff --git a/.github/workflows/examples-cc13x2x7_26x2x7.yaml b/.github/workflows/examples-cc13x2x7_26x2x7.yaml index ea90b8729766f9..77371b836fe571 100644 --- a/.github/workflows/examples-cc13x2x7_26x2x7.yaml +++ b/.github/workflows/examples-cc13x2x7_26x2x7.yaml @@ -36,7 +36,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-ti:24 + image: ghcr.io/project-chip/chip-build-ti:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" steps: diff --git a/.github/workflows/examples-cc32xx.yaml b/.github/workflows/examples-cc32xx.yaml index f45559e5d173f2..5e8ac6d3f5809d 100644 --- a/.github/workflows/examples-cc32xx.yaml +++ b/.github/workflows/examples-cc32xx.yaml @@ -37,7 +37,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-ti:24 + image: ghcr.io/project-chip/chip-build-ti:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" steps: diff --git a/.github/workflows/examples-efr32.yaml b/.github/workflows/examples-efr32.yaml index c4d29e501a62c7..65cec1c0fc5200 100644 --- a/.github/workflows/examples-efr32.yaml +++ b/.github/workflows/examples-efr32.yaml @@ -38,7 +38,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-efr32:24 + image: ghcr.io/project-chip/chip-build-efr32:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" steps: diff --git a/.github/workflows/examples-esp32.yaml b/.github/workflows/examples-esp32.yaml index 111c28ccfd2d10..11a808306a33e9 100644 --- a/.github/workflows/examples-esp32.yaml +++ b/.github/workflows/examples-esp32.yaml @@ -34,7 +34,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-esp32:24 + image: ghcr.io/project-chip/chip-build-esp32:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" @@ -130,7 +130,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-esp32:24 + image: ghcr.io/project-chip/chip-build-esp32:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" diff --git a/.github/workflows/examples-infineon.yaml b/.github/workflows/examples-infineon.yaml index f225a4fba5867f..783d13352aa8c8 100644 --- a/.github/workflows/examples-infineon.yaml +++ b/.github/workflows/examples-infineon.yaml @@ -35,7 +35,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-infineon:24 + image: ghcr.io/project-chip/chip-build-infineon:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" steps: diff --git a/.github/workflows/examples-k32w.yaml b/.github/workflows/examples-k32w.yaml index 58e366b6cfeca5..53bfc177199839 100644 --- a/.github/workflows/examples-k32w.yaml +++ b/.github/workflows/examples-k32w.yaml @@ -37,7 +37,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-k32w:24 + image: ghcr.io/project-chip/chip-build-k32w:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" steps: diff --git a/.github/workflows/examples-linux-arm.yaml b/.github/workflows/examples-linux-arm.yaml index f0f62060f0930e..589069998d6e69 100644 --- a/.github/workflows/examples-linux-arm.yaml +++ b/.github/workflows/examples-linux-arm.yaml @@ -34,7 +34,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-crosscompile:24 + image: ghcr.io/project-chip/chip-build-crosscompile:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" diff --git a/.github/workflows/examples-linux-imx.yaml b/.github/workflows/examples-linux-imx.yaml index d64409d1146a66..69b64649d20451 100644 --- a/.github/workflows/examples-linux-imx.yaml +++ b/.github/workflows/examples-linux-imx.yaml @@ -34,7 +34,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-imx:24 + image: ghcr.io/project-chip/chip-build-imx:25 steps: - name: Checkout diff --git a/.github/workflows/examples-linux-standalone.yaml b/.github/workflows/examples-linux-standalone.yaml index 98061009dc4fd9..76391d188a219c 100644 --- a/.github/workflows/examples-linux-standalone.yaml +++ b/.github/workflows/examples-linux-standalone.yaml @@ -34,7 +34,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" diff --git a/.github/workflows/examples-mbed.yaml b/.github/workflows/examples-mbed.yaml index 9863d8f3f89703..8d680b52bdb31f 100644 --- a/.github/workflows/examples-mbed.yaml +++ b/.github/workflows/examples-mbed.yaml @@ -40,7 +40,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-mbed-os:24 + image: ghcr.io/project-chip/chip-build-mbed-os:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" diff --git a/.github/workflows/examples-mw320.yaml b/.github/workflows/examples-mw320.yaml index 233a6f4fe9d540..16ac5114070c5e 100644 --- a/.github/workflows/examples-mw320.yaml +++ b/.github/workflows/examples-mw320.yaml @@ -37,7 +37,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" steps: diff --git a/.github/workflows/examples-nrfconnect.yaml b/.github/workflows/examples-nrfconnect.yaml index 3c22eaa79a0825..dc09d6f433abba 100644 --- a/.github/workflows/examples-nrfconnect.yaml +++ b/.github/workflows/examples-nrfconnect.yaml @@ -37,7 +37,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-nrf-platform:24 + image: ghcr.io/project-chip/chip-build-nrf-platform:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" diff --git a/.github/workflows/examples-openiotsdk.yaml b/.github/workflows/examples-openiotsdk.yaml index 5dc15c4ca2ec62..a61d68d8d4f9e8 100644 --- a/.github/workflows/examples-openiotsdk.yaml +++ b/.github/workflows/examples-openiotsdk.yaml @@ -38,7 +38,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-openiotsdk:24 + image: ghcr.io/project-chip/chip-build-openiotsdk:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" options: --privileged diff --git a/.github/workflows/examples-qpg.yaml b/.github/workflows/examples-qpg.yaml index 0f950134d2ff45..a1bc1d47dffad4 100644 --- a/.github/workflows/examples-qpg.yaml +++ b/.github/workflows/examples-qpg.yaml @@ -37,7 +37,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" steps: diff --git a/.github/workflows/examples-stm32.yaml b/.github/workflows/examples-stm32.yaml index 8f59b06aa50e4e..f9455c54b38d83 100644 --- a/.github/workflows/examples-stm32.yaml +++ b/.github/workflows/examples-stm32.yaml @@ -38,7 +38,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" steps: diff --git a/.github/workflows/examples-telink.yaml b/.github/workflows/examples-telink.yaml index 994d6b5d78a325..92cb016442b6df 100644 --- a/.github/workflows/examples-telink.yaml +++ b/.github/workflows/examples-telink.yaml @@ -36,7 +36,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-telink:24 + image: ghcr.io/project-chip/chip-build-telink:25 volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" @@ -54,13 +54,16 @@ jobs: with: gh-context: ${{ toJson(github) }} - - name: Build example Telink (B92) Air Quality Sensor App + # - name: Update Zephyr to specific revision (for developers purpose) + # run: scripts/run_in_build_env.sh "python3 scripts/tools/telink/update_zephyr.py e6a32f41ccec55c2233631406842b71ff270089d" + + - name: Build example Telink (B92 retention) Air Quality Sensor App run: | ./scripts/run_in_build_env.sh \ - "./scripts/build/build_examples.py --target 'telink-tlsr9528a-air-quality-sensor' build" + "./scripts/build/build_examples.py --target 'telink-tlsr9528a_retention-air-quality-sensor' build" .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \ - telink tlsr9528a air-quality-sensor-app \ - out/telink-tlsr9528a-air-quality-sensor/zephyr/zephyr.elf \ + telink tlsr9528a_retention air-quality-sensor-app \ + out/telink-tlsr9528a_retention-air-quality-sensor/zephyr/zephyr.elf \ /tmp/bloat_reports/ - name: clean out build output @@ -102,13 +105,13 @@ jobs: - name: clean out build output run: rm -rf ./out - - name: Build example Telink (B92) Contact Sensor App + - name: Build example Telink (B92 retention) Contact Sensor App run: | ./scripts/run_in_build_env.sh \ - "./scripts/build/build_examples.py --target 'telink-tlsr9528a-contact-sensor' build" + "./scripts/build/build_examples.py --target 'telink-tlsr9528a_retention-contact-sensor' build" .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \ - telink tlsr9528a contact-sensor-app \ - out/telink-tlsr9528a-contact-sensor/zephyr/zephyr.elf \ + telink tlsr9528a_retention contact-sensor-app \ + out/telink-tlsr9528a_retention-contact-sensor/zephyr/zephyr.elf \ /tmp/bloat_reports/ - name: clean out build output @@ -148,13 +151,13 @@ jobs: - name: clean out build output run: rm -rf ./out - - name: Build example Telink (B92) Lock App with DFU + - name: Build example Telink (B92 retention) Lock App with DFU run: | ./scripts/run_in_build_env.sh \ - "./scripts/build/build_examples.py --target 'telink-tlsr9528a-lock-dfu' build" + "./scripts/build/build_examples.py --target 'telink-tlsr9528a_retention-lock-dfu' build" .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \ - telink tlsr9528a lock-app-dfu \ - out/telink-tlsr9528a-lock-dfu/zephyr/zephyr.elf \ + telink tlsr9528a_retention lock-app-dfu \ + out/telink-tlsr9528a_retention-lock-dfu/zephyr/zephyr.elf \ /tmp/bloat_reports/ - name: clean out build output @@ -220,25 +223,25 @@ jobs: - name: clean out build output run: rm -rf ./out - - name: Build example Telink (B92) Smoke CO Alarm App + - name: Build example Telink (B92 retention) Smoke CO Alarm App run: | ./scripts/run_in_build_env.sh \ - "./scripts/build/build_examples.py --target 'telink-tlsr9528a-smoke-co-alarm' build" + "./scripts/build/build_examples.py --target 'telink-tlsr9528a_retention-smoke-co-alarm' build" .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \ - telink tlsr9528a smoke_co_alarm-app \ - out/telink-tlsr9528a-smoke-co-alarm/zephyr/zephyr.elf \ + telink tlsr9528a_retention smoke_co_alarm-app \ + out/telink-tlsr9528a_retention-smoke-co-alarm/zephyr/zephyr.elf \ /tmp/bloat_reports/ - name: clean out build output run: rm -rf ./out - - name: Build example Telink (B92) Temperature Measurement App + - name: Build example Telink (B92 retention) Temperature Measurement App run: | ./scripts/run_in_build_env.sh \ - "./scripts/build/build_examples.py --target 'telink-tlsr9528a-temperature-measurement' build" + "./scripts/build/build_examples.py --target 'telink-tlsr9528a_retention-temperature-measurement' build" .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \ - telink tlsr9528a temperature-measurement-app \ - out/telink-tlsr9528a-temperature-measurement/zephyr/zephyr.elf \ + telink tlsr9528a_retention temperature-measurement-app \ + out/telink-tlsr9528a_retention-temperature-measurement/zephyr/zephyr.elf \ /tmp/bloat_reports/ - name: clean out build output diff --git a/.github/workflows/examples-tizen.yaml b/.github/workflows/examples-tizen.yaml index f01153240ffac6..ed3886f31b2b43 100644 --- a/.github/workflows/examples-tizen.yaml +++ b/.github/workflows/examples-tizen.yaml @@ -34,7 +34,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-tizen:24 + image: ghcr.io/project-chip/chip-build-tizen:25 options: --user root volumes: - "/tmp/bloat_reports:/tmp/bloat_reports" diff --git a/.github/workflows/full-android.yaml b/.github/workflows/full-android.yaml index 20ba8990ed93f0..d34876e1f5f4f4 100644 --- a/.github/workflows/full-android.yaml +++ b/.github/workflows/full-android.yaml @@ -36,7 +36,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-android:24 + image: ghcr.io/project-chip/chip-build-android:25 volumes: - "/tmp/log_output:/tmp/test_logs" diff --git a/.github/workflows/fuzzing-build.yaml b/.github/workflows/fuzzing-build.yaml index adbe225b88fe4c..007fde6ec94a9a 100644 --- a/.github/workflows/fuzzing-build.yaml +++ b/.github/workflows/fuzzing-build.yaml @@ -33,7 +33,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/log_output:/tmp/test_logs" diff --git a/.github/workflows/java-tests.yaml b/.github/workflows/java-tests.yaml index 9cd1dea0447d04..69d81fedb80224 100644 --- a/.github/workflows/java-tests.yaml +++ b/.github/workflows/java-tests.yaml @@ -40,7 +40,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/project-chip/chip-build-java:24 + image: ghcr.io/project-chip/chip-build-java:25 options: --privileged --sysctl "net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=0 net.ipv6.conf.all.forwarding=0" diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 9db99f6461f459..1be3fe8d2a3c10 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -29,7 +29,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 steps: - name: Checkout diff --git a/.github/workflows/minimal-build.yaml b/.github/workflows/minimal-build.yaml index ff520e9e308fca..82f6667c95f54d 100644 --- a/.github/workflows/minimal-build.yaml +++ b/.github/workflows/minimal-build.yaml @@ -31,7 +31,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/project-chip/chip-build-minimal:24 + image: ghcr.io/project-chip/chip-build-minimal:25 steps: - name: Checkout diff --git a/.github/workflows/qemu.yaml b/.github/workflows/qemu.yaml index 6a61aa520f6ce4..e1e221ab2d5b7e 100644 --- a/.github/workflows/qemu.yaml +++ b/.github/workflows/qemu.yaml @@ -38,7 +38,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-esp32-qemu:24 + image: ghcr.io/project-chip/chip-build-esp32-qemu:25 volumes: - "/tmp/log_output:/tmp/test_logs" @@ -76,7 +76,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-tizen-qemu:24 + image: ghcr.io/project-chip/chip-build-tizen-qemu:25 volumes: - "/tmp/log_output:/tmp/test_logs" diff --git a/.github/workflows/release_artifacts.yaml b/.github/workflows/release_artifacts.yaml index dbe98f9666f6a6..c3feed075eb27e 100644 --- a/.github/workflows/release_artifacts.yaml +++ b/.github/workflows/release_artifacts.yaml @@ -32,7 +32,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/project-chip/chip-build-esp32:24 + image: ghcr.io/project-chip/chip-build-esp32:25 steps: - name: Checkout @@ -68,7 +68,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/project-chip/chip-build-efr32:24 + image: ghcr.io/project-chip/chip-build-efr32:25 steps: - name: Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/smoketest-android.yaml b/.github/workflows/smoketest-android.yaml index 2ff570884f3a1c..969f6c6fd72da3 100644 --- a/.github/workflows/smoketest-android.yaml +++ b/.github/workflows/smoketest-android.yaml @@ -37,7 +37,7 @@ jobs: if: github.actor != 'restyled-io[bot]' container: - image: ghcr.io/project-chip/chip-build-android:24 + image: ghcr.io/project-chip/chip-build-android:25 volumes: - "/tmp/log_output:/tmp/test_logs" diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index d610edef1dc623..2efb0dd3fb80ec 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -47,7 +47,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 options: --privileged --sysctl "net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1" @@ -404,7 +404,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 options: --privileged --sysctl "net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=0 net.ipv6.conf.all.forwarding=0" diff --git a/.github/workflows/unit_integration_test.yaml b/.github/workflows/unit_integration_test.yaml index e3c39f21438aec..ae2bdb82fc0b65 100644 --- a/.github/workflows/unit_integration_test.yaml +++ b/.github/workflows/unit_integration_test.yaml @@ -37,7 +37,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 volumes: - "/tmp/log_output:/tmp/test_logs" options: --privileged --sysctl "net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1" diff --git a/.github/workflows/zap_regeneration.yaml b/.github/workflows/zap_regeneration.yaml index 68b8782f576a43..02994409014617 100644 --- a/.github/workflows/zap_regeneration.yaml +++ b/.github/workflows/zap_regeneration.yaml @@ -30,7 +30,7 @@ jobs: runs-on: ubuntu-20.04 container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 defaults: run: shell: sh diff --git a/.github/workflows/zap_templates.yaml b/.github/workflows/zap_templates.yaml index bf1e305c4c9d51..0747c1da0f877d 100644 --- a/.github/workflows/zap_templates.yaml +++ b/.github/workflows/zap_templates.yaml @@ -32,7 +32,7 @@ jobs: runs-on: ubuntu-20.04 container: - image: ghcr.io/project-chip/chip-build:24 + image: ghcr.io/project-chip/chip-build:25 defaults: run: shell: sh diff --git a/config/telink/chip-module/CMakeLists.txt b/config/telink/chip-module/CMakeLists.txt index e9d506e538f131..545074b0b928b3 100644 --- a/config/telink/chip-module/CMakeLists.txt +++ b/config/telink/chip-module/CMakeLists.txt @@ -143,10 +143,11 @@ set_property(GLOBAL APPEND PROPERTY ZEPHYR_INTERFACE_LIBS chip) # Define 'chip-ota-image' target for building CHIP OTA image # ============================================================================== +string(REPLACE "_retention" "" BASE_BOARD ${BOARD}) if(${TLNK_USB_DONGLE} MATCHES y) - if(EXISTS "${CHIP_ROOT}/src/platform/telink/${BOARD}_usb_boot.overlay") - set(USB_BOOT_DTC_OVERLAY_FILE "${CHIP_ROOT}/src/platform/telink/${BOARD}_usb_boot.overlay") + if(EXISTS "${CHIP_ROOT}/src/platform/telink/${BASE_BOARD}_usb_boot.overlay") + set(USB_BOOT_DTC_OVERLAY_FILE "${CHIP_ROOT}/src/platform/telink/${BASE_BOARD}_usb_boot.overlay") else() unset(USB_BOOT_DTC_OVERLAY_FILE) endif() @@ -154,8 +155,8 @@ else() unset(USB_BOOT_DTC_OVERLAY_FILE) endif() -if(EXISTS "${CHIP_ROOT}/src/platform/telink/${BOARD}.overlay") - set(GLOBAL_DTC_OVERLAY_FILE "${CHIP_ROOT}/src/platform/telink/${BOARD}.overlay") +if(EXISTS "${CHIP_ROOT}/src/platform/telink/${BASE_BOARD}.overlay") + set(GLOBAL_DTC_OVERLAY_FILE "${CHIP_ROOT}/src/platform/telink/${BASE_BOARD}.overlay") else() unset(GLOBAL_DTC_OVERLAY_FILE) endif() @@ -184,7 +185,7 @@ math(EXPR boot_blocks "${mcuboot_size} / ${BLOCK_SIZE}" OUTPUT_FORMAT DECIMAL) if (CONFIG_BOOTLOADER_MCUBOOT) add_custom_target(build_mcuboot ALL COMMAND - west build -b ${BOARD} -d build_mcuboot ${ZEPHYR_BASE}/../bootloader/mcuboot/boot/zephyr + west build -b ${BASE_BOARD} -d build_mcuboot ${ZEPHYR_BASE}/../bootloader/mcuboot/boot/zephyr -- -DOVERLAY_CONFIG=${GLOBAL_BOOTLOADER_CONF_OVERLAY_FILE} -DDTC_OVERLAY_FILE="${GLOBAL_DTC_OVERLAY_FILE};${FLASH_DTC_OVERLAY_FILE};${USB_BOOT_DTC_OVERLAY_FILE}" COMMAND cp ${PROJECT_BINARY_DIR}/../modules/chip-module/build_mcuboot/zephyr/zephyr.bin ${PROJECT_BINARY_DIR}/zephyr.mcuboot.bin diff --git a/config/telink/chip-module/Kconfig.defaults b/config/telink/chip-module/Kconfig.defaults index f346a2c1eeb807..54137bc281562b 100644 --- a/config/telink/chip-module/Kconfig.defaults +++ b/config/telink/chip-module/Kconfig.defaults @@ -64,7 +64,7 @@ config INIT_STACKS default y config IDLE_STACK_SIZE - default 387 if PM + default 512 if PM config ISR_STACK_SIZE default 502 if PM @@ -73,7 +73,7 @@ config SYSTEM_WORKQUEUE_STACK_SIZE default 616 if PM config HEAP_MEM_POOL_SIZE - default 128 if PM + default 256 config COMMON_LIBC_MALLOC_ARENA_SIZE default 12288 @@ -98,6 +98,9 @@ config NET_BUF_TX_COUNT default 16 if PM default 32 +config GPIO + default y + # Bluetooth Low Energy configs config BT @@ -154,6 +157,24 @@ choice B9X_BLE_CTRL_MAC_TYPE default B9X_BLE_CTRL_MAC_TYPE_RANDOM_STATIC endchoice +# Board retention config +if BOARD_TLSR9528A_RETENTION || BOARD_TLSR9518ADK80D_RETENTION +config BOARD_TLSR9X_NON_RETENTION_RAM_CODE + default y if PM + +config TELINK_B9x_MATTER_RETENTION_LAYOUT + default y if PM + +config PWM + default n +endif + +# Board non-retention config +if BOARD_TLSR9528A || BOARD_TLSR9518ADK80D +config PWM + default y +endif + # Config dynamic interrupts to have posibility to switch between BLE/Thread radio drivers config DYNAMIC_INTERRUPTS default y diff --git a/examples/air-quality-sensor-app/telink/prj.conf b/examples/air-quality-sensor-app/telink/prj.conf index 703e78efb7ed4a..b43fbe9636d9aa 100644 --- a/examples/air-quality-sensor-app/telink/prj.conf +++ b/examples/air-quality-sensor-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/all-clusters-app/ameba/README.md b/examples/all-clusters-app/ameba/README.md index 139512593a0fef..8bd7bb532fcb89 100644 --- a/examples/all-clusters-app/ameba/README.md +++ b/examples/all-clusters-app/ameba/README.md @@ -27,11 +27,11 @@ The CHIP demo application is supported on - Pull docker image: - $ docker pull ghcr.io/project-chip/chip-build-ameba:24 + $ docker pull ghcr.io/project-chip/chip-build-ameba:25 - Run docker container: - $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:24 + $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:25 - Setup build environment: diff --git a/examples/all-clusters-app/telink/prj.conf b/examples/all-clusters-app/telink/prj.conf index f0e82ad971d4d8..18b7edcc11f395 100644 --- a/examples/all-clusters-app/telink/prj.conf +++ b/examples/all-clusters-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/all-clusters-minimal-app/ameba/README.md b/examples/all-clusters-minimal-app/ameba/README.md index 1583fe5fccea87..1735aa5530ac03 100644 --- a/examples/all-clusters-minimal-app/ameba/README.md +++ b/examples/all-clusters-minimal-app/ameba/README.md @@ -27,13 +27,13 @@ The CHIP demo application is supported on - Pull docker image: ``` - $ docker pull ghcr.io/project-chip/chip-build-ameba:24 + $ docker pull ghcr.io/project-chip/chip-build-ameba:25 ``` - Run docker container: ``` - $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:24 + $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:25 ``` - Setup build environment: diff --git a/examples/bridge-app/telink/prj.conf b/examples/bridge-app/telink/prj.conf index c6365484b80b22..fba10bf033c9e7 100644 --- a/examples/bridge-app/telink/prj.conf +++ b/examples/bridge-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/chef/telink/prj.conf b/examples/chef/telink/prj.conf index 9b99b6a3fcc40c..5fdb2805860a94 100755 --- a/examples/chef/telink/prj.conf +++ b/examples/chef/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/contact-sensor-app/telink/prj.conf b/examples/contact-sensor-app/telink/prj.conf index 8eea50ee19b9e4..eefe9b944c8331 100755 --- a/examples/contact-sensor-app/telink/prj.conf +++ b/examples/contact-sensor-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/light-switch-app/ameba/README.md b/examples/light-switch-app/ameba/README.md index 48ab417a33dff5..5fc2a3a587abb0 100644 --- a/examples/light-switch-app/ameba/README.md +++ b/examples/light-switch-app/ameba/README.md @@ -26,11 +26,11 @@ The CHIP demo application is supported on - Pull docker image: - $ docker pull ghcr.io/project-chip/chip-build-ameba:24 + $ docker pull ghcr.io/project-chip/chip-build-ameba:25 - Run docker container: - $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:24 + $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:25 - Setup build environment: diff --git a/examples/light-switch-app/telink/prj.conf b/examples/light-switch-app/telink/prj.conf index 184e824904c519..ebb196bb76980f 100755 --- a/examples/light-switch-app/telink/prj.conf +++ b/examples/light-switch-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/light-switch-app/telink/src/AppTask.cpp b/examples/light-switch-app/telink/src/AppTask.cpp index 1a21866cf6bd6b..39b92cca42519d 100644 --- a/examples/light-switch-app/telink/src/AppTask.cpp +++ b/examples/light-switch-app/telink/src/AppTask.cpp @@ -45,6 +45,8 @@ void AppTask::SwitchActionEventHandler(AppEvent * aEvent) { if (aEvent->Type == AppEvent::kEventType_Button) { + LOG_INF("App button pressed"); + BindingCommandData * data = chip::Platform::New(); data->commandId = chip::app::Clusters::OnOff::Commands::Toggle::Id; data->clusterId = chip::app::Clusters::OnOff::Id; diff --git a/examples/lighting-app/ameba/README.md b/examples/lighting-app/ameba/README.md index 9c7b13ffa22838..c5d897463b3bd4 100644 --- a/examples/lighting-app/ameba/README.md +++ b/examples/lighting-app/ameba/README.md @@ -23,11 +23,11 @@ The CHIP demo application is supported on - Pull docker image: - $ docker pull ghcr.io/project-chip/chip-build-ameba:24 + $ docker pull ghcr.io/project-chip/chip-build-ameba:25 - Run docker container: - $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:24 + $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:25 - Setup build environment: diff --git a/examples/lighting-app/telink/prj.conf b/examples/lighting-app/telink/prj.conf index 0c71925928bec0..566c993ee92dca 100644 --- a/examples/lighting-app/telink/prj.conf +++ b/examples/lighting-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/lock-app/telink/prj.conf b/examples/lock-app/telink/prj.conf index 7b160ed7259367..738b4090c8be80 100755 --- a/examples/lock-app/telink/prj.conf +++ b/examples/lock-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/ota-requestor-app/ameba/README.md b/examples/ota-requestor-app/ameba/README.md index 8f701e2ba6952c..8b45d61e1bae74 100644 --- a/examples/ota-requestor-app/ameba/README.md +++ b/examples/ota-requestor-app/ameba/README.md @@ -6,11 +6,11 @@ A prototype application that demonstrates OTA Requestor capabilities. - Pull docker image: - $ docker pull ghcr.io/project-chip/chip-build-ameba:24 + $ docker pull ghcr.io/project-chip/chip-build-ameba:25 - Run docker container: - $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:24 + $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:25 - Setup build environment: diff --git a/examples/ota-requestor-app/telink/prj.conf b/examples/ota-requestor-app/telink/prj.conf index 82f29519af3bcb..9538841fbc7230 100755 --- a/examples/ota-requestor-app/telink/prj.conf +++ b/examples/ota-requestor-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/pigweed-app/ameba/README.md b/examples/pigweed-app/ameba/README.md index f115117d3db775..18fc33513d1348 100644 --- a/examples/pigweed-app/ameba/README.md +++ b/examples/pigweed-app/ameba/README.md @@ -31,11 +31,11 @@ following features are available: - Pull docker image: - $ docker pull ghcr.io/project-chip/chip-build-ameba:24 + $ docker pull ghcr.io/project-chip/chip-build-ameba:25 - Run docker container: - $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:24 + $ docker run -it -v ${CHIP_DIR}:/root/chip ghcr.io/project-chip/chip-build-ameba:25 - Setup build environment: diff --git a/examples/platform/telink/common/include/AppTaskCommon.h b/examples/platform/telink/common/include/AppTaskCommon.h index 6652a55210f601..e0b344df5b6ec1 100644 --- a/examples/platform/telink/common/include/AppTaskCommon.h +++ b/examples/platform/telink/common/include/AppTaskCommon.h @@ -103,7 +103,7 @@ class AppTaskCommon static void StartBleAdvHandler(AppEvent * aEvent); #endif -#if APP_USE_THREAD_START_BUTTON +#if APP_USE_THREAD_START_BUTTON || !CHIP_DEVICE_CONFIG_ENABLE_CHIPOBLE static void StartThreadButtonEventHandler(void); static void StartThreadHandler(AppEvent * aEvent); #endif diff --git a/examples/platform/telink/common/src/AppTaskCommon.cpp b/examples/platform/telink/common/src/AppTaskCommon.cpp index 0731410dfe07da..d2aa42bfdeb258 100644 --- a/examples/platform/telink/common/src/AppTaskCommon.cpp +++ b/examples/platform/telink/common/src/AppTaskCommon.cpp @@ -73,7 +73,7 @@ constexpr uint32_t kIdentifyFinishOffRateMs = 50; constexpr uint32_t kIdentifyChannelChangeRateMs = 1000; constexpr uint32_t kIdentifyBreatheRateMs = 1000; -const struct pwm_dt_spec sPwmIdentifySpecGreenLed = PWM_DT_SPEC_GET(DT_ALIAS(pwm_led3)); +const struct pwm_dt_spec sPwmIdentifySpecGreenLed = PWM_DT_SPEC_GET_OR(DT_ALIAS(pwm_led3), {}); #endif #if APP_SET_NETWORK_COMM_ENDPOINT_SEC @@ -140,11 +140,13 @@ class AppCallbacks : public AppDelegate void OnCommissioningSessionStarted() override { isComissioningStarted = true; } void OnCommissioningSessionStopped() override { isComissioningStarted = false; } void OnCommissioningSessionEstablishmentError(CHIP_ERROR err) override { sIsCommissioningFailed = true; } +#if CHIP_DEVICE_CONFIG_ENABLE_CHIPOBLE void OnCommissioningWindowClosed() override { if (!isComissioningStarted) chip::DeviceLayer::Internal::BLEMgr().Shutdown(); } +#endif }; AppCallbacks sCallbacks; @@ -240,6 +242,10 @@ CHIP_ERROR AppTaskCommon::StartApp(void) AppEvent event = {}; +#if !CHIP_DEVICE_CONFIG_ENABLE_CHIPOBLE + StartThreadButtonEventHandler(); +#endif + while (true) { GetEvent(&event); @@ -255,7 +261,7 @@ CHIP_ERROR AppTaskCommon::InitCommonParts(void) // Initialize status LED #if CONFIG_CHIP_ENABLE_APPLICATION_STATUS_LED LEDWidget::SetStateUpdateCallback(LEDStateUpdateHandler); - sStatusLED.Init(GPIO_DT_SPEC_GET(DT_ALIAS(system_state_led), gpios)); + sStatusLED.Init(GPIO_DT_SPEC_GET_OR(DT_ALIAS(system_state_led), gpios, {})); UpdateStatusLED(); #endif @@ -611,7 +617,7 @@ void AppTaskCommon::FactoryResetTimerEventHandler(AppEvent * aEvent) LOG_INF("Factory Reset Trigger Counter is cleared"); } -#if APP_USE_THREAD_START_BUTTON +#if APP_USE_THREAD_START_BUTTON || !CHIP_DEVICE_CONFIG_ENABLE_CHIPOBLE void AppTaskCommon::StartThreadButtonEventHandler(void) { AppEvent event; @@ -628,8 +634,13 @@ void AppTaskCommon::StartThreadHandler(AppEvent * aEvent) if (!chip::DeviceLayer::ConnectivityMgr().IsThreadProvisioned()) { // Switch context from BLE to Thread +#if CHIP_DEVICE_CONFIG_ENABLE_CHIPOBLE Internal::BLEManagerImpl sInstance; sInstance.SwitchToIeee802154(); +#else + ThreadStackMgrImpl().SetRadioBlocked(false); + ThreadStackMgrImpl().SetThreadEnabled(true); +#endif StartDefaultThreadNetwork(); } else diff --git a/examples/platform/telink/util/src/LEDWidget.cpp b/examples/platform/telink/util/src/LEDWidget.cpp index 0ea31d5d1b9eee..9db20104b6a69b 100644 --- a/examples/platform/telink/util/src/LEDWidget.cpp +++ b/examples/platform/telink/util/src/LEDWidget.cpp @@ -38,10 +38,17 @@ void LEDWidget::Init(gpio_dt_spec gpio) mGPIO = gpio; mState = false; - int ret = gpio_pin_configure_dt(&mGPIO, GPIO_OUTPUT_ACTIVE); - if (ret < 0) + if (!gpio_is_ready_dt(&mGPIO)) + { + LOG_ERR("GPIO device not ready"); + } + else { - LOG_ERR("GPIO pin %d configure - fail. Status%d\n", mGPIO.pin, ret); + int ret = gpio_pin_configure_dt(&mGPIO, GPIO_OUTPUT_ACTIVE); + if (ret < 0) + { + LOG_ERR("GPIO pin %d configure - fail. Status%d\n", mGPIO.pin, ret); + } } k_timer_init(&mLedTimer, &LEDWidget::LedStateTimerHandler, nullptr); @@ -88,6 +95,10 @@ void LEDWidget::ScheduleStateChange() void LEDWidget::DoSet(bool state) { + if (!gpio_is_ready_dt(&mGPIO)) + { + return; + } mState = state; int ret = gpio_pin_set_dt(&mGPIO, state); if (ret < 0) diff --git a/examples/platform/telink/util/src/PWMDevice.cpp b/examples/platform/telink/util/src/PWMDevice.cpp index 3bdc8509cb0afa..b77126b2b7b802 100644 --- a/examples/platform/telink/util/src/PWMDevice.cpp +++ b/examples/platform/telink/util/src/PWMDevice.cpp @@ -44,8 +44,7 @@ CHIP_ERROR PWMDevice::Init(const pwm_dt_spec * pwmDevice, uint8_t aMinLevel, uin if (!device_is_ready(mPwmDevice->dev)) { - LOG_ERR("PWM device %s is not ready", mPwmDevice->dev->name); - return CHIP_ERROR_INCORRECT_STATE; + LOG_ERR("PWM device %s is not ready", mPwmDevice->dev ? mPwmDevice->dev->name : "N/A"); } k_timer_init(&mPwmLedTimer, &PWMDevice::PwmLedTimerHandler, nullptr); @@ -134,6 +133,10 @@ void PWMDevice::Set(bool aOn) void PWMDevice::UpdateLight(void) { + if (!device_is_ready(mPwmDevice->dev)) + { + return; + } constexpr uint32_t kPwmWidthUs = 20000u; const uint8_t maxEffectiveLevel = mMaxLevel - mMinLevel; const uint8_t effectiveLevel = mState == kState_On ? chip::min(mLevel - mMinLevel, maxEffectiveLevel) : 0; diff --git a/examples/pump-app/telink/prj.conf b/examples/pump-app/telink/prj.conf index 3c0fd17786ef74..13eb622c61a548 100755 --- a/examples/pump-app/telink/prj.conf +++ b/examples/pump-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/pump-controller-app/telink/prj.conf b/examples/pump-controller-app/telink/prj.conf index 2d4670fa37ebd8..3b647100515c62 100755 --- a/examples/pump-controller-app/telink/prj.conf +++ b/examples/pump-controller-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/resource-monitoring-app/telink/prj.conf b/examples/resource-monitoring-app/telink/prj.conf index 3996237b452b6b..5fdb933b8ff327 100644 --- a/examples/resource-monitoring-app/telink/prj.conf +++ b/examples/resource-monitoring-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/shell/telink/prj.conf b/examples/shell/telink/prj.conf index 88846b63b4aa15..ef57656abeeb61 100755 --- a/examples/shell/telink/prj.conf +++ b/examples/shell/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/smoke-co-alarm-app/telink/prj.conf b/examples/smoke-co-alarm-app/telink/prj.conf index 299d79337065fe..36f00385d93d53 100755 --- a/examples/smoke-co-alarm-app/telink/prj.conf +++ b/examples/smoke-co-alarm-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/temperature-measurement-app/telink/prj.conf b/examples/temperature-measurement-app/telink/prj.conf index 9aabed07aa7a4a..01222e4cb6ec07 100644 --- a/examples/temperature-measurement-app/telink/prj.conf +++ b/examples/temperature-measurement-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/thermostat/telink/prj.conf b/examples/thermostat/telink/prj.conf index 70cb272b0da9c8..bc7cd3bd75cb38 100755 --- a/examples/thermostat/telink/prj.conf +++ b/examples/thermostat/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/examples/window-app/telink/prj.conf b/examples/window-app/telink/prj.conf index 23eba6ddd4aaec..8c44d9f0c8fe36 100644 --- a/examples/window-app/telink/prj.conf +++ b/examples/window-app/telink/prj.conf @@ -22,12 +22,6 @@ CONFIG_CHIP=y CONFIG_STD_CPP17=y -# enable GPIO -CONFIG_GPIO=y - -# enable PWM -CONFIG_PWM=y - # CHIP configuration CONFIG_CHIP_PROJECT_CONFIG="include/CHIPProjectConfig.h" CONFIG_CHIP_OPENTHREAD_CONFIG="../../platform/telink/project_include/OpenThreadConfig.h" diff --git a/integrations/cloudbuild/build-all.yaml b/integrations/cloudbuild/build-all.yaml index 58df032c9804ef..1524312420e11f 100644 --- a/integrations/cloudbuild/build-all.yaml +++ b/integrations/cloudbuild/build-all.yaml @@ -6,7 +6,7 @@ steps: - "--init" - "--recursive" id: Submodules - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -21,7 +21,7 @@ steps: path: /pwenv timeout: 900s - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -85,7 +85,7 @@ steps: --target k32w-shell build --create-archives /workspace/artifacts/ - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -164,6 +164,7 @@ steps: --target qpg-qpg6105-shell --target telink-tlsr9518adk80d-light --target telink-tlsr9528a-light + --target telink-tlsr9528a_retention-light-switch --target tizen-arm-light build --create-archives /workspace/artifacts/ diff --git a/integrations/cloudbuild/chef.yaml b/integrations/cloudbuild/chef.yaml index 096a8833b13cf5..be406882ad733f 100644 --- a/integrations/cloudbuild/chef.yaml +++ b/integrations/cloudbuild/chef.yaml @@ -1,5 +1,5 @@ steps: - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -12,7 +12,7 @@ steps: path: /pwenv timeout: 2700s - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -27,7 +27,7 @@ steps: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: diff --git a/integrations/cloudbuild/smoke-test.yaml b/integrations/cloudbuild/smoke-test.yaml index 3c1c56bfeec5cc..b7f517c78bbc31 100644 --- a/integrations/cloudbuild/smoke-test.yaml +++ b/integrations/cloudbuild/smoke-test.yaml @@ -1,5 +1,5 @@ steps: - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" entrypoint: "bash" args: - "-c" @@ -7,7 +7,7 @@ steps: git config --global --add safe.directory "*" git submodule update --init --recursive id: Submodules - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -22,7 +22,7 @@ steps: path: /pwenv timeout: 900s - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" id: ESP32 env: - PW_ENVIRONMENT_ROOT=/pwenv @@ -43,7 +43,7 @@ steps: volumes: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" id: NRFConnect env: - PW_ENVIRONMENT_ROOT=/pwenv @@ -64,7 +64,7 @@ steps: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" id: EFR32 env: - PW_ENVIRONMENT_ROOT=/pwenv @@ -86,7 +86,7 @@ steps: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" id: Linux env: - PW_ENVIRONMENT_ROOT=/pwenv @@ -139,7 +139,7 @@ steps: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:24" + - name: "ghcr.io/project-chip/chip-build-vscode:25" id: Android env: - PW_ENVIRONMENT_ROOT=/pwenv diff --git a/scripts/build/build/targets.py b/scripts/build/build/targets.py index 1736afc01f5f7a..fd6132e9519dd8 100755 --- a/scripts/build/build/targets.py +++ b/scripts/build/build/targets.py @@ -703,6 +703,7 @@ def BuildTelinkTarget(): target.AppendFixedTargets([ TargetPart('tlsr9518adk80d', board=TelinkBoard.TLSR9518ADK80D), TargetPart('tlsr9528a', board=TelinkBoard.TLSR9528A), + TargetPart('tlsr9528a_retention', board=TelinkBoard.TLSR9528A_RETENTION), ]) target.AppendFixedTargets([ diff --git a/scripts/build/builders/telink.py b/scripts/build/builders/telink.py index 0aa6ac68940eec..1dc75cfacc9c42 100644 --- a/scripts/build/builders/telink.py +++ b/scripts/build/builders/telink.py @@ -119,12 +119,15 @@ def AppNamePrefix(self): class TelinkBoard(Enum): TLSR9518ADK80D = auto() TLSR9528A = auto() + TLSR9528A_RETENTION = auto() def GnArgName(self): if self == TelinkBoard.TLSR9518ADK80D: return 'tlsr9518adk80d' elif self == TelinkBoard.TLSR9528A: return 'tlsr9528a' + elif self == TelinkBoard.TLSR9528A_RETENTION: + return 'tlsr9528a_retention' else: raise Exception('Unknown board type: %r' % self) diff --git a/scripts/build/testdata/all_targets_linux_x64.txt b/scripts/build/testdata/all_targets_linux_x64.txt index e76f940460ad46..d8739213c5d24f 100644 --- a/scripts/build/testdata/all_targets_linux_x64.txt +++ b/scripts/build/testdata/all_targets_linux_x64.txt @@ -22,5 +22,5 @@ nrf-native-posix-64-tests qpg-qpg6105-{lock,light,shell,persistent-storage}[-updateimage] stm32-stm32wb5mm-dk-light tizen-arm-{all-clusters,all-clusters-minimal,chip-tool,light,tests}[-no-ble][-no-thread][-no-wifi][-asan][-ubsan][-with-ui] -telink-{tlsr9518adk80d,tlsr9528a}-{air-quality-sensor,all-clusters,all-clusters-minimal,bridge,contact-sensor,light,light-switch,lock,ota-requestor,pump,pump-controller,resource-monitoring,shell,smoke-co-alarm,temperature-measurement,thermostat,window-covering}[-ota][-dfu][-shell][-rpc][-factory-data][-4mb] +telink-{tlsr9518adk80d,tlsr9528a,tlsr9528a_retention}-{air-quality-sensor,all-clusters,all-clusters-minimal,bridge,contact-sensor,light,light-switch,lock,ota-requestor,pump,pump-controller,resource-monitoring,shell,smoke-co-alarm,temperature-measurement,thermostat,window-covering}[-ota][-dfu][-shell][-rpc][-factory-data][-4mb] openiotsdk-{shell,lock}[-mbedtls][-psa] diff --git a/scripts/tools/telink/update_zephyr.py b/scripts/tools/telink/update_zephyr.py new file mode 100755 index 00000000000000..5c133f0f8fbdf7 --- /dev/null +++ b/scripts/tools/telink/update_zephyr.py @@ -0,0 +1,57 @@ +#!/usr/bin/env python3 + +# +# Copyright (c) 2023 Project CHIP Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +import argparse +import os +import subprocess +import sys + + +def main(): + + try: + zephyr_base = os.getenv("ZEPHYR_BASE") + if not zephyr_base: + zephyr_base = os.getenv("TELINK_ZEPHYR_BASE") + os.environ['ZEPHYR_BASE'] = zephyr_base + if not zephyr_base: + raise RuntimeError( + "No ZEPHYR_BASE environment variable found, please set ZEPHYR_BASE to a zephyr repository path.") + + parser = argparse.ArgumentParser( + description='Script helping to update Telink Zephyr to specific revision.') + parser.add_argument("hash", help="Update Telink Zephyr to specific revision.") + + args = parser.parse_args() + + command = ['git', '-C', zephyr_base, 'reset', args.hash, '--hard'] + subprocess.run(command, check=True) + + command = ['west', 'update', '-o=--depth=1', '-n', '-f', 'smart'] + subprocess.run(command, check=True) + + command = ['west', 'blobs', 'fetch', 'hal_telink'] + subprocess.run(command, check=True) + + except (RuntimeError, subprocess.CalledProcessError) as e: + print(e) + sys.exit(1) + + +if __name__ == '__main__': + main() diff --git a/src/platform/telink/CHIPDevicePlatformConfig.h b/src/platform/telink/CHIPDevicePlatformConfig.h index 1849ea0ff57918..07967f8b273e4f 100644 --- a/src/platform/telink/CHIPDevicePlatformConfig.h +++ b/src/platform/telink/CHIPDevicePlatformConfig.h @@ -101,7 +101,11 @@ #define CHIP_DEVICE_CONFIG_ENABLE_WIFI_AP 0 #endif +#ifdef CONFIG_BT #define CHIP_DEVICE_CONFIG_ENABLE_CHIPOBLE CONFIG_BT +#else +#define CHIP_DEVICE_CONFIG_ENABLE_CHIPOBLE 0 +#endif // ========== Platform-specific Configuration ========= diff --git a/src/platform/telink/CHIPPlatformConfig.h b/src/platform/telink/CHIPPlatformConfig.h index f1b17fe1f2948d..9e0dc3dd36e8f7 100644 --- a/src/platform/telink/CHIPPlatformConfig.h +++ b/src/platform/telink/CHIPPlatformConfig.h @@ -64,10 +64,6 @@ #ifdef CONFIG_PM -#ifndef CHIP_CONFIG_ENABLE_SERVER_IM_EVENT -#define CHIP_CONFIG_ENABLE_SERVER_IM_EVENT 0 -#endif // CHIP_CONFIG_ENABLE_SERVER_IM_EVENT - #ifndef CHIP_CONFIG_MAX_GROUP_DATA_PEERS #define CHIP_CONFIG_MAX_GROUP_DATA_PEERS 7 #endif // CHIP_CONFIG_MAX_GROUP_DATA_PEERS diff --git a/src/platform/telink/tlsr9528a_retention.overlay b/src/platform/telink/tlsr9528a_retention.overlay new file mode 100644 index 00000000000000..98a0e5af508f32 --- /dev/null +++ b/src/platform/telink/tlsr9528a_retention.overlay @@ -0,0 +1,55 @@ +/ { + /* + * There is no way to keep GPIOs + * during deep-sleep mode so output GPIOs + * and PWM's are useless. + */ + + aliases { + /delete-property/ led0; + /delete-property/ led1; + /delete-property/ led2; + /delete-property/ led3; + /delete-property/ mcuboot-led0; + /delete-property/ pwm-led0; + /delete-property/ pwm-0; + }; + + /delete-node/ leds; + /delete-node/ pwm_leds; + + keys { + /delete-node/ button_1; + /delete-node/ button_3; + compatible = "gpio-keys"; + key_1: button_1 { + gpios = <&gpiod 2 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; + }; + key_2: button_2 { + gpios = <&gpiod 7 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; + }; + key_3: button_3 { + gpios = <&gpiod 6 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; + }; + key_4: button_4 { + gpios = <&gpiof 6 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; + }; + + key_matrix_col1: key_matrix_col1 { + gpios = <&gpiod 6 GPIO_ACTIVE_HIGH>; + }; + key_matrix_col2: key_matrix_col2 { + gpios = <&gpiof 6 GPIO_ACTIVE_HIGH>; + }; + key_matrix_row1: key_matrix_row1 { + gpios = <&gpiod 2 GPIO_PULL_DOWN>; + }; + key_matrix_row2: key_matrix_row2 { + gpios = <&gpiod 7 GPIO_PULL_DOWN>; + }; + }; +}; + +&pwm0 { + status = "disabled"; +}; diff --git a/src/test_driver/tizen/README.md b/src/test_driver/tizen/README.md index 82108957e4c4fd..970f10f9c5a676 100644 --- a/src/test_driver/tizen/README.md +++ b/src/test_driver/tizen/README.md @@ -12,7 +12,7 @@ image from hub.docker.com or build it locally using the provided Dockerfile in ```sh # Pull the image from hub.docker.com -docker pull ghcr.io/project-chip/chip-build-tizen-qemu:24 +docker pull ghcr.io/project-chip/chip-build-tizen-qemu:25 ``` ## Building and Running Tests on QEMU @@ -21,7 +21,7 @@ All steps described below should be done inside the docker container. ```sh docker run -it --rm --name chip-tizen-qemu \ - ghcr.io/project-chip/chip-build-tizen-qemu:24 /bin/bash + ghcr.io/project-chip/chip-build-tizen-qemu:25 /bin/bash ``` ### Clone the connectedhomeip repository