Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Silabs] Enabling brd4342a board support for matter #35593

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 11 additions & 5 deletions .github/workflows/examples-efr32.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -138,12 +138,18 @@ jobs:
build \
--copy-artifacts-to out/artifacts \
"
- name: Prepare bloat report for brd2605a lock app
- name: Clean out build output
run: rm -rf ./out
- name: Build BRD4342A WiFi Soc variants
run: |
.environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
efr32 BRD2605a lock-app \
out/efr32-brd2605a-lock-skip-rps-generation/matter-silabs-lock-example.out \
/tmp/bloat_reports/
./scripts/run_in_build_env.sh \
"./scripts/build/build_examples.py \
--enable-flashbundle \
--target efr32-brd4342a-light-skip-rps-generation \
--target efr32-brd4342a-lock-skip-rps-generation \
build \
--copy-artifacts-to out/artifacts \
"
- name: Clean out build output
run: rm -rf ./out
- name: Build EFR32 with WiFi NCP
Expand Down
1 change: 1 addition & 0 deletions scripts/build/build/targets.py
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,7 @@ def BuildEfr32Target():
TargetPart('brd2703a', board=Efr32Board.BRD2703A),
TargetPart('brd4338a', board=Efr32Board.BRD4338A, enable_wifi=True, enable_917_soc=True),
TargetPart('brd2605a', board=Efr32Board.BRD2605A, enable_wifi=True, enable_917_soc=True),
TargetPart('brd4342a', board=Efr32Board.BRD4342A, enable_wifi=True, enable_917_soc=True),
])

# apps
Expand Down
3 changes: 3 additions & 0 deletions scripts/build/builders/efr32.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,7 @@ class Efr32Board(Enum):
BRD4338A = 11
BRD2703A = 12
BRD2605A = 13
BRD4342A = 14

def GnArgName(self):
if self == Efr32Board.BRD2704B:
Expand Down Expand Up @@ -133,6 +134,8 @@ def GnArgName(self):
return 'BRD2703A'
elif self == Efr32Board.BRD2605A:
return 'BRD2605A'
elif self == Efr32Board.BRD4342A:
return 'BRD4342A'
else:
raise Exception('Unknown board #: %r' % self)

