diff options
author | Jason Cobham <cobham.jason@gmail.com> | 2016-04-19 21:41:04 -0700 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2016-04-21 15:07:04 +0200 |
commit | b8efd857b046ddec108a0df3e20214d8ad19c19d (patch) | |
tree | c3b22283c2c693ad824d1600da0fbf0597dfbe43 /arch/arm/boards/ccxmx53 | |
parent | 50de03c8d3dc64950feab0d9158cfaef8f1fc1da (diff) | |
download | barebox-b8efd857b046ddec108a0df3e20214d8ad19c19d.tar.gz barebox-b8efd857b046ddec108a0df3e20214d8ad19c19d.tar.xz |
ARM: i.MX53: ccxmx53: Fix memory detection.
This patch fixes memory detection on the Digi ccxmx53 board.
Also updates dts to support nand.
Cleaned up whitespace?
Signed-off-by: Jason Cobham <cobham.jason@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards/ccxmx53')
-rw-r--r-- | arch/arm/boards/ccxmx53/flash-header-imx53-ccxmx53_1gib.imxcfg | 2 | ||||
-rw-r--r-- | arch/arm/boards/ccxmx53/lowlevel.c | 41 |
2 files changed, 25 insertions, 18 deletions
diff --git a/arch/arm/boards/ccxmx53/flash-header-imx53-ccxmx53_1gib.imxcfg b/arch/arm/boards/ccxmx53/flash-header-imx53-ccxmx53_1gib.imxcfg index 6f1cab60c7..68d947c01d 100644 --- a/arch/arm/boards/ccxmx53/flash-header-imx53-ccxmx53_1gib.imxcfg +++ b/arch/arm/boards/ccxmx53/flash-header-imx53-ccxmx53_1gib.imxcfg @@ -31,7 +31,7 @@ wm 32 0x63fd90f8 0x00000800 wm 32 0x63fd907c 0x020c0211 wm 32 0x63fd9080 0x014c0155 wm 32 0x63fd9018 0x000016d0 -wm 32 0x63fd9000 0xc4110000 +wm 32 0x63fd9000 0xc3110000 wm 32 0x63fd900c 0x4d5122d2 wm 32 0x63fd9010 0x92d18a22 wm 32 0x63fd9014 0x00c70092 diff --git a/arch/arm/boards/ccxmx53/lowlevel.c b/arch/arm/boards/ccxmx53/lowlevel.c index b321811e95..55f6f366ac 100644 --- a/arch/arm/boards/ccxmx53/lowlevel.c +++ b/arch/arm/boards/ccxmx53/lowlevel.c @@ -13,7 +13,10 @@ * */ +#include <debug_ll.h> #include <common.h> +#include <linux/sizes.h> +#include <io.h> #include <mach/esdctl.h> #include <mach/generic.h> #include <image-metadata.h> @@ -26,28 +29,32 @@ BAREBOX_IMD_TAG_STRING(ccxmx53_memsize_SZ_512M, IMD_TYPE_PARAMETER, "memsize=512", 0); BAREBOX_IMD_TAG_STRING(ccxmx53_memsize_SZ_1G, IMD_TYPE_PARAMETER, "memsize=1024", 0); -static void __noreturn start_imx53_ccxmx53_common(uint32_t size, - void *fdt_blob_fixed_offset) +extern char __dtb_imx53_ccxmx53_start[]; + +ENTRY_FUNCTION(start_ccxmx53_512mb, r0, r1, r2) { void *fdt; imx5_cpu_lowlevel_init(); arm_setup_stack(0xf8020000 - 8); - fdt = fdt_blob_fixed_offset - get_runtime_offset(); - barebox_arm_entry(0x70000000, size, fdt); + IMD_USED(ccxmx53_memsize_SZ_512M); + + fdt = __dtb_imx53_ccxmx53_start - get_runtime_offset(); + + imx53_barebox_entry(fdt); } -#define CCMX53_ENTRY(name, fdt_name, memory_size) \ - ENTRY_FUNCTION(name, r0, r1, r2) \ - { \ - extern char __dtb_##fdt_name##_start[]; \ - \ - IMD_USED(ccxmx53_memsize_##memory_size); \ - \ - start_imx53_ccxmx53_common(memory_size, \ - __dtb_##fdt_name##_start); \ - } - -CCMX53_ENTRY(start_ccxmx53_512mb, imx53_ccxmx53, SZ_512M); -CCMX53_ENTRY(start_ccxmx53_1gib, imx53_ccxmx53, SZ_1G); +ENTRY_FUNCTION(start_ccxmx53_1gib, r0, r1, r2) +{ + void *fdt; + + imx5_cpu_lowlevel_init(); + arm_setup_stack(0xf8020000 - 8); + + IMD_USED(ccxmx53_memsize_SZ_1G); + + fdt = __dtb_imx53_ccxmx53_start - get_runtime_offset(); + + imx53_barebox_entry(fdt); +} |