diff --git a/boards/nordic/nrf54h20dk/Kconfig.defconfig b/boards/nordic/nrf54h20dk/Kconfig.defconfig index 268722f5fe5..60c9345eb04 100644 --- a/boards/nordic/nrf54h20dk/Kconfig.defconfig +++ b/boards/nordic/nrf54h20dk/Kconfig.defconfig @@ -17,3 +17,13 @@ config MAX_THREAD_BYTES default 3 if USERSPACE endif # BOARD_NRF54H20DK_NRF54H20_CPURAD + +if BOARD_NRF54H20DK_NRF54H20_CPUAPP_IRON + +config ROM_START_OFFSET + default 0x800 if BOOTLOADER_MCUBOOT + +config FLASH_LOAD_OFFSET + default 0x2c000 if !USE_DT_CODE_PARTITION + +endif # BOARD_NRF54H20DK_NRF54H20_CPUAPP_IRON diff --git a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron.dts b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron.dts index 367741ba582..54e3014adea 100644 --- a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron.dts +++ b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron.dts @@ -13,6 +13,13 @@ * the application core. */ +/ { + chosen { + zephyr,code-partition = &slot0_partition; + zephyr,uart-mcumgr = &uart136; + }; +}; + &mram1x { cpuapp_rx_partitions: cpuapp-rx-partitions { compatible = "nordic,owned-partitions", "fixed-partitions"; @@ -20,8 +27,19 @@ #address-cells = <1>; #size-cells = <1>; - cpuapp_slot0_partition: partition@2c000 { - reg = <0x2c000 DT_SIZE_K(480)>; + boot_partition: partition@2c000 { + label = "mcuboot"; + reg = <0x2c000 DT_SIZE_K(64)>; + }; + + slot0_partition: partition@3c000 { + label = "image-0"; + reg = <0x3c000 DT_SIZE_K(200)>; + }; + + slot1_partition: partition@6E000 { + label = "image-1"; + reg = <0x6E000 DT_SIZE_K(200)>; }; cpuppr_code_partition: partition@a4000 { diff --git a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron_defconfig b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron_defconfig index 4667d1cbc3a..01f3bec3932 100644 --- a/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron_defconfig +++ b/boards/nordic/nrf54h20dk/nrf54h20dk_nrf54h20_cpuapp_iron_defconfig @@ -8,8 +8,6 @@ CONFIG_SERIAL=y CONFIG_CONSOLE=y CONFIG_UART_CONSOLE=y -CONFIG_USE_DT_CODE_PARTITION=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/samples/subsys/mgmt/mcumgr/smp_svr/boards/nrf54h20dk_nrf54h20_cpuapp_iron.conf b/samples/subsys/mgmt/mcumgr/smp_svr/boards/nrf54h20dk_nrf54h20_cpuapp_iron.conf new file mode 100644 index 00000000000..13e4e98c203 --- /dev/null +++ b/samples/subsys/mgmt/mcumgr/smp_svr/boards/nrf54h20dk_nrf54h20_cpuapp_iron.conf @@ -0,0 +1,3 @@ +# Disable GPD because no IPC is enabled in SSDFW +CONFIG_SOC_NRF54H20_GPD=n +CONFIG_PM=n diff --git a/samples/subsys/mgmt/mcumgr/smp_svr/sample.yaml b/samples/subsys/mgmt/mcumgr/smp_svr/sample.yaml index ef6462b5cd7..cc7e86e7a47 100644 --- a/samples/subsys/mgmt/mcumgr/smp_svr/sample.yaml +++ b/samples/subsys/mgmt/mcumgr/smp_svr/sample.yaml @@ -88,6 +88,7 @@ tests: - mimxrt685_evk/mimxrt685s/cm33 - rd_rw612_bga - nrf52840dk/nrf52840 + - nrf54h20dk/nrf54h20/cpuapp/iron - pinnacle_100_dvk - mg100 integration_platforms: diff --git a/soc/nordic/nrf54h/Kconfig b/soc/nordic/nrf54h/Kconfig index 842e0e33807..30b55cdc150 100644 --- a/soc/nordic/nrf54h/Kconfig +++ b/soc/nordic/nrf54h/Kconfig @@ -74,3 +74,6 @@ config SOC_NRF54H20_CPUFLPR rsource "bicr/Kconfig" rsource "gpd/Kconfig" + +config SOC_NRF54H20_IRON + select EXPERIMENTAL if MCUBOOT