Expand Down
2 changes: 1 addition & 1 deletion scripts/build/testdata/all_targets_linux_x64.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ bouffalolab-{bl602dk,bl704ldk,bl706dk,bl602-night-light,bl706-night-light,bl602-
cc32xx-{lock,air-purifier}
ti-cc13x4_26x4-{lighting,lock,pump,pump-controller}[-mtd][-ftd]
cyw30739-{cyw30739b2_p5_evk_01,cyw30739b2_p5_evk_02,cyw30739b2_p5_evk_03,cyw930739m2evb_01,cyw930739m2evb_02}-{light,light-switch,lock,thermostat}
efr32-{brd2704b,brd4316a,brd4317a,brd4318a,brd4319a,brd4186a,brd4187a,brd2601b,brd4187c,brd4186c,brd2703a,brd4338a,brd2605a}-{window-covering,switch,unit-test,light,lock,thermostat,pump}[-rpc][-with-ota-requestor][-icd][-low-power][-shell][-no-logging][-openthread-mtd][-heap-monitoring][-no-openthread-cli][-show-qr-code][-wifi][-rs9116][-wf200][-siwx917][-ipv4][-additional-data-advertising][-use-ot-lib][-use-ot-coap-lib][-no-version][-skip-rps-generation]
efr32-{brd2704b,brd4316a,brd4317a,brd4318a,brd4319a,brd4186a,brd4187a,brd2601b,brd4187c,brd4186c,brd2703a,brd4338a,brd2605a,brd4342a}-{window-covering,switch,unit-test,light,lock,thermostat,pump}[-rpc][-with-ota-requestor][-icd][-low-power][-shell][-no-logging][-openthread-mtd][-heap-monitoring][-no-openthread-cli][-show-qr-code][-wifi][-rs9116][-wf200][-siwx917][-ipv4][-additional-data-advertising][-use-ot-lib][-use-ot-coap-lib][-no-version][-skip-rps-generation]
esp32-{m5stack,c3devkit,devkitc,qemu}-{all-clusters,all-clusters-minimal,energy-management,ota-provider,ota-requestor,shell,light,lock,bridge,temperature-measurement,ota-requestor,tests}[-rpc][-ipv6only][-tracing][-data-model-disabled][-data-model-enabled]
genio-lighting-app
linux-fake-tests[-mbedtls][-boringssl][-asan][-tsan][-ubsan][-libfuzzer][-ossfuzz][-pw-fuzztest][-coverage][-dmalloc][-clang]
Expand Down
2 changes: 1 addition & 1 deletion scripts/examples/gn_silabs_example.sh
Original file line number Diff line number Diff line change
Expand Up @@ -297,7 +297,7 @@ else
fi

# 917 exception. TODO find a more generic way
if [ "$SILABS_BOARD" == "BRD4338A" ] || [ "$SILABS_BOARD" == "BRD2605A" ]; then
if [ "$SILABS_BOARD" == "BRD4338A" ] || [ "$SILABS_BOARD" == "BRD2605A" ] || [ "$SILABS_BOARD" == "BRD4342A" ]; then
echo "Compiling for 917 WiFi SOC"
USE_WIFI=true
fi
Expand Down
2 changes: 1 addition & 1 deletion third_party/silabs/matter_support
Submodule matter_support updated 52 files
+0 −82 matter/si91x/siwx917/BRD2605A/support/hal/rsi_hal_mcu_m4.c
+0 −168 matter/si91x/siwx917/BRD2605A/support/inc/system_si917.h
+0 −514 matter/si91x/siwx917/BRD2605A/support/src/startup_common_RS1xxxx.c
+0 −82 matter/si91x/siwx917/BRD4338A/support/hal/rsi_hal_mcu_m4.c
+0 −168 matter/si91x/siwx917/BRD4338A/support/inc/system_si917.h
+0 −514 matter/si91x/siwx917/BRD4338A/support/src/startup_common_RS1xxxx.c
+34 −0 matter/si91x/siwx917/BRD4342A/autogen/RTE_Components.h
+31 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_component_catalog.h
+70 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_event_handler.c
+12 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_event_handler.h
+27 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_iostream_handles.c
+20 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_iostream_handles.h
+16 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_iostream_init_instances.h
+59 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_si91x_button_instances.c
+43 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_si91x_button_instances.h
+49 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_si91x_led_instances.c
+42 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_si91x_led_instances.h
+96 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_si91x_power_manager_handler.c
+51 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_si91x_power_manager_init.h
+37 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_si91x_power_manager_wakeup_handler.c
+44 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_si91x_power_manager_wakeup_handler.h
+49 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_ulp_timer_init.c
+53 −0 matter/si91x/siwx917/BRD4342A/autogen/sl_ulp_timer_instances.h
+49 −0 matter/si91x/siwx917/BRD4342A/autogen/sli_mbedtls_config_autogen.h
+51 −0 matter/si91x/siwx917/BRD4342A/autogen/sli_mbedtls_config_transform_autogen.h
+4,899 −0 matter/si91x/siwx917/BRD4342A/config/RTE_Device_917.h
+428 −0 matter/si91x/siwx917/BRD4342A/config/SEGGER_RTT_Conf.h
+45 −0 matter/si91x/siwx917/BRD4342A/config/emlib_core_debug_config.h
+62 −0 matter/si91x/siwx917/BRD4342A/config/nvm3_default_config.h
+140 −0 matter/si91x/siwx917/BRD4342A/config/pin_config.h
+23 −0 matter/si91x/siwx917/BRD4342A/config/sl_board_configuration.h
+22 −0 matter/si91x/siwx917/BRD4342A/config/sl_board_control.h
+44 −0 matter/si91x/siwx917/BRD4342A/config/sl_core_config.h
+118 −0 matter/si91x/siwx917/BRD4342A/config/sl_mbedtls_config.h
+70 −0 matter/si91x/siwx917/BRD4342A/config/sl_mbedtls_device_config.h
+49 −0 matter/si91x/siwx917/BRD4342A/config/sl_memory_manager_config.h
+49 −0 matter/si91x/siwx917/BRD4342A/config/sl_memory_manager_region_config.h
+149 −0 matter/si91x/siwx917/BRD4342A/config/sl_net_default_values.h
+28 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_button_btn0_config.h
+28 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_button_btn1_config.h
+25 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_button_pin_config.h
+52 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_dma_config.h
+36 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_led_config.h
+358 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_power_manager_config_3.h
+96 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_power_manager_wakeup_source_config.h
+35 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_stack_size_config.h
+84 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_ulp_timer_common_config.h
+67 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_ulp_timer_init_timer0_config.h
+43 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_ulp_uart_common_config.h
+104 −0 matter/si91x/siwx917/BRD4342A/config/sl_si91x_ulp_uart_config.h
+82 −0 matter/si91x/siwx917/BRD4342A/config/sl_sleeptimer_config.h
+113 −0 matter/si91x/siwx917/BRD4342A/config/sl_wifi_region_db_config.h
3 changes: 2 additions & 1 deletion third_party/silabs/silabs_board.gni
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,8 @@ if (silabs_board == "") {
assert(silabs_board != "", "silabs_board must be specified")

# Si917 WIFI board ----------
if (silabs_board == "BRD4338A" || silabs_board == "BRD2605A") {
if (silabs_board == "BRD4338A" || silabs_board == "BRD2605A" ||
silabs_board == "BRD4342A") {
silabs_family = "SiWx917-common"
silabs_mcu = "SiWG917M111MGTBA"
wifi_soc = true
Expand Down
Loading