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

build: add nrf54 to sidewalk tests #521

Merged
Merged
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
2 changes: 1 addition & 1 deletion .github/workflows/common-build_and_run.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ on:
description: 'platforms to build for'
required: false
type: string
default: '["nrf52840dk_nrf52840", "nrf5340dk_nrf5340_cpuapp"]'
default: '["nrf52840dk_nrf52840", "nrf5340dk_nrf5340_cpuapp", "nrf54l15pdk_nrf54l15_cpuapp"]'
run_tests:
description: 'run tests on HW after building'
type: boolean
Expand Down
2 changes: 1 addition & 1 deletion lib/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#

if (CONFIG_SIDEWALK)
if(CONFIG_SOC_SERIES_NRF52X)
if(CONFIG_CPU_CORTEX_M4)
ktaborowski marked this conversation as resolved.
Show resolved Hide resolved
add_subdirectory(cortex-m4)
else()
add_subdirectory(cortex-m33)
Expand Down
6 changes: 4 additions & 2 deletions samples/sid_end_device/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,12 @@ if(CONF_FILE)
endif()

if("${CONFIG_FILE_NAME}" STREQUAL "prj_no_dfu.conf")
set(PM_STATIC_YML_FILE ${CMAKE_CURRENT_SOURCE_DIR}/configuration/pm_static_no_dfu.yml)
set(PM_FILENAME "pm_static_no_dfu.yml")
else()
set(PM_STATIC_YML_FILE ${CMAKE_CURRENT_SOURCE_DIR}/configuration/${BOARD}/pm_static_dfu.yml)
set(PM_FILENAME "pm_static_dfu.yml")
endif()
set(PM_STATIC_YML_FILE ${CMAKE_CURRENT_SOURCE_DIR}/configuration/${BOARD}/${PM_FILENAME})


# Zephyr CMake project
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
Expand Down
13 changes: 13 additions & 0 deletions samples/sid_end_device/boards/nrf54l15pdk_nrf54l15_cpuapp.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#
# Copyright (c) 2024 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

# Workaround:
# The nRF54L15 PDK (PCA10156) revisions v0.2.0 AA0-ES2, v0.2.0 AA0-ES3,
# and v0.2.1 AB0-ES5 have Buttons 3 and 4 connected to the GPIO port
# which does not support interrupts.
CONFIG_DK_LIBRARY_BUTTON_NO_ISR=y

CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#
# Copyright (c) 2024 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

# Workaround:
# The nRF54L15 PDK (PCA10156) revisions v0.2.0 AA0-ES2, v0.2.0 AA0-ES3,
# and v0.2.1 AB0-ES5 have Buttons 3 and 4 connected to the GPIO port
# which does not support interrupts.
CONFIG_DK_LIBRARY_BUTTON_NO_ISR=y

CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#
# Copyright (c) 2024 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

# Workaround:
# The nRF54L15 PDK (PCA10156) revisions v0.2.0 AA0-ES2, v0.2.0 AA0-ES3,
# and v0.2.1 AB0-ES5 have Buttons 3 and 4 connected to the GPIO port
# which does not support interrupts.
CONFIG_DK_LIBRARY_BUTTON_NO_ISR=y

CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n
8 changes: 0 additions & 8 deletions samples/sid_end_device/child_image/mcuboot/Kconfig.root
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,6 @@ config FLASH
config FPROTECT
default y

config NORDIC_QSPI_NOR
default y

config NORDIC_QSPI_NOR_FLASH_LAYOUT_PAGE_SIZE
default 4096

config NORDIC_QSPI_NOR_STACK_WRITE_BUFFER_SIZE
default 16

config BOOT_MAX_IMG_SECTORS
default 256
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#
# Copyright (c) 2021 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

CONFIG_BOOT_MAX_IMG_SECTORS=256

# Ensure that the qspi driver is disabled by default
CONFIG_NORDIC_QSPI_NOR=n

