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>
This commit is contained in:
Haavard Skinnemoen 2006-12-17 14:46:06 +01:00
parent 1f4f2121c2
commit 12f099c081
4 changed files with 8 additions and 10 deletions

View File

@ -53,9 +53,9 @@ int board_early_init_f(void)
return 0; 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) void board_init_info(void)

View File

@ -36,7 +36,6 @@ typedef struct global_data {
bd_t *bd; bd_t *bd;
unsigned long flags; unsigned long flags;
unsigned long baudrate; unsigned long baudrate;
unsigned long sdram_size;
unsigned long stack_end; /* highest stack address */ unsigned long stack_end; /* highest stack address */
unsigned long have_console; /* serial_init() was called */ unsigned long have_console; /* serial_init() was called */
unsigned long reloc_off; /* Relocation Offset */ unsigned long reloc_off; /* Relocation Offset */

View File

@ -26,8 +26,6 @@
extern int cpu_init(void); extern int cpu_init(void);
extern int timer_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); extern void board_init_info(void);
#endif /* __ASM_AVR32_INITCALLS_H__ */ #endif /* __ASM_AVR32_INITCALLS_H__ */

View File

@ -125,7 +125,7 @@ static void display_flash_config (void)
printf("at address 0x%08lx\n", gd->bd->bi_flashstart); 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 gd_data;
gd_t *new_gd; gd_t *new_gd;
@ -134,6 +134,7 @@ void board_init_f(ulong unused)
unsigned long monitor_len; unsigned long monitor_len;
unsigned long monitor_addr; unsigned long monitor_addr;
unsigned long addr; unsigned long addr;
long sdram_size;
/* Initialize the global data pointer */ /* Initialize the global data pointer */
memset(&gd_data, 0, sizeof(gd_data)); memset(&gd_data, 0, sizeof(gd_data));
@ -147,10 +148,10 @@ void board_init_f(ulong unused)
serial_init(); serial_init();
console_init_f(); console_init_f();
display_banner(); display_banner();
board_init_memories(); sdram_size = initdram(board_type);
/* If we have no SDRAM, we can't go on */ /* If we have no SDRAM, we can't go on */
if (!gd->sdram_size) if (sdram_size <= 0)
panic("No working SDRAM available\n"); panic("No working SDRAM available\n");
/* /*
@ -164,7 +165,7 @@ void board_init_f(ulong unused)
* - global data struct * - global data struct
* - stack * - stack
*/ */
addr = CFG_SDRAM_BASE + gd->sdram_size; addr = CFG_SDRAM_BASE + sdram_size;
monitor_len = _end - _text; monitor_len = _end - _text;
/* /*
@ -199,7 +200,7 @@ void board_init_f(ulong unused)
* information we have. * information we have.
*/ */
bd->bi_dram[0].start = CFG_SDRAM_BASE; 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; bd->bi_baudrate = gd->baudrate;
memcpy(new_gd, gd, sizeof(gd_t)); memcpy(new_gd, gd, sizeof(gd_t));