CONFIG_FW_MAGIC_COMMON

Magic word used for all structs (32 bits).

Type: hex

Help

There are 3 different metadata structs (see fw_metadata.h). They each have their own magic word composed of 3 u32_t values. One of the u32_ts is a compatibility id constructed from FW_HARDWARE_ID, FW_INFO_VERSION, FW_CRYPTO_ID, and FW_CUSTOM_COMPATIBILITY_ID. The other two u32_ts are defined in FW_MAGIC_COMMON (common to all structs), and in one of FW_MAGIC_FIRMWARE_INFO, FW_MAGIC_VALIDATION_INFO, and FW_MAGIC_POINTER. The bootloader expects a certain value for each struct, and if it attempts to read a struct without a matching magic word, the struct will be rejected. The config values here apply both to this build of the bootloader, and to the metadata constructed for the app. Refer to fw_metadata.cmake to see how the magic words are composed.

Direct dependencies

FW_METADATA

(Includes any dependencies from if’s and menus.)

Defaults

Kconfig definition

At ../nrf/subsys/fw_metadata/Kconfig:31

Included via Kconfig:10Kconfig.zephyr:10/jenkins_workspace/workspace/connect-nrf_documentation_master/_build/Kconfig.modules:1/jenkins_workspace/workspace/connect-nrf_documentation_master/ncs/nrf/Kconfig.nrf:9../nrf/subsys/Kconfig:24

Menu path: (top menu) → Nordic nRF Connect → Firmware Metadata

config FW_MAGIC_COMMON
    hex
    prompt "Magic word used for all structs (32 bits)." if FW_METADATA
    default 0x281ee6de if FW_METADATA
    depends on FW_METADATA
    help
      There are 3 different metadata structs (see fw_metadata.h). They each
      have their own magic word composed of 3 u32_t values. One of the
      u32_ts is a compatibility id constructed from FW_HARDWARE_ID,
      FW_INFO_VERSION, FW_CRYPTO_ID, and FW_CUSTOM_COMPATIBILITY_ID.
      The other two u32_ts are defined in FW_MAGIC_COMMON (common to
      all structs), and in one of FW_MAGIC_FIRMWARE_INFO,
      FW_MAGIC_VALIDATION_INFO, and FW_MAGIC_POINTER.
      The bootloader expects a certain value for each struct, and if it
      attempts to read a struct without a matching magic word, the struct
      will be rejected. The config values here apply both to this build of
      the bootloader, and to the metadata constructed for the app.
      Refer to fw_metadata.cmake to see how the magic words are composed.

(Definitions include propagated dependencies, including from if’s and menus.)