diff options
author | Haavard Skinnemoen <hskinnemoen@atmel.com> | 2006-12-17 14:46:06 +0100 |
---|---|---|
committer | Haavard Skinnemoen <hskinnemoen@atmel.com> | 2007-04-14 15:20:27 +0200 |
commit | 12f099c08167a7a51aeee623bc16dafd0841271c (patch) | |
tree | 99a369b9f30f3e62aa103742d584f017fe33af30 | |
parent | 1f4f2121c2685182eb87fa9a9b799d1917387a1c (diff) | |
download | u-boot-imx-12f099c08167a7a51aeee623bc16dafd0841271c.zip u-boot-imx-12f099c08167a7a51aeee623bc16dafd0841271c.tar.gz u-boot-imx-12f099c08167a7a51aeee623bc16dafd0841271c.tar.bz2 |
AVR32: Use initdram() instead of board_init_memories()
Conform to the "standard" interface and use initdram() instead of
board_init_memories() on AVR32. This enables us to get rid of the
sdram_size member of the global_data struct as well.
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
-rw-r--r-- | board/atmel/atstk1000/atstk1000.c | 4 | ||||
-rw-r--r-- | include/asm-avr32/global_data.h | 1 | ||||
-rw-r--r-- | include/asm-avr32/initcalls.h | 2 | ||||
-rw-r--r-- | lib_avr32/board.c | 11 |
4 files changed, 8 insertions, 10 deletions
diff --git a/board/atmel/atstk1000/atstk1000.c b/board/atmel/atstk1000/atstk1000.c index 8210bc6..9f735da 100644 --- a/board/atmel/atstk1000/atstk1000.c +++ b/board/atmel/atstk1000/atstk1000.c @@ -53,9 +53,9 @@ int board_early_init_f(void) return 0; } -void board_init_memories(void) +long int initdram(int board_type) { - gd->sdram_size = sdram_init(&sdram); + return sdram_init(&sdram); } void board_init_info(void) diff --git a/include/asm-avr32/global_data.h b/include/asm-avr32/global_data.h index 7c45b36..681c514 100644 --- a/include/asm-avr32/global_data.h +++ b/include/asm-avr32/global_data.h @@ -36,7 +36,6 @@ typedef struct global_data { bd_t *bd; unsigned long flags; unsigned long baudrate; - unsigned long sdram_size; unsigned long stack_end; /* highest stack address */ unsigned long have_console; /* serial_init() was called */ unsigned long reloc_off; /* Relocation Offset */ diff --git a/include/asm-avr32/initcalls.h b/include/asm-avr32/initcalls.h index 7ba25cd..583e5dc 100644 --- a/include/asm-avr32/initcalls.h +++ b/include/asm-avr32/initcalls.h @@ -26,8 +26,6 @@ extern int cpu_init(void); extern int timer_init(void); -extern void board_init_memories(void); -extern void board_init_pio(void); extern void board_init_info(void); #endif /* __ASM_AVR32_INITCALLS_H__ */ diff --git a/lib_avr32/board.c b/lib_avr32/board.c index c55ebd5..a407bca 100644 --- a/lib_avr32/board.c +++ b/lib_avr32/board.c @@ -125,7 +125,7 @@ static void display_flash_config (void) printf("at address 0x%08lx\n", gd->bd->bi_flashstart); } -void board_init_f(ulong unused) +void board_init_f(ulong board_type) { gd_t gd_data; gd_t *new_gd; @@ -134,6 +134,7 @@ void board_init_f(ulong unused) unsigned long monitor_len; unsigned long monitor_addr; unsigned long addr; + long sdram_size; /* Initialize the global data pointer */ memset(&gd_data, 0, sizeof(gd_data)); @@ -147,10 +148,10 @@ void board_init_f(ulong unused) serial_init(); console_init_f(); display_banner(); - board_init_memories(); + sdram_size = initdram(board_type); /* If we have no SDRAM, we can't go on */ - if (!gd->sdram_size) + if (sdram_size <= 0) panic("No working SDRAM available\n"); /* @@ -164,7 +165,7 @@ void board_init_f(ulong unused) * - global data struct * - stack */ - addr = CFG_SDRAM_BASE + gd->sdram_size; + addr = CFG_SDRAM_BASE + sdram_size; monitor_len = _end - _text; /* @@ -199,7 +200,7 @@ void board_init_f(ulong unused) * information we have. */ bd->bi_dram[0].start = CFG_SDRAM_BASE; - bd->bi_dram[0].size = gd->sdram_size; + bd->bi_dram[0].size = sdram_size; bd->bi_baudrate = gd->baudrate; memcpy(new_gd, gd, sizeof(gd_t)); |