diff options
-rw-r--r-- | arch/arm/boards/freescale-mx53-loco/lowlevel.c | 14 | ||||
-rw-r--r-- | arch/arm/configs/freescale_mx53_loco_defconfig | 3 | ||||
-rw-r--r-- | arch/arm/dts/Makefile | 2 | ||||
-rw-r--r-- | arch/arm/mach-imx/Kconfig | 3 | ||||
-rw-r--r-- | images/Makefile.imx | 7 |
5 files changed, 23 insertions, 6 deletions
diff --git a/arch/arm/boards/freescale-mx53-loco/lowlevel.c b/arch/arm/boards/freescale-mx53-loco/lowlevel.c index 60c28f7856..d920524da2 100644 --- a/arch/arm/boards/freescale-mx53-loco/lowlevel.c +++ b/arch/arm/boards/freescale-mx53-loco/lowlevel.c @@ -1,9 +1,19 @@ #include <common.h> #include <mach/esdctl.h> #include <asm/barebox-arm-head.h> +#include <asm/barebox-arm.h> -void __naked barebox_arm_reset_vector(void) +extern char __dtb_imx53_qsb_start[]; + +ENTRY_FUNCTION(start_imx53_loco)(void) { + uint32_t fdt; + + __barebox_arm_head(); + arm_cpu_lowlevel_init(); - imx53_barebox_entry(0); + + fdt = (uint32_t)__dtb_imx53_qsb_start - get_runtime_offset(); + + imx53_barebox_entry(fdt); } diff --git a/arch/arm/configs/freescale_mx53_loco_defconfig b/arch/arm/configs/freescale_mx53_loco_defconfig index e45863c262..f502f5e053 100644 --- a/arch/arm/configs/freescale_mx53_loco_defconfig +++ b/arch/arm/configs/freescale_mx53_loco_defconfig @@ -1,5 +1,3 @@ -CONFIG_BUILTIN_DTB=y -CONFIG_BUILTIN_DTB_NAME="imx53-qsb" CONFIG_ARCH_IMX=y CONFIG_ARCH_IMX53=y CONFIG_IMX_IIM=y @@ -8,7 +6,6 @@ CONFIG_THUMB2_BAREBOX=y CONFIG_CMD_ARM_MMUINFO=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y -CONFIG_PBL_IMAGE=y CONFIG_MMU=y CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 678f910c50..a039a3c660 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -8,6 +8,8 @@ dtb-$(CONFIG_ARCH_IMX6) += imx6q-dmo-realq7.dtb \ BUILTIN_DTB := $(patsubst "%",%,$(CONFIG_BUILTIN_DTB_NAME)) obj-$(CONFIG_BUILTIN_DTB) += $(BUILTIN_DTB).dtb.o +pbl-$(CONFIG_MACH_FREESCALE_MX53_LOCO) += imx53-qsb.dtb.o + .SECONDARY: $(obj)/$(BUILTIN_DTB).dtb.S .SECONDARY: $(patsubst %,$(obj)/%.S,$(dtb-y)) diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig index 4f9ef3e5ad..134521e022 100644 --- a/arch/arm/mach-imx/Kconfig +++ b/arch/arm/mach-imx/Kconfig @@ -97,6 +97,7 @@ endchoice config ARCH_IMX_IMXIMAGE bool + default y help if enabled the imx-image tool is compiled @@ -476,7 +477,7 @@ choice config MACH_FREESCALE_MX53_LOCO select HAVE_DEFAULT_ENVIRONMENT_NEW - select ARCH_IMX_INTERNAL_BOOT_USE_IMXIMAGE + select HAVE_PBL_MULTI_IMAGES bool "Freescale i.MX53 LOCO" config MACH_FREESCALE_MX53_SMD diff --git a/images/Makefile.imx b/images/Makefile.imx index 63347297eb..3a5b5f1d84 100644 --- a/images/Makefile.imx +++ b/images/Makefile.imx @@ -13,3 +13,10 @@ board = $(srctree)/arch/$(ARCH)/boards pblx-$(CONFIG_MACH_PCM038) += start_imx27_pcm038 FILE_barebox-phytec-phycore-imx27.img = start_imx27_pcm038.pblx image-$(CONFIG_MACH_PCM038) += barebox-phytec-phycore-imx27.img + +# ----------------------- i.MX53 based boards --------------------------- +pblx-$(CONFIG_MACH_FREESCALE_MX53_LOCO) += start_imx53_loco +CFG_start_imx53_loco.pblx.imximg = $(board)/freescale-mx53-loco/flash-header.imxcfg +imximage-$(CONFIG_MACH_FREESCALE_MX53_LOCO) += start_imx53_loco.pblx.imximg +FILE_barebox-freescale-imx53-loco.img = start_imx53_loco.pblx.imximg +image-$(CONFIG_MACH_FREESCALE_MX53_LOCO) += barebox-freescale-imx53-loco.img |