From d6f8771239b15e8a68b38fcde96977db212887bd Mon Sep 17 00:00:00 2001 From: Patrick Delaunay Date: Tue, 13 Mar 2018 13:57:00 +0100 Subject: [PATCH] common: move board_f.c prototypes in init.h Move prototypes for function used in common/board_f.c from common.h to init.h Remove weak for arch_reserve_stacks in prototype (checkpatch issue) Signed-off-by: Patrick Delaunay --- common/board_f.c | 2 +- include/common.h | 71 +++--------------------------------------------- include/init.h | 66 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 71 insertions(+), 68 deletions(-) diff --git a/common/board_f.c b/common/board_f.c index c6bc53e1bf..4df52f1eb5 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -489,7 +489,7 @@ static int reserve_bootstage(void) return 0; } -int arch_reserve_stacks(void) +__weak int arch_reserve_stacks(void) { return 0; } diff --git a/include/common.h b/include/common.h index 9ff11adf26..53b82a0d9c 100644 --- a/include/common.h +++ b/include/common.h @@ -62,34 +62,16 @@ typedef void (interrupt_handler_t)(void *); #define TOTAL_MALLOC_LEN CONFIG_SYS_MALLOC_LEN #endif -/* startup functions */ +/* startup functions, used in: + * common/board_f.c + */ #include /* * Function Prototypes */ -int dram_init(void); - -/** - * dram_init_banksize() - Set up DRAM bank sizes - * - * This can be implemented by boards to set up the DRAM bank information in - * gd->bd->bi_dram(). It is called just before relocation, after dram_init() - * is called. - * - * If this is not provided, a default implementation will try to set up a - * single bank. It will do this if CONFIG_NR_DRAM_BANKS and - * CONFIG_SYS_SDRAM_BASE are set. The bank will have a start address of - * CONFIG_SYS_SDRAM_BASE and the size will be determined by a call to - * get_effective_memsize(). - * - * @return 0 if OK, -ve on error - */ -int dram_init_banksize(void); - void hang (void) __attribute__ ((noreturn)); -int timer_init(void); int cpu_init(void); #include @@ -113,7 +95,6 @@ int run_command_repeatable(const char *cmd, int flag); int run_command_list(const char *cmd, int len, int flag); /* arch/$(ARCH)/lib/board.c */ -void board_init_f(ulong); void board_init_r(gd_t *, ulong) __attribute__ ((noreturn)); /** @@ -160,48 +141,10 @@ int mac_read_from_eeprom(void); extern u8 __dtb_dt_begin[]; /* embedded device tree blob */ extern u8 __dtb_dt_spl_begin[]; /* embedded device tree blob for SPL/TPL */ int set_cpu_clk_info(void); -int print_cpuinfo(void); +int mdm_init(void); int update_flash_size(int flash_size); int arch_early_init_r(void); -/** - * arch_fsp_init() - perform firmware support package init - * - * Where U-Boot relies on binary blobs to handle part of the system init, this - * function can be used to set up the blobs. This is used on some Intel - * platforms. - */ -int arch_fsp_init(void); - -/** - * arch_cpu_init_dm() - init CPU after driver model is available - * - * This is called immediately after driver model is available before - * relocation. This is similar to arch_cpu_init() but is able to reference - * devices - * - * @return 0 if OK, -ve on error - */ -int arch_cpu_init_dm(void); - -/** - * Reserve all necessary stacks - * - * This is used in generic board init sequence in common/board_f.c. Each - * architecture could provide this function to tailor the required stacks. - * - * On entry gd->start_addr_sp is pointing to the suggested top of the stack. - * The callee ensures gd->start_add_sp is 16-byte aligned, so architectures - * require only this can leave it untouched. - * - * On exit gd->start_addr_sp and gd->irq_sp should be set to the respective - * positions of the stack. The stack pointer(s) will be set to this later. - * gd->irq_sp is only required, if the architecture needs it. - * - * @return 0 if no error - */ -__weak int arch_reserve_stacks(void); - /** * Show the DRAM size in a board-specific way * @@ -221,7 +164,6 @@ void board_show_dram(phys_size_t size); */ int arch_fixup_fdt(void *blob); -int reserve_mmu(void); /* common/flash.c */ void flash_perror (int); @@ -351,11 +293,6 @@ int get_env_id (void); void pci_init (void); void pci_init_board(void); -#if defined(CONFIG_DTB_RESELECT) -int embedded_dtb_select(void); -#endif - -int misc_init_f (void); int misc_init_r (void); #if defined(CONFIG_VID) int init_func_vid(void); diff --git a/include/init.h b/include/init.h index 324fbe0475..f57a438986 100644 --- a/include/init.h +++ b/include/init.h @@ -18,6 +18,7 @@ */ /* common/board_f.c */ +void board_init_f(ulong dummy); /** * arch_cpu_init() - basic cpu-dependent setup for an architecture @@ -31,6 +32,17 @@ */ int arch_cpu_init(void); +/** + * arch_cpu_init_dm() - init CPU after driver model is available + * + * This is called immediately after driver model is available before + * relocation. This is similar to arch_cpu_init() but is able to reference + * devices + * + * @return 0 if OK, -ve on error + */ +int arch_cpu_init_dm(void); + /** * mach_cpu_init() - SoC/machine dependent CPU setup * @@ -43,6 +55,60 @@ int arch_cpu_init(void); */ int mach_cpu_init(void); +/** + * arch_fsp_init() - perform firmware support package init + * + * Where U-Boot relies on binary blobs to handle part of the system init, this + * function can be used to set up the blobs. This is used on some Intel + * platforms. + */ +int arch_fsp_init(void); + +int dram_init(void); + +/** + * dram_init_banksize() - Set up DRAM bank sizes + * + * This can be implemented by boards to set up the DRAM bank information in + * gd->bd->bi_dram(). It is called just before relocation, after dram_init() + * is called. + * + * If this is not provided, a default implementation will try to set up a + * single bank. It will do this if CONFIG_NR_DRAM_BANKS and + * CONFIG_SYS_SDRAM_BASE are set. The bank will have a start address of + * CONFIG_SYS_SDRAM_BASE and the size will be determined by a call to + * get_effective_memsize(). + * + * @return 0 if OK, -ve on error + */ +int dram_init_banksize(void); + +/** + * Reserve all necessary stacks + * + * This is used in generic board init sequence in common/board_f.c. Each + * architecture could provide this function to tailor the required stacks. + * + * On entry gd->start_addr_sp is pointing to the suggested top of the stack. + * The callee ensures gd->start_add_sp is 16-byte aligned, so architectures + * require only this can leave it untouched. + * + * On exit gd->start_addr_sp and gd->irq_sp should be set to the respective + * positions of the stack. The stack pointer(s) will be set to this later. + * gd->irq_sp is only required, if the architecture needs it. + * + * @return 0 if no error + */ +int arch_reserve_stacks(void); + +int print_cpuinfo(void); +int timer_init(void); +int reserve_mmu(void); +int misc_init_f(void); +#if defined(CONFIG_DTB_RESELECT) +int embedded_dtb_select(void); +#endif + /* common/board_r.c */ #endif /* __ASSEMBLY__ */ -- 2.25.1