Move board specific function to board_init function in board/ folder Remove externs from generic board.c Use board_init_f function in board.c file. Signed-off-by: Michal Simek <monstr@monstr.eu> Acked-by: Stephan Linz <linz@li-pro.net>
@ -149,7 +149,7 @@ clear_bss:
cmp r6, r5, r4 /* check if we have reach the end */
bnei r6, 2b
3: /* jumping to board_init */
brai board_init
brai board_init_f
1: bri 1b
/*
@ -28,4 +28,7 @@
extern char __end[];
extern char __text_start[];
/* Microblaze board initialization function */
void board_init(void);
#endif /* __ASM_MICROBLAZE_PROCESSOR_H */
@ -39,13 +39,6 @@
DECLARE_GLOBAL_DATA_PTR;
#ifdef CONFIG_SYS_GPIO_0
extern int gpio_init (void);
#endif
#ifdef CONFIG_SYS_FSL_2
extern void fsl_init2 (void);
* All attempts to come up with a "common" initialization sequence
* that works for all boards and architectures failed: some of the
@ -67,20 +60,14 @@ init_fnc_t *init_sequence[] = {
serial_init,
console_init_f,
gpio_init,
interrupts_init,
timer_init,
fsl_init2,
NULL,
};
unsigned long monitor_flash_len;
void board_init (void)
void board_init_f(ulong not_used)
{
bd_t *bd;
init_fnc_t **init_fnc_ptr;
@ -189,6 +176,8 @@ void board_init (void)
/* Initialize the console (after the relocation and devices init) */
console_init_r();
board_init();
/* Initialize from environment */
load_addr = getenv_ulong("loadaddr", 16, load_addr);
@ -28,6 +28,7 @@
#include <common.h>
#include <config.h>
#include <netdev.h>
#include <asm/processor.h>
#include <asm/microblaze_intc.h>
#include <asm/asm.h>
@ -69,6 +70,14 @@ int fsl_init2 (void) {
}
void board_init(void)
gpio_init();
fsl_init2();
int board_eth_init(bd_t *bis)
int ret = 0;