-
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.
Default¶
0x281ee6de
Kconfig definition¶
At <nRF>/subsys/fw_info/Kconfig:32
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:9
→ <BuildDir>/Kconfig/Kconfig.modules:1
→ <nRF>/Kconfig.nrf:25
→ <nRF>/subsys/Kconfig:28
Menu path: (Top) → Modules → 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.)