diff --git a/.vscode/tasks.json b/.vscode/tasks.json index fda87757b21a9c..a0f49412f87aed 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -170,6 +170,17 @@ "${workspaceFolder}/src/test_driver/mbed/unit_tests/build" ] } + }, + { + "label": "Flash EFR32 board", + "type": "shell", + "command": "python3", + "args": [ + "${workspaceFolder}/out/${input:exampleTarget}/chip-efr32-*.flash.py" + ], + "problemMatcher": { + "base": "$gcc" + } } ], "inputs": [ @@ -229,10 +240,45 @@ "android-x64-chip-tool", "android-x86-chip-tool", "efr32-brd4161a-light", + "efr32-brd4163a-light", + "efr32-brd4164a-light", + "efr32-brd4166a-light", + "efr32-brd4170a-light", + "efr32-brd4186a-light", + "efr32-brd4187a-light", + "efr32-brd4304a-light", "efr32-brd4161a-light-rpc", + "efr32-brd4163a-light-rpc", + "efr32-brd4164a-light-rpc", + "efr32-brd4166a-light-rpc", + "efr32-brd4170a-light-rpc", + "efr32-brd4186a-light-rpc", + "efr32-brd4187a-light-rpc", + "efr32-brd4304a-light-rpc", "efr32-brd4161a-lock", + "efr32-brd4163a-lock", + "efr32-brd4164a-lock", + "efr32-brd4166a-lock", + "efr32-brd4170a-lock", + "efr32-brd4186a-lock", + "efr32-brd4187a-lock", + "efr32-brd4304a-lock", "efr32-brd4161a-unit-test", + "efr32-brd4163a-unit-test", + "efr32-brd4164a-unit-test", + "efr32-brd4166a-unit-test", + "efr32-brd4170a-unit-test", + "efr32-brd4186a-unit-test", + "efr32-brd4187a-unit-test", + "efr32-brd4304a-unit-test", "efr32-brd4161a-window-covering", + "efr32-brd4163a-window-covering", + "efr32-brd4164a-window-covering", + "efr32-brd4166a-window-covering", + "efr32-brd4170a-window-covering", + "efr32-brd4186a-window-covering", + "efr32-brd4187a-window-covering", + "efr32-brd4304a-window-covering", "esp32-c3devkit-all-clusters", "esp32-devkitc-all-clusters", "esp32-devkitc-all-clusters-ipv6only", diff --git a/scripts/build/build/targets.py b/scripts/build/build/targets.py index b6f90a30e8cc60..ccc8da7a91ef89 100644 --- a/scripts/build/build/targets.py +++ b/scripts/build/build/targets.py @@ -214,20 +214,38 @@ def Esp32Targets(): def Efr32Targets(): - efr_target = Target('efr32-brd4161a', Efr32Builder, - board=Efr32Board.BRD4161A) + efr_target = Target('efr32', Efr32Builder) + + board_targets = [ + efr_target.Extend('brd4161a', board=Efr32Board.BRD4161A), + efr_target.Extend('brd4163a', board=Efr32Board.BRD4163A).GlobBlacklist( + 'only user requested'), + efr_target.Extend('brd4164a', board=Efr32Board.BRD4164A).GlobBlacklist( + 'only user requested'), + efr_target.Extend('brd4166a', board=Efr32Board.BRD4166A).GlobBlacklist( + 'only user requested'), + efr_target.Extend('brd4170a', board=Efr32Board.BRD4170A).GlobBlacklist( + 'only user requested'), + efr_target.Extend('brd4186a', board=Efr32Board.BRD4186A).GlobBlacklist( + 'only user requested'), + efr_target.Extend('brd4187a', board=Efr32Board.BRD4187A).GlobBlacklist( + 'only user requested'), + efr_target.Extend('brd4304a', board=Efr32Board.BRD4304A).GlobBlacklist( + 'only user requested') + ] - yield efr_target.Extend('window-covering', app=Efr32App.WINDOW_COVERING) - yield efr_target.Extend('unit-test', app=Efr32App.UNIT_TEST) + for board_target in board_targets: + yield board_target.Extend('window-covering', app=Efr32App.WINDOW_COVERING) + yield board_target.Extend('unit-test', app=Efr32App.UNIT_TEST) - rpc_aware_targets = [ - efr_target.Extend('light', app=Efr32App.LIGHT), - efr_target.Extend('lock', app=Efr32App.LOCK) - ] + rpc_aware_targets = [ + board_target.Extend('light', app=Efr32App.LIGHT), + board_target.Extend('lock', app=Efr32App.LOCK) + ] - for target in rpc_aware_targets: - yield target - yield target.Extend('rpc', enable_rpcs=True) + for target in rpc_aware_targets: + yield target + yield target.Extend('rpc', enable_rpcs=True) def NrfTargets(): diff --git a/scripts/build/builders/efr32.py b/scripts/build/builders/efr32.py index 4f90419291bb6c..437138f4d6b3de 100644 --- a/scripts/build/builders/efr32.py +++ b/scripts/build/builders/efr32.py @@ -67,10 +67,33 @@ def BuildRoot(self, root): class Efr32Board(Enum): BRD4161A = 1 + BRD4163A = 2 + BRD4164A = 3 + BRD4166A = 4 + BRD4170A = 5 + BRD4186A = 6 + BRD4187A = 7 + BRD4304A = 8 def GnArgName(self): if self == Efr32Board.BRD4161A: return 'BRD4161A' + elif self == Efr32Board.BRD4163A: + return 'BRD4163A' + elif self == Efr32Board.BRD4164A: + return 'BRD4164A' + elif self == Efr32Board.BRD4166A: + return 'BRD4166A' + elif self == Efr32Board.BRD4170A: + return 'BRD4170A' + elif self == Efr32Board.BRD4186A: + return 'BRD4186A' + elif self == Efr32Board.BRD4187A: + return 'BRD4187A' + elif self == Efr32Board.BRD4304A: + return 'BRD4304A' + else: + raise Exception('Unknown board #: %r' % self) class Efr32Builder(GnBuilder): diff --git a/scripts/build/testdata/all_targets_except_host.txt b/scripts/build/testdata/all_targets_except_host.txt index 29b96163e85a39..b3f1f751625cb9 100644 --- a/scripts/build/testdata/all_targets_except_host.txt +++ b/scripts/build/testdata/all_targets_except_host.txt @@ -15,6 +15,48 @@ efr32-brd4161a-lock efr32-brd4161a-lock-rpc efr32-brd4161a-unit-test efr32-brd4161a-window-covering +efr32-brd4163a-light (NOGLOB: only user requested) +efr32-brd4163a-light-rpc (NOGLOB: only user requested) +efr32-brd4163a-lock (NOGLOB: only user requested) +efr32-brd4163a-lock-rpc (NOGLOB: only user requested) +efr32-brd4163a-unit-test (NOGLOB: only user requested) +efr32-brd4163a-window-covering (NOGLOB: only user requested) +efr32-brd4164a-light (NOGLOB: only user requested) +efr32-brd4164a-light-rpc (NOGLOB: only user requested) +efr32-brd4164a-lock (NOGLOB: only user requested) +efr32-brd4164a-lock-rpc (NOGLOB: only user requested) +efr32-brd4164a-unit-test (NOGLOB: only user requested) +efr32-brd4164a-window-covering (NOGLOB: only user requested) +efr32-brd4166a-light (NOGLOB: only user requested) +efr32-brd4166a-light-rpc (NOGLOB: only user requested) +efr32-brd4166a-lock (NOGLOB: only user requested) +efr32-brd4166a-lock-rpc (NOGLOB: only user requested) +efr32-brd4166a-unit-test (NOGLOB: only user requested) +efr32-brd4166a-window-covering (NOGLOB: only user requested) +efr32-brd4170a-light (NOGLOB: only user requested) +efr32-brd4170a-light-rpc (NOGLOB: only user requested) +efr32-brd4170a-lock (NOGLOB: only user requested) +efr32-brd4170a-lock-rpc (NOGLOB: only user requested) +efr32-brd4170a-unit-test (NOGLOB: only user requested) +efr32-brd4170a-window-covering (NOGLOB: only user requested) +efr32-brd4186a-light (NOGLOB: only user requested) +efr32-brd4186a-light-rpc (NOGLOB: only user requested) +efr32-brd4186a-lock (NOGLOB: only user requested) +efr32-brd4186a-lock-rpc (NOGLOB: only user requested) +efr32-brd4186a-unit-test (NOGLOB: only user requested) +efr32-brd4186a-window-covering (NOGLOB: only user requested) +efr32-brd4187a-light (NOGLOB: only user requested) +efr32-brd4187a-light-rpc (NOGLOB: only user requested) +efr32-brd4187a-lock (NOGLOB: only user requested) +efr32-brd4187a-lock-rpc (NOGLOB: only user requested) +efr32-brd4187a-unit-test (NOGLOB: only user requested) +efr32-brd4187a-window-covering (NOGLOB: only user requested) +efr32-brd4304a-light (NOGLOB: only user requested) +efr32-brd4304a-light-rpc (NOGLOB: only user requested) +efr32-brd4304a-lock (NOGLOB: only user requested) +efr32-brd4304a-lock-rpc (NOGLOB: only user requested) +efr32-brd4304a-unit-test (NOGLOB: only user requested) +efr32-brd4304a-window-covering (NOGLOB: only user requested) esp32-c3devkit-all-clusters esp32-devkitc-all-clusters esp32-devkitc-all-clusters-ipv6only diff --git a/scripts/build/testdata/build_all_except_host.txt b/scripts/build/testdata/build_all_except_host.txt index 3c99220615f5c6..d075af52751845 100644 --- a/scripts/build/testdata/build_all_except_host.txt +++ b/scripts/build/testdata/build_all_except_host.txt @@ -142,6 +142,132 @@ gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/src # Generating efr32-brd4161a-window-covering gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/window-app/efr32 '--args=efr32_board="BRD4161A"' {out}/efr32-brd4161a-window-covering +# Generating efr32-brd4163a-light +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4163A"' {out}/efr32-brd4163a-light + +# Generating efr32-brd4163a-light-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4163A" import("//with_pw_rpc.gni")' {out}/efr32-brd4163a-light-rpc + +# Generating efr32-brd4163a-lock +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4163A"' {out}/efr32-brd4163a-lock + +# Generating efr32-brd4163a-lock-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4163A" import("//with_pw_rpc.gni")' {out}/efr32-brd4163a-lock-rpc + +# Generating efr32-brd4163a-unit-test +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/src/test_driver/efr32 '--args=efr32_board="BRD4163A"' {out}/efr32-brd4163a-unit-test + +# Generating efr32-brd4163a-window-covering +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/window-app/efr32 '--args=efr32_board="BRD4163A"' {out}/efr32-brd4163a-window-covering + +# Generating efr32-brd4164a-light +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4164A"' {out}/efr32-brd4164a-light + +# Generating efr32-brd4164a-light-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4164A" import("//with_pw_rpc.gni")' {out}/efr32-brd4164a-light-rpc + +# Generating efr32-brd4164a-lock +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4164A"' {out}/efr32-brd4164a-lock + +# Generating efr32-brd4164a-lock-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4164A" import("//with_pw_rpc.gni")' {out}/efr32-brd4164a-lock-rpc + +# Generating efr32-brd4164a-unit-test +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/src/test_driver/efr32 '--args=efr32_board="BRD4164A"' {out}/efr32-brd4164a-unit-test + +# Generating efr32-brd4164a-window-covering +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/window-app/efr32 '--args=efr32_board="BRD4164A"' {out}/efr32-brd4164a-window-covering + +# Generating efr32-brd4166a-light +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4166A"' {out}/efr32-brd4166a-light + +# Generating efr32-brd4166a-light-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4166A" import("//with_pw_rpc.gni")' {out}/efr32-brd4166a-light-rpc + +# Generating efr32-brd4166a-lock +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4166A"' {out}/efr32-brd4166a-lock + +# Generating efr32-brd4166a-lock-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4166A" import("//with_pw_rpc.gni")' {out}/efr32-brd4166a-lock-rpc + +# Generating efr32-brd4166a-unit-test +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/src/test_driver/efr32 '--args=efr32_board="BRD4166A"' {out}/efr32-brd4166a-unit-test + +# Generating efr32-brd4166a-window-covering +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/window-app/efr32 '--args=efr32_board="BRD4166A"' {out}/efr32-brd4166a-window-covering + +# Generating efr32-brd4170a-light +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4170A"' {out}/efr32-brd4170a-light + +# Generating efr32-brd4170a-light-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4170A" import("//with_pw_rpc.gni")' {out}/efr32-brd4170a-light-rpc + +# Generating efr32-brd4170a-lock +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4170A"' {out}/efr32-brd4170a-lock + +# Generating efr32-brd4170a-lock-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4170A" import("//with_pw_rpc.gni")' {out}/efr32-brd4170a-lock-rpc + +# Generating efr32-brd4170a-unit-test +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/src/test_driver/efr32 '--args=efr32_board="BRD4170A"' {out}/efr32-brd4170a-unit-test + +# Generating efr32-brd4170a-window-covering +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/window-app/efr32 '--args=efr32_board="BRD4170A"' {out}/efr32-brd4170a-window-covering + +# Generating efr32-brd4186a-light +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4186A"' {out}/efr32-brd4186a-light + +# Generating efr32-brd4186a-light-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4186A" import("//with_pw_rpc.gni")' {out}/efr32-brd4186a-light-rpc + +# Generating efr32-brd4186a-lock +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4186A"' {out}/efr32-brd4186a-lock + +# Generating efr32-brd4186a-lock-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4186A" import("//with_pw_rpc.gni")' {out}/efr32-brd4186a-lock-rpc + +# Generating efr32-brd4186a-unit-test +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/src/test_driver/efr32 '--args=efr32_board="BRD4186A"' {out}/efr32-brd4186a-unit-test + +# Generating efr32-brd4186a-window-covering +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/window-app/efr32 '--args=efr32_board="BRD4186A"' {out}/efr32-brd4186a-window-covering + +# Generating efr32-brd4187a-light +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4187A"' {out}/efr32-brd4187a-light + +# Generating efr32-brd4187a-light-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4187A" import("//with_pw_rpc.gni")' {out}/efr32-brd4187a-light-rpc + +# Generating efr32-brd4187a-lock +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4187A"' {out}/efr32-brd4187a-lock + +# Generating efr32-brd4187a-lock-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4187A" import("//with_pw_rpc.gni")' {out}/efr32-brd4187a-lock-rpc + +# Generating efr32-brd4187a-unit-test +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/src/test_driver/efr32 '--args=efr32_board="BRD4187A"' {out}/efr32-brd4187a-unit-test + +# Generating efr32-brd4187a-window-covering +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/window-app/efr32 '--args=efr32_board="BRD4187A"' {out}/efr32-brd4187a-window-covering + +# Generating efr32-brd4304a-light +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4304A"' {out}/efr32-brd4304a-light + +# Generating efr32-brd4304a-light-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lighting-app/efr32 '--args=efr32_board="BRD4304A" import("//with_pw_rpc.gni")' {out}/efr32-brd4304a-light-rpc + +# Generating efr32-brd4304a-lock +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4304A"' {out}/efr32-brd4304a-lock + +# Generating efr32-brd4304a-lock-rpc +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/lock-app/efr32 '--args=efr32_board="BRD4304A" import("//with_pw_rpc.gni")' {out}/efr32-brd4304a-lock-rpc + +# Generating efr32-brd4304a-unit-test +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/src/test_driver/efr32 '--args=efr32_board="BRD4304A"' {out}/efr32-brd4304a-unit-test + +# Generating efr32-brd4304a-window-covering +gn gen --check --fail-on-unused-args --export-compile-commands --root={root}/examples/window-app/efr32 '--args=efr32_board="BRD4304A"' {out}/efr32-brd4304a-window-covering + # Generating esp32-c3devkit-all-clusters mkdir -p {out}/esp32-c3devkit-all-clusters @@ -602,6 +728,132 @@ ninja -C {out}/efr32-brd4161a-unit-test # Building efr32-brd4161a-window-covering ninja -C {out}/efr32-brd4161a-window-covering +# Building efr32-brd4163a-light +ninja -C {out}/efr32-brd4163a-light + +# Building efr32-brd4163a-light-rpc +ninja -C {out}/efr32-brd4163a-light-rpc + +# Building efr32-brd4163a-lock +ninja -C {out}/efr32-brd4163a-lock + +# Building efr32-brd4163a-lock-rpc +ninja -C {out}/efr32-brd4163a-lock-rpc + +# Building efr32-brd4163a-unit-test +ninja -C {out}/efr32-brd4163a-unit-test + +# Building efr32-brd4163a-window-covering +ninja -C {out}/efr32-brd4163a-window-covering + +# Building efr32-brd4164a-light +ninja -C {out}/efr32-brd4164a-light + +# Building efr32-brd4164a-light-rpc +ninja -C {out}/efr32-brd4164a-light-rpc + +# Building efr32-brd4164a-lock +ninja -C {out}/efr32-brd4164a-lock + +# Building efr32-brd4164a-lock-rpc +ninja -C {out}/efr32-brd4164a-lock-rpc + +# Building efr32-brd4164a-unit-test +ninja -C {out}/efr32-brd4164a-unit-test + +# Building efr32-brd4164a-window-covering +ninja -C {out}/efr32-brd4164a-window-covering + +# Building efr32-brd4166a-light +ninja -C {out}/efr32-brd4166a-light + +# Building efr32-brd4166a-light-rpc +ninja -C {out}/efr32-brd4166a-light-rpc + +# Building efr32-brd4166a-lock +ninja -C {out}/efr32-brd4166a-lock + +# Building efr32-brd4166a-lock-rpc +ninja -C {out}/efr32-brd4166a-lock-rpc + +# Building efr32-brd4166a-unit-test +ninja -C {out}/efr32-brd4166a-unit-test + +# Building efr32-brd4166a-window-covering +ninja -C {out}/efr32-brd4166a-window-covering + +# Building efr32-brd4170a-light +ninja -C {out}/efr32-brd4170a-light + +# Building efr32-brd4170a-light-rpc +ninja -C {out}/efr32-brd4170a-light-rpc + +# Building efr32-brd4170a-lock +ninja -C {out}/efr32-brd4170a-lock + +# Building efr32-brd4170a-lock-rpc +ninja -C {out}/efr32-brd4170a-lock-rpc + +# Building efr32-brd4170a-unit-test +ninja -C {out}/efr32-brd4170a-unit-test + +# Building efr32-brd4170a-window-covering +ninja -C {out}/efr32-brd4170a-window-covering + +# Building efr32-brd4186a-light +ninja -C {out}/efr32-brd4186a-light + +# Building efr32-brd4186a-light-rpc +ninja -C {out}/efr32-brd4186a-light-rpc + +# Building efr32-brd4186a-lock +ninja -C {out}/efr32-brd4186a-lock + +# Building efr32-brd4186a-lock-rpc +ninja -C {out}/efr32-brd4186a-lock-rpc + +# Building efr32-brd4186a-unit-test +ninja -C {out}/efr32-brd4186a-unit-test + +# Building efr32-brd4186a-window-covering +ninja -C {out}/efr32-brd4186a-window-covering + +# Building efr32-brd4187a-light +ninja -C {out}/efr32-brd4187a-light + +# Building efr32-brd4187a-light-rpc +ninja -C {out}/efr32-brd4187a-light-rpc + +# Building efr32-brd4187a-lock +ninja -C {out}/efr32-brd4187a-lock + +# Building efr32-brd4187a-lock-rpc +ninja -C {out}/efr32-brd4187a-lock-rpc + +# Building efr32-brd4187a-unit-test +ninja -C {out}/efr32-brd4187a-unit-test + +# Building efr32-brd4187a-window-covering +ninja -C {out}/efr32-brd4187a-window-covering + +# Building efr32-brd4304a-light +ninja -C {out}/efr32-brd4304a-light + +# Building efr32-brd4304a-light-rpc +ninja -C {out}/efr32-brd4304a-light-rpc + +# Building efr32-brd4304a-lock +ninja -C {out}/efr32-brd4304a-lock + +# Building efr32-brd4304a-lock-rpc +ninja -C {out}/efr32-brd4304a-lock-rpc + +# Building efr32-brd4304a-unit-test +ninja -C {out}/efr32-brd4304a-unit-test + +# Building efr32-brd4304a-window-covering +ninja -C {out}/efr32-brd4304a-window-covering + rm -f examples/all-clusters-app/esp32/sdkconfig # Building esp32-c3devkit-all-clusters