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

nordic: nRF54L: Add the nRF54L05 and nRF54L10 ICs #80980

Merged
merged 8 commits into from
Nov 21, 2024
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
6 changes: 4 additions & 2 deletions boards/nordic/nrf54l15dk/Kconfig.defconfig
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
# Copyright (c) 2024 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

if BOARD_NRF54L15DK_NRF54L15_CPUAPP
if BOARD_NRF54L15DK_NRF54L05_CPUAPP || BOARD_NRF54L15DK_NRF54L10_CPUAPP || \
BOARD_NRF54L15DK_NRF54L15_CPUAPP

config BT_CTLR
default BT

config ROM_START_OFFSET
default 0x800 if BOOTLOADER_MCUBOOT

endif # BOARD_NRF54L15DK_NRF54L15_CPUAPP
endif # BOARD_NRF54L15DK_NRF54L05_CPUAPP || BOARD_NRF54L15DK_NRF54L10_CPUAPP || \
# BOARD_NRF54L15DK_NRF54L15_CPUAPP
2 changes: 2 additions & 0 deletions boards/nordic/nrf54l15dk/Kconfig.nrf54l15dk
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
# SPDX-License-Identifier: Apache-2.0

config BOARD_NRF54L15DK
select SOC_NRF54L05_CPUAPP if BOARD_NRF54L15DK_NRF54L05_CPUAPP
select SOC_NRF54L10_CPUAPP if BOARD_NRF54L15DK_NRF54L10_CPUAPP
select SOC_NRF54L15_CPUAPP if BOARD_NRF54L15DK_NRF54L15_CPUAPP
select SOC_NRF54L15_CPUFLPR if BOARD_NRF54L15DK_NRF54L15_CPUFLPR || \
masz-nordic marked this conversation as resolved.
Show resolved Hide resolved
BOARD_NRF54L15DK_NRF54L15_CPUFLPR_XIP
6 changes: 4 additions & 2 deletions boards/nordic/nrf54l15dk/board.cmake
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
# Copyright (c) 2024 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

if(CONFIG_SOC_NRF54L15_CPUAPP)
if(CONFIG_SOC_NRF54L05_CPUAPP OR CONFIG_SOC_NRF54L10_CPUAPP OR
CONFIG_SOC_NRF54L15_CPUAPP)
board_runner_args(jlink "--device=cortex-m33" "--speed=4000")
elseif(CONFIG_SOC_NRF54L15_CPUFLPR)
elseif(CONFIG_SOC_NRF54L05_CPUFLPR OR CONFIG_SOC_NRF54L10_CPUFLPR OR
CONFIG_SOC_NRF54L15_CPUFLPR)
board_runner_args(jlink "--speed=4000")
endif()

Expand Down
2 changes: 2 additions & 0 deletions boards/nordic/nrf54l15dk/board.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ board:
full_name: nRF54L15 DK
vendor: nordic
socs:
- name: nrf54l05
- name: nrf54l10
- name: nrf54l15
variants:
- name: xip
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

#include "nrf54l15dk_nrf54l15-pinctrl.dtsi"
#include "nrf54l15dk_nrf54l_05_10_15-pinctrl.dtsi"

/ {
leds {
Expand Down
63 changes: 63 additions & 0 deletions boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l05_cpuapp.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
/*
* Copyright (c) 2024 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/

/dts-v1/;

#include <nordic/nrf54l05_cpuapp.dtsi>
#include "nrf54l_05_10_15_cpuapp_common.dtsi"

/ {
compatible = "nordic,nrf54l15dk_nrf54l05-cpuapp";
model = "Nordic nRF54L15 DK nRF54L05 Application MCU";

chosen {
zephyr,code-partition = &slot0_partition;
zephyr,sram = &cpuapp_sram;
};
};

/* FLPR not supported yet, give all SRAM and RRAM to the APP core */
&cpuapp_sram {
reg = <0x20000000 DT_SIZE_K(96)>;
ranges = <0x0 0x20000000 DT_SIZE_K(96)>;
};

&cpuapp_rram {
reg = <0x0 DT_SIZE_K(500)>;
};

/* These partition sizes assume no FLPR area in RRAM */
&cpuapp_rram {
partitions {
anangl marked this conversation as resolved.
Show resolved Hide resolved
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x0 DT_SIZE_K(64)>;
};
slot0_partition: partition@10000 {
label = "image-0";
reg = <0x10000 DT_SIZE_K(100)>;
};
slot0_ns_partition: partition@29000 {
label = "image-0-nonsecure";
reg = <0x29000 DT_SIZE_K(100)>;
};
slot1_partition: partition@42000 {
label = "image-1";
reg = <0x42000 DT_SIZE_K(100)>;
};
slot1_ns_partition: partition@5b000 {
label = "image-1-nonsecure";
reg = <0x5b000 DT_SIZE_K(100)>;
};
storage_partition: partition@74000 {
label = "storage";
reg = <0x74000 DT_SIZE_K(36)>;
};
};
};
24 changes: 24 additions & 0 deletions boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l05_cpuapp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Copyright (c) 2024 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

identifier: nrf54l15dk/nrf54l05/cpuapp
name: nRF54L15-DK-nRF54L05-Application
type: mcu
arch: arm
toolchain:
- gnuarmemb
- xtools
- zephyr
sysbuild: true
ram: 96
flash: 100
supported:
- adc
- counter
- gpio
- i2c
- pwm
- retained_mem
- spi
- watchdog
- i2s
29 changes: 29 additions & 0 deletions boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l05_cpuapp_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Copyright (c) 2024 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

# Enable UART driver
CONFIG_SERIAL=y

# Enable console
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y

# Enable GPIO
CONFIG_GPIO=y

# Enable MPU
CONFIG_ARM_MPU=y

# Enable hardware stack protection
CONFIG_HW_STACK_PROTECTION=y

# MPU-based null-pointer dereferencing detection cannot
# be applied as the (0x0 - 0x400) is unmapped for this target.
CONFIG_NULL_POINTER_EXCEPTION_DETECTION_NONE=y

# Enable Cache
CONFIG_CACHE_MANAGEMENT=y
CONFIG_EXTERNAL_CACHE=y

# Start SYSCOUNTER on driver init
CONFIG_NRF_GRTC_START_SYSCOUNTER=y
carlescufi marked this conversation as resolved.
Show resolved Hide resolved
63 changes: 63 additions & 0 deletions boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l10_cpuapp.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
/*
* Copyright (c) 2024 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/

/dts-v1/;

#include <nordic/nrf54l10_cpuapp.dtsi>
#include "nrf54l_05_10_15_cpuapp_common.dtsi"

/ {
compatible = "nordic,nrf54l15dk_nrf54l10-cpuapp";
model = "Nordic nRF54L15 DK nRF54L10 Application MCU";

chosen {
zephyr,code-partition = &slot0_partition;
zephyr,sram = &cpuapp_sram;
};
};

/* FLPR not supported yet, give all SRAM and RRAM to the APP core */
&cpuapp_sram {
reg = <0x20000000 DT_SIZE_K(192)>;
ranges = <0x0 0x20000000 DT_SIZE_K(192)>;
};

&cpuapp_rram {
reg = <0x0 DT_SIZE_K(1022)>;
};

/* These partition sizes assume no FLPR area in RRAM */
&cpuapp_rram {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x0 DT_SIZE_K(64)>;
};
slot0_partition: partition@10000 {
label = "image-0";
reg = <0x10000 DT_SIZE_K(230)>;
};
slot0_ns_partition: partition@49800 {
label = "image-0-nonsecure";
reg = <0x49800 DT_SIZE_K(230)>;
};
slot1_partition: partition@83000 {
label = "image-1";
reg = <0x83000 DT_SIZE_K(230)>;
};
slot1_ns_partition: partition@bc800 {
label = "image-1-nonsecure";
reg = <0xbc800 DT_SIZE_K(230)>;
};
storage_partition: partition@f6000 {
label = "storage";
reg = <0xf6000 DT_SIZE_K(38)>;
};
};
};
24 changes: 24 additions & 0 deletions boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l10_cpuapp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Copyright (c) 2024 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

identifier: nrf54l15dk/nrf54l10/cpuapp
name: nRF54L15-DK-nRF54L10-Application
type: mcu
arch: arm
toolchain:
- gnuarmemb
- xtools
- zephyr
sysbuild: true
ram: 192
flash: 230
supported:
- adc
- counter
- gpio
- i2c
- pwm
- retained_mem
- spi
- watchdog
- i2s
29 changes: 29 additions & 0 deletions boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l10_cpuapp_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Copyright (c) 2024 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

# Enable UART driver
CONFIG_SERIAL=y

# Enable console
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y

# Enable GPIO
CONFIG_GPIO=y

# Enable MPU
CONFIG_ARM_MPU=y

# Enable hardware stack protection
CONFIG_HW_STACK_PROTECTION=y

# MPU-based null-pointer dereferencing detection cannot
# be applied as the (0x0 - 0x400) is unmapped for this target.
CONFIG_NULL_POINTER_EXCEPTION_DETECTION_NONE=y

# Enable Cache
CONFIG_CACHE_MANAGEMENT=y
CONFIG_EXTERNAL_CACHE=y

# Start SYSCOUNTER on driver init
CONFIG_NRF_GRTC_START_SYSCOUNTER=y
36 changes: 35 additions & 1 deletion boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l15_cpuapp.dts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@

/dts-v1/;

#include "nrf54l15_cpuapp_common.dtsi"
#include <nordic/nrf54l15_cpuapp.dtsi>
#include "nrf54l_05_10_15_cpuapp_common.dtsi"

/ {
compatible = "nordic,nrf54l15dk_nrf54l15-cpuapp";
Expand All @@ -17,3 +18,36 @@
zephyr,sram = &cpuapp_sram;
};
};

&cpuapp_rram {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x0 DT_SIZE_K(64)>;
};
slot0_partition: partition@10000 {
label = "image-0";
reg = <0x10000 DT_SIZE_K(324)>;
};
slot0_ns_partition: partition@61000 {
label = "image-0-nonsecure";
reg = <0x61000 DT_SIZE_K(324)>;
};
slot1_partition: partition@b2000 {
label = "image-1";
reg = <0xb2000 DT_SIZE_K(324)>;
};
slot1_ns_partition: partition@103000 {
label = "image-1-nonsecure";
reg = <0x103000 DT_SIZE_K(324)>;
};
/* 32k from 0x154000 to 0x15bfff reserved for TF-M partitions */
storage_partition: partition@15c000 {
label = "storage";
reg = <0x15c000 DT_SIZE_K(36)>;
};
};
};
2 changes: 1 addition & 1 deletion boards/nordic/nrf54l15dk/nrf54l15dk_nrf54l15_cpuflpr.dts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

/dts-v1/;
#include <nordic/nrf54l15_cpuflpr.dtsi>
#include "nrf54l15dk_nrf54l15-common.dtsi"
#include "nrf54l15dk_common.dtsi"

/ {
model = "Nordic nRF54L15 DK nRF54L15 FLPR MCU";
Expand Down
Loading
Loading