soc: nxp_imx: Add support for external xip flash boot header

Adds support for the boot data, image vector table, and FlexSPI NOR
config structures used by the imx rt boot ROM to boot an application
from an external xip flash device.

It is now possible to build and flash a bootable zephyr image to the
external xip flash on the mimxrt1020_evk, mimxrt1050_evk, and
mimxrt1060_evk boards via the 'ninja flash' build target and jlink
runner. Note, however, that the default board configurations still link
code into internal ITCM, therefore you must set CONFIG_CODE_HYPERFLASH=y
or CONFIG_CODE_QSPI=y explicitly to override the default. You must also
set CONFIG_NXP_IMX_RT_BOOT_HEADER=y to build the boot header into the
image.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
This commit is contained in:
Maureen Helm 2018-12-27 08:09:53 -06:00 committed by Kumar Gala
commit 8e3004953d
11 changed files with 110 additions and 1 deletions

View file

@ -58,6 +58,10 @@
#define _CCM_NOINIT_SECTION_NAME .ccm_noinit
#endif
#define IMX_BOOT_CONF .boot_hdr.conf
#define IMX_BOOT_DATA .boot_hdr.data
#define IMX_BOOT_IVT .boot_hdr.ivt
#ifdef CONFIG_NOCACHE_MEMORY
#define _NOCACHE_SECTION_NAME nocache
#endif