CONFIG_FW_INFO_MAGIC_COMMON

(No prompt – not directly user assignable.)

Type: hex

Help

Magic word for all structs (32 bits). This is used by different metadata structs (in fw_info.h and elsewhere). They each have their own magic word composed of three uint32_t values, where one is always this option (FW_INFO_MAGIC_COMMON). One of the uint32_ts is a compatibility ID constructed from FW_INFO_HARDWARE_ID, FW_INFO_VERSION, FW_CRYPTO_ID, and FW_INFO_MAGIC_COMPATIBILITY_ID, while the final uint32_t is completely different for each struct, e.g. FW_INFO_MAGIC_FIRMWARE_INFO. 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 this module’s CMakeLists.txt to see how the magic words are composed.

Direct dependencies

FW_INFO

(Includes any dependencies from ifs and menus.)

Default

  • 0x281ee6de

Kconfig definition

At <nRF>/subsys/fw_info/Kconfig:32

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:23<Zephyr>/modules/Kconfig:6<BuildDir>/Kconfig/Kconfig.modules:2<nRF>/Kconfig.nrf:25<nRF>/subsys/Kconfig:28

Menu path: (Top) → Modules → nrf (/home/runner/work/sdk-nrf/sdk-nrf/ncs/nrf) → Nordic nRF Connect → Firmware Metadata

config FW_INFO_MAGIC_COMMON
    hex
    default 0x281ee6de
    depends on FW_INFO
    help
      Magic word for all structs (32 bits).
      This is used by different metadata structs (in fw_info.h and
      elsewhere). They each have their own magic word composed of three
      uint32_t values, where one is always this option (FW_INFO_MAGIC_COMMON).
      One of the uint32_ts is a compatibility ID constructed from
      FW_INFO_HARDWARE_ID, FW_INFO_VERSION, FW_CRYPTO_ID, and
      FW_INFO_MAGIC_COMPATIBILITY_ID, while the final uint32_t is completely
      different for each struct, e.g. FW_INFO_MAGIC_FIRMWARE_INFO.
      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 this module's CMakeLists.txt to see how the magic words are
      composed.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)