# Workaroud: fprotect and watchdog feed
# are not supported in NCS v2.6.0
CONFIG_FPROTECT=n
CONFIG_BOOT_WATCHDOG_FEED=n
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#
# Copyright (c) 2021 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

CONFIG_BOOT_MAX_IMG_SECTORS=256

# Ensure that the qspi driver is disabled by default
CONFIG_NORDIC_QSPI_NOR=n

# Workaroud: fprotect and watchdog feed
# are not supported in NCS v2.6.0
CONFIG_FPROTECT=n
CONFIG_BOOT_WATCHDOG_FEED=n
4 changes: 4 additions & 0 deletions samples/sid_end_device/child_image/mcuboot/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@

CONFIG_MBEDTLS_CFG_FILE="mcuboot-mbedtls-cfg.h"

CONFIG_BOOT_ENCRYPT_IMAGE=n
CONFIG_CBPRINTF_NANO=y
CONFIG_NRF_RTC_TIMER_USER_CHAN_COUNT=0

CONFIG_BOOT_UPGRADE_ONLY=n
CONFIG_RESET_ON_FATAL_ERROR=y

Expand Down
4 changes: 4 additions & 0 deletions samples/sid_end_device/child_image/mcuboot/prj_release.conf
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@

CONFIG_MBEDTLS_CFG_FILE="mcuboot-mbedtls-cfg.h"

CONFIG_BOOT_ENCRYPT_IMAGE=n
CONFIG_CBPRINTF_NANO=y
CONFIG_NRF_RTC_TIMER_USER_CHAN_COUNT=0

CONFIG_BOOT_UPGRADE_ONLY=n
CONFIG_RESET_ON_FATAL_ERROR=y

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,3 @@
mcuboot:
address: 0x0
end_address: 0x8000
region: flash_primary
size: 0x8000
mfg_storage:
address: 0xff000
end_address: 0x100000
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
mfg_storage:
address: 0x17c000
region: flash_primary
size: 0x1000
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
mfg_storage:
address: 0x17c000
region: flash_primary
size: 0x1000
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
mfg_storage:
address: 0xff000
end_address: 0x100000
region: flash_primary
size: 0x1000
49 changes: 41 additions & 8 deletions samples/sid_end_device/sample.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,75 +4,103 @@ sample:
tests:
sample.sidewalk.hello:
build_only: true
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
extra_configs:
- CONFIG_SID_END_DEVICE_PERSISTENT_LINK_MASK=y
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
tags: Sidewalk hello

sample.sidewalk.hello.release:
build_only: true
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
extra_args:
CONF_FILE=prj_release.conf
extra_configs:
- CONFIG_SID_END_DEVICE_PERSISTENT_LINK_MASK=y
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
tags: Sidewalk hello

sample.sidewalk.hello.no_dfu:
build_only: true
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
extra_args:
CONF_FILE=prj_no_dfu.conf
extra_configs:
- CONFIG_SID_END_DEVICE_PERSISTENT_LINK_MASK=y
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
tags: Sidewalk hello

sample.sidewalk.hello.ble_only:
build_only: true
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
extra_configs:
- CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
tags: Sidewalk hello BLE

sample.sidewalk.hello.ble_only.release:
build_only: true
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
extra_args:
CONF_FILE=prj_release.conf
extra_configs:
- CONFIG_SIDEWALK_SUBGHZ_SUPPORT=n
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
tags: Sidewalk hello BLE

sample.sidewalk.demo:
build_only: true
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
extra_args:
OVERLAY_CONFIG="overlay-demo.conf"
extra_configs:
- CONFIG_SID_END_DEVICE_PERSISTENT_LINK_MASK=y
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
tags: Sidewalk demo

sample.sidewalk.demo.ble_only:
build_only: true
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp thingy53_nrf5340_cpuapp
platform_allow:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- thingy53_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
extra_args:
OVERLAY_CONFIG="overlay-demo.conf"
extra_configs:
Expand All @@ -81,16 +109,21 @@ tests:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- thingy53_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
tags: Sidewalk demo BLE

sample.sidewalk.dut:
build_only: true
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
extra_args:
OVERLAY_CONFIG="overlay-dut.conf"
extra_configs:
- CONFIG_SIDEWALK_FILE_TRANSFER=y
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
tags: Sidewalk cli
8 changes: 6 additions & 2 deletions scripts/ci/fill_hardware_map.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"PCA10059": "nrf52840dongle_nrf52840",
"PCA10095": "nrf5340dk_nrf5340_cpuapp",
"PCA20053": "thingy53_nrf5340_cpuapp",
# "PCA10145": "nrf54h20dk_nrf54h20_cpuapp@soc1",
"PCA10156": "nrf54l15pdk_nrf54l15_cpuapp"
}

family_to_pca = {
Expand All @@ -32,7 +32,7 @@
"NRF52840DONGLE": "PCA10059",
"NRF5340": "PCA10095",
"THINGY53": "PCA20053",
# "NRF54H20": "PCA10145"
"NRF54L15": "PCA10156"
}


Expand Down Expand Up @@ -140,6 +140,10 @@ def main(hardware_map_path: str, userdev_conf_path: str):
# If newer nRF52 board, remove first serial interface
if segger.startswith("1050") and "-if02" in hw_entry["serial"]:
to_remove.append(hw_entry)
elif "nrf54l15pdk_nrf54l15_cpuapp" in hw_entry["platform"]:
# If nRF54l board, remove only first serial interface
if segger.startswith("1057") and "-if00" in hw_entry["serial"]:
to_remove.append(hw_entry)
else:
# HW not known or not connected. Mark for removal
to_remove.append(hw_entry)
Expand Down
2 changes: 2 additions & 0 deletions subsys/sal/sid_pal/src/sid_mfg_storage.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ LOG_MODULE_REGISTER(sid_mfg, CONFIG_SIDEWALK_LOG_LEVEL);
#elif defined(NRF_NETWORK)
#define DEV_ID_REG (uint32_t)(NRF_FICR_NS->INFO.DEVICEID[0])
#endif /* NRF5340_XXAA */
#elif defined(NRF54L15_ENGA_XXAA)
#define DEV_ID_REG (uint32_t)(NRF_FICR->INFO.DEVICEID[0])
#else
#error "Unknow Device ID register."
#endif
Expand Down
3 changes: 2 additions & 1 deletion tests/functional/critical_region/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
tests:
sidewalk.functional.critical_region:
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp nrf54l15pdk_nrf54l15_cpuapp
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
6 changes: 1 addition & 5 deletions tests/functional/crypto/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,8 @@ config ZTEST_STACK_SIZE
config HEAP_MEM_POOL_SIZE
default 4096

config MBEDTLS_ENABLE_HEAP
default y

config MBEDTLS_HEAP_SIZE
default 4096

source "${ZEPHYR_BASE}/../sidewalk/Kconfig"
source "${ZEPHYR_BASE}/../sidewalk/Kconfig.dependencies"
source "Kconfig.zephyr"
source "${ZEPHYR_BASE}/../sidewalk/Kconfig.dependencies"
2 changes: 1 addition & 1 deletion tests/functional/crypto/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#
CONFIG_UNITY=y
CONFIG_ZTEST=y
CONFIG_MAIN_THREAD_PRIORITY=14
CONFIG_CONSOLE_PUTCHAR_BUFSIZE=512
3 changes: 2 additions & 1 deletion tests/functional/crypto/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
tests:
sidewalk.functional.crypto:
tags: Sidewalk
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp nrf54l15pdk_nrf54l15_cpuapp
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
3 changes: 2 additions & 1 deletion tests/functional/interrupts/testcase.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
tests:
unity.sidewalk.functional.interrupts:
tags: Sidewalk
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp
platform_allow: nrf52840dk_nrf52840 nrf5340dk_nrf5340_cpuapp nrf54l15pdk_nrf54l15_cpuapp
integration_platforms:
- nrf52840dk_nrf52840
- nrf5340dk_nrf5340_cpuapp
- nrf54l15pdk_nrf54l15_cpuapp
Loading
Loading