summaryrefslogtreecommitdiff
path: root/board/armltd/versatile/versatile.c
diff options
context:
space:
mode:
authorStefano Babic <sbabic@denx.de>2011-06-24 03:04:38 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2011-08-04 13:12:44 +0200
commitd388298a59ba375c76597b8f95b560afa971a0fb (patch)
tree7255c781bbc6d6b1aefcc3622087dfa13f58aebc /board/armltd/versatile/versatile.c
parent07407d97f07bf62c6c6e6899029a079ecc271974 (diff)
downloadu-boot-imx-d388298a59ba375c76597b8f95b560afa971a0fb.zip
u-boot-imx-d388298a59ba375c76597b8f95b560afa971a0fb.tar.gz
u-boot-imx-d388298a59ba375c76597b8f95b560afa971a0fb.tar.bz2
ARM: versatile: fix board support
Versatile board is used as example to run u-boot under qemu. The patch fixes relocation for all versatile boards and adds a versatileqemu target to be used under qemu. Patch tested only under qemu, not on real boards. Tested with QEMU emulator version 0.14.50. Signed-off-by: Stefano Babic <sbabic@denx.de> CC: Alessandro Rubini <rubini-list@gnudd.com> CC: Loïc Minier <loic.minier@linaro.org>
Diffstat (limited to 'board/armltd/versatile/versatile.c')
-rw-r--r--board/armltd/versatile/versatile.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/board/armltd/versatile/versatile.c b/board/armltd/versatile/versatile.c
index 6e836dd..ee8cb5e 100644
--- a/board/armltd/versatile/versatile.c
+++ b/board/armltd/versatile/versatile.c
@@ -51,7 +51,7 @@ void show_boot_progress(int progress)
* Miscellaneous platform dependent initialisations
*/
-int board_init (void)
+int board_early_init_f (void)
{
/*
* set clock frequency:
@@ -62,6 +62,11 @@ int board_init (void)
((VERSATILE_TIMCLK << VERSATILE_TIMER1_EnSel) | (VERSATILE_TIMCLK << VERSATILE_TIMER2_EnSel) |
(VERSATILE_TIMCLK << VERSATILE_TIMER3_EnSel) | (VERSATILE_TIMCLK << VERSATILE_TIMER4_EnSel));
+ return 0;
+}
+
+int board_init (void)
+{
/* arch number of Versatile Board */
gd->bd->bi_arch_number = MACH_TYPE_VERSATILE_PB;
@@ -88,6 +93,9 @@ int misc_init_r (void)
******************************/
int dram_init (void)
{
+ /* dram_init must store complete ramsize in gd->ram_size */
+ gd->ram_size = get_ram_size((volatile void *)CONFIG_SYS_SDRAM_BASE,
+ PHYS_SDRAM_1_SIZE);
return 0;
}