Configuring the nRF54H20 DK

The nRF54H20 DK uses both devicetree and Kconfig for its hardware and software configuration.

You can find the basics of both devicetree and Kconfig in Zephyr in the Application Development section of the Zephyr documentation. You can also read the Build and configuration system section describing the nRF Connect SDK additions to the Zephyr configuration system.

However, the multicore nature of the nRF54H20 DK required some changes to the way devicetree files are organized.

DTS file scheme

Note

This file scheme is valid only for the nRF54H20 initial limited sampling version of nRF Connect SDK. It is subject to changes or improvements in future releases.

The following is the DTS file structure implemented for all the SoCs of the 54H family:

  • Arch-specific DTS files, located in the ../dts/arm/nordic_nrf_next/ and dts/riscv/nordic_nrf_next folder​ directories:

    • Project-wide files (haltium_cpu.dtsi and haltium_global_*.dtsi)​

    • Core-specific files per product (nrf54h20_cpu*.dtsi)​

  • Common directory, located in the ../common/nordic_nrf_next folder​:

    • Arch-independent configurations​

    • Common platform overlays

    • Common memory and peripherals overlay applicable across products​

    • Product-specific overlays applicable to all cores​

    • Project-wide overlays

The following is the include tree for the application core of the nRF54H20 (cpuapp):

nRF54H20 CPUAPP include tree

The files shown in the figure are currently hosted in the ic-next repository.

Customizing the DTS configuration

The output files created in your application build directory are documented in Input and output files. You can use overlay files to customize this configuration.

To see and test how to use overlays for changing nodes, see the Lesson 3 of the nRF Connect SDK Fundamentals course on the Nordic Developer Academy website.

Generated HEX files

When building an application for the nRF54H20 DK, you are building all domain images at once. During this process, the following zephyr.hex images are built:

  • Application core application

  • PPR core application

  • Radio core firmware

Additionally, the following user information configuration registers (UICR) contents (uicr.hex) are generated for setup access for domains:

  • System Controller UICR

  • Application UICR

  • Radio UICR

Note

west flash uses uicr_merged.hex files that are pre-merged HEX files combining the relevant zephyr.hex + uicr.hex for a domain that has UICRs. Flashing both zephyr.hex + uicr.hex will result in the same configuration.

All of the HEX files need to be flashed into the device. For more information on building images for the nRF54H20 DK, see Getting started with the nRF54H20 DK. For additional information on multi-image builds see Multi-image builds using child and parent images.