diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-07-29 11:43:48 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-08-01 16:32:00 +0200 |
commit | f9f35ee93821048bbace895c5c688bafbda2c3f3 (patch) | |
tree | adab257c88226972d58ae3e47aeea7f7a3ae36b5 /arch/arm/boards/pcm049/board.c | |
parent | 2222dbc28668e478ec27cff13f8d4c9498d8519a (diff) | |
download | barebox-f9f35ee93821048bbace895c5c688bafbda2c3f3.tar.gz barebox-f9f35ee93821048bbace895c5c688bafbda2c3f3.tar.xz |
ARM boards: move sdram setup before mmu setup
The new MMU setup will need SDRAM base addresses and sizes.
For this reason convert the MMU enabled ARM boards:
- move mem setup to mem_initcall. This is early but
still makes sure that we already have the console available
- move MMU setup in this initcall temporary as after the mmu_init will generic
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Diffstat (limited to 'arch/arm/boards/pcm049/board.c')
-rw-r--r-- | arch/arm/boards/pcm049/board.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/arch/arm/boards/pcm049/board.c b/arch/arm/boards/pcm049/board.c index 20419a38d3..83eb9be3ef 100644 --- a/arch/arm/boards/pcm049/board.c +++ b/arch/arm/boards/pcm049/board.c @@ -54,9 +54,13 @@ static int pcm049_console_init(void) } console_initcall(pcm049_console_init); -#ifdef CONFIG_MMU -static int pcm049_mmu_init(void) +static int pcm049_mem_init(void) { + arm_add_mem_device("ram0", 0x80000000, SZ_512M); + + add_mem_device("sram0", 0x40300000, 48 * 1024, + IORESOURCE_MEM_WRITEABLE); +#ifdef CONFIG_MMU mmu_init(); arm_create_section(0x80000000, 0x80000000, 256, PMD_SECT_DEF_CACHED); @@ -64,11 +68,10 @@ static int pcm049_mmu_init(void) arm_create_section(0x90000000, 0x80000000, 256, PMD_SECT_DEF_UNCACHED); mmu_enable(); - +#endif return 0; } -device_initcall(pcm049_mmu_init); -#endif +mem_initcall(pcm049_mem_init); static struct gpmc_config net_cfg = { .cfg = { @@ -93,9 +96,6 @@ static void pcm049_network_init(void) static int pcm049_devices_init(void) { - arm_add_mem_device("ram0", 0x80000000, SZ_512M); - add_mem_device("ram0", 0x40300000, 48 * 1024, - IORESOURCE_MEM_WRITEABLE); add_generic_device("omap-hsmmc", -1, NULL, 0x4809C100, SZ_4K, IORESOURCE_MEM, NULL); |