mirror of
https://github.com/Stichting-MINIX-Research-Foundation/u-boot.git
synced 2025-09-14 06:26:13 -04:00
microblaze: Clean microblaze initialization
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>
This commit is contained in:
parent
bcbb046bd5
commit
2380b8f529
@ -149,7 +149,7 @@ clear_bss:
|
|||||||
cmp r6, r5, r4 /* check if we have reach the end */
|
cmp r6, r5, r4 /* check if we have reach the end */
|
||||||
bnei r6, 2b
|
bnei r6, 2b
|
||||||
3: /* jumping to board_init */
|
3: /* jumping to board_init */
|
||||||
brai board_init
|
brai board_init_f
|
||||||
1: bri 1b
|
1: bri 1b
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -28,4 +28,7 @@
|
|||||||
extern char __end[];
|
extern char __end[];
|
||||||
extern char __text_start[];
|
extern char __text_start[];
|
||||||
|
|
||||||
|
/* Microblaze board initialization function */
|
||||||
|
void board_init(void);
|
||||||
|
|
||||||
#endif /* __ASM_MICROBLAZE_PROCESSOR_H */
|
#endif /* __ASM_MICROBLAZE_PROCESSOR_H */
|
||||||
|
@ -39,13 +39,6 @@
|
|||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
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);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* All attempts to come up with a "common" initialization sequence
|
* All attempts to come up with a "common" initialization sequence
|
||||||
* that works for all boards and architectures failed: some of the
|
* that works for all boards and architectures failed: some of the
|
||||||
@ -67,20 +60,14 @@ init_fnc_t *init_sequence[] = {
|
|||||||
#endif
|
#endif
|
||||||
serial_init,
|
serial_init,
|
||||||
console_init_f,
|
console_init_f,
|
||||||
#ifdef CONFIG_SYS_GPIO_0
|
|
||||||
gpio_init,
|
|
||||||
#endif
|
|
||||||
interrupts_init,
|
interrupts_init,
|
||||||
timer_init,
|
timer_init,
|
||||||
#ifdef CONFIG_SYS_FSL_2
|
|
||||||
fsl_init2,
|
|
||||||
#endif
|
|
||||||
NULL,
|
NULL,
|
||||||
};
|
};
|
||||||
|
|
||||||
unsigned long monitor_flash_len;
|
unsigned long monitor_flash_len;
|
||||||
|
|
||||||
void board_init (void)
|
void board_init_f(ulong not_used)
|
||||||
{
|
{
|
||||||
bd_t *bd;
|
bd_t *bd;
|
||||||
init_fnc_t **init_fnc_ptr;
|
init_fnc_t **init_fnc_ptr;
|
||||||
@ -189,6 +176,8 @@ void board_init (void)
|
|||||||
/* Initialize the console (after the relocation and devices init) */
|
/* Initialize the console (after the relocation and devices init) */
|
||||||
console_init_r();
|
console_init_r();
|
||||||
|
|
||||||
|
board_init();
|
||||||
|
|
||||||
/* Initialize from environment */
|
/* Initialize from environment */
|
||||||
load_addr = getenv_ulong("loadaddr", 16, load_addr);
|
load_addr = getenv_ulong("loadaddr", 16, load_addr);
|
||||||
|
|
||||||
|
@ -28,6 +28,7 @@
|
|||||||
#include <common.h>
|
#include <common.h>
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
#include <netdev.h>
|
#include <netdev.h>
|
||||||
|
#include <asm/processor.h>
|
||||||
#include <asm/microblaze_intc.h>
|
#include <asm/microblaze_intc.h>
|
||||||
#include <asm/asm.h>
|
#include <asm/asm.h>
|
||||||
|
|
||||||
@ -69,6 +70,14 @@ int fsl_init2 (void) {
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
void board_init(void)
|
||||||
|
{
|
||||||
|
gpio_init();
|
||||||
|
#ifdef CONFIG_SYS_FSL_2
|
||||||
|
fsl_init2();
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
int board_eth_init(bd_t *bis)
|
int board_eth_init(bd_t *bis)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user