Skip to content
Snippets Groups Projects
Commit 25e6854d authored by Haavard Skinnemoen's avatar Haavard Skinnemoen
Browse files

avr32: use board_early_init_r instead of board_init_info


Replace the avr32-specific board_init_info hook by the standard
board_early_init_r hook and make it optional.

board_early_init_r() runs somewhat earlier than board_init_info used to
do, but this isn't a problem for any of the in-tree boards.

Signed-off-by: default avatarHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
parent 36d375fa
No related branches found
No related tags found
No related merge requests found
...@@ -88,10 +88,11 @@ phys_size_t initdram(int board_type) ...@@ -88,10 +88,11 @@ phys_size_t initdram(int board_type)
return actual_size; return actual_size;
} }
void board_init_info(void) int board_early_init_r(void)
{ {
gd->bd->bi_phy_id[0] = 0x01; gd->bd->bi_phy_id[0] = 0x01;
gd->bd->bi_phy_id[1] = 0x03; gd->bd->bi_phy_id[1] = 0x03;
return 0;
} }
extern int macb_eth_initialize(int id, void *regs, unsigned int phy_addr); extern int macb_eth_initialize(int id, void *regs, unsigned int phy_addr);
......
...@@ -110,10 +110,11 @@ phys_size_t initdram(int board_type) ...@@ -110,10 +110,11 @@ phys_size_t initdram(int board_type)
return actual_size; return actual_size;
} }
void board_init_info(void) int board_early_init_r(void)
{ {
gd->bd->bi_phy_id[0] = 0x10; gd->bd->bi_phy_id[0] = 0x10;
gd->bd->bi_phy_id[1] = 0x11; gd->bd->bi_phy_id[1] = 0x11;
return 0;
} }
extern int macb_eth_initialize(int id, void *regs, unsigned int phy_addr); extern int macb_eth_initialize(int id, void *regs, unsigned int phy_addr);
......
...@@ -81,9 +81,10 @@ phys_size_t initdram(int board_type) ...@@ -81,9 +81,10 @@ phys_size_t initdram(int board_type)
return actual_size; return actual_size;
} }
void board_init_info(void) int board_early_init_r(void)
{ {
gd->bd->bi_phy_id[0] = 0x01; gd->bd->bi_phy_id[0] = 0x01;
return 0;
} }
#if defined(CONFIG_MACB) && defined(CONFIG_CMD_NET) #if defined(CONFIG_MACB) && defined(CONFIG_CMD_NET)
......
...@@ -124,10 +124,11 @@ phys_size_t initdram(int board_type) ...@@ -124,10 +124,11 @@ phys_size_t initdram(int board_type)
return actual_size; return actual_size;
} }
void board_init_info(void) int board_early_init_r(void)
{ {
gd->bd->bi_phy_id[0] = 0x01; gd->bd->bi_phy_id[0] = 0x01;
gd->bd->bi_phy_id[1] = 0x03; gd->bd->bi_phy_id[1] = 0x03;
return 0;
} }
/* SPI chip select control */ /* SPI chip select control */
......
...@@ -95,9 +95,10 @@ phys_size_t initdram(int board_type) ...@@ -95,9 +95,10 @@ phys_size_t initdram(int board_type)
return actual_size; return actual_size;
} }
void board_init_info(void) int board_early_init_r(void)
{ {
gd->bd->bi_phy_id[0] = 0x01; gd->bd->bi_phy_id[0] = 0x01;
return 0;
} }
int board_postclk_init(void) int board_postclk_init(void)
......
...@@ -26,6 +26,5 @@ ...@@ -26,6 +26,5 @@
extern int cpu_init(void); extern int cpu_init(void);
extern int timer_init(void); extern int timer_init(void);
extern void board_init_info(void);
#endif /* __ASM_AVR32_INITCALLS_H__ */ #endif /* __ASM_AVR32_INITCALLS_H__ */
...@@ -53,6 +53,7 @@ static int __do_nothing(void) ...@@ -53,6 +53,7 @@ static int __do_nothing(void)
return 0; return 0;
} }
int board_postclk_init(void) __attribute__((weak, alias("__do_nothing"))); int board_postclk_init(void) __attribute__((weak, alias("__do_nothing")));
int board_early_init_r(void) __attribute__((weak, alias("__do_nothing")));
/* The malloc area is right below the monitor image in RAM */ /* The malloc area is right below the monitor image in RAM */
static void mem_malloc_init(void) static void mem_malloc_init(void)
...@@ -282,6 +283,8 @@ void board_init_r(gd_t *new_gd, ulong dest_addr) ...@@ -282,6 +283,8 @@ void board_init_r(gd_t *new_gd, ulong dest_addr)
gd->flags |= GD_FLG_RELOC; gd->flags |= GD_FLG_RELOC;
gd->reloc_off = dest_addr - CFG_MONITOR_BASE; gd->reloc_off = dest_addr - CFG_MONITOR_BASE;
board_early_init_r();
monitor_flash_len = _edata - _text; monitor_flash_len = _edata - _text;
/* /*
...@@ -318,7 +321,6 @@ void board_init_r(gd_t *new_gd, ulong dest_addr) ...@@ -318,7 +321,6 @@ void board_init_r(gd_t *new_gd, ulong dest_addr)
mem_malloc_init(); mem_malloc_init();
malloc_bin_reloc(); malloc_bin_reloc();
dma_alloc_init(); dma_alloc_init();
board_init_info();
enable_interrupts(); enable_interrupts();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment