-
CONFIG_ROM_START_OFFSET
¶
ROM Start Offset accounting for BL2 Header in the NS image
ROM start offset
Type: hex
Help¶
By default BL2 header size in TF-M is 0x400. ROM_START_OFFSET needs to be updated if TF-M switches to use a different header size for BL2.
Help¶
If the application is built for chain-loading by a bootloader this variable is required to be set to value that leaves sufficient space between the beginning of the image and the start of the first section to store an image header or any other metadata. In the particular case of the MCUboot bootloader this reserves enough space to store the image header, which should also meet vector table alignment requirements on most ARM targets, although some targets may require smaller or larger values.
Defaults¶
0x100
0x2000 if
BOOT_FLEXSPI_NOR
||BOOT_SEMC_NOR
0x1200 if
NXP_IMX_RT6XX_BOOT_HEADER
0x400 if
BOOTLOADER_MCUBOOT
0x0 if !
BOOTLOADER_MCUBOOT
0x800 if
XIP
0x0 if !
XIP
0x800 if
XIP
0x0 if !
XIP
0x400
0
Kconfig definitions¶
At <Zephyr>/boards/xtensa/intel_s1000_crb/Kconfig.defconfig:48
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:18
Menu path: (Top)
config ROM_START_OFFSET hex default 0x100 depends onBOOTLOADER_MCUBOOT
&&BOARD_INTEL_S1000_CRB
At <Zephyr>/soc/arm/nxp_imx/rt/Kconfig.defconfig.series:11
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:19
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arm/nxp_imx/Kconfig.defconfig:4
Menu path: (Top)
config ROM_START_OFFSET hex default 0x2000 ifBOOT_FLEXSPI_NOR
||BOOT_SEMC_NOR
depends onSOC_SERIES_IMX_RT
At <Zephyr>/soc/arm/nxp_imx/rt6xx/Kconfig.defconfig.series:11
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:19
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arm/nxp_imx/Kconfig.defconfig:4
Menu path: (Top)
config ROM_START_OFFSET hex default 0x1200 ifNXP_IMX_RT6XX_BOOT_HEADER
depends onSOC_SERIES_IMX_RT6XX
At <Zephyr>/soc/arm/st_stm32/stm32h7/Kconfig.defconfig.series:15
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:19
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arm/st_stm32/Kconfig.defconfig:3
Menu path: (Top)
config ROM_START_OFFSET hex default 0x400 ifBOOTLOADER_MCUBOOT
default 0x0 if !BOOTLOADER_MCUBOOT
depends onSOC_SERIES_STM32H7X
At <Zephyr>/soc/arm/ti_simplelink/cc32xx/Kconfig.defconfig.cc3220sf:18
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:19
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arm/ti_simplelink/Kconfig.defconfig:3
→ <Zephyr>/soc/arm/ti_simplelink/cc32xx/Kconfig.defconfig.series:7
Menu path: (Top)
config ROM_START_OFFSET hex default 0x800 ifXIP
default 0x0 if !XIP
depends onSOC_CC3220SF
&&SOC_SERIES_CC32XX
At <Zephyr>/soc/arm/ti_simplelink/cc32xx/Kconfig.defconfig.cc3235sf:19
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:19
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arm/ti_simplelink/Kconfig.defconfig:3
→ <Zephyr>/soc/arm/ti_simplelink/cc32xx/Kconfig.defconfig.series:7
Menu path: (Top)
config ROM_START_OFFSET hex default 0x800 ifXIP
default 0x0 if !XIP
depends onSOC_CC3235SF
&&SOC_SERIES_CC32XX
At <Zephyr>/modules/Kconfig.tfm:155
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:23
→ <Zephyr>/modules/Kconfig:32
Menu path: (Top) → Modules → Build with TF-M as the Secure Execution Environment
config ROM_START_OFFSET hex "ROM Start Offset accounting for BL2 Header in the NS image" default 0x400 depends on !TFM_BL2_FALSE
&&BUILD_WITH_TFM
help By default BL2 header size in TF-M is 0x400. ROM_START_OFFSET needs to be updated if TF-M switches to use a different header size for BL2.
At <Zephyr>/Kconfig.zephyr:121
Included via <Zephyr>/Kconfig:8
Menu path: (Top) → Build and Link Features → Linker Options
config ROM_START_OFFSET
hex "ROM start offset"
default 0
help
If the application is built for chain-loading by a bootloader this
variable is required to be set to value that leaves sufficient
space between the beginning of the image and the start of the first
section to store an image header or any other metadata.
In the particular case of the MCUboot bootloader this reserves enough
space to store the image header, which should also meet vector table
alignment requirements on most ARM targets, although some targets
may require smaller or larger values.
(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)