[U-Boot] [PATCH 2/3 V3] Make board_init_f under nand_boot.c a weak function
Scott Wood
scottwood at freescale.com
Tue Oct 26 21:07:06 CEST 2010
On Tue, 26 Oct 2010 23:27:44 +0530
Sughosh Ganu <urwithsughosh at gmail.com> wrote:
>
> Enable board_init_f to be overridden with a board
> specific function.
>
> Signed-off-by: Sughosh Ganu <urwithsughosh at gmail.com>
> ---
> Changes since V2:
> * Fix the checkpatch warnings
>
> nand_spl/nand_boot.c | 8 +++++---
> 1 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/nand_spl/nand_boot.c b/nand_spl/nand_boot.c
> index ccd0af2..01ff3e3 100644
> --- a/nand_spl/nand_boot.c
> +++ b/nand_spl/nand_boot.c
> @@ -222,11 +222,13 @@ static int nand_load(struct mtd_info *mtd, unsigned int offs,
> }
>
> #if defined(CONFIG_ARM) && !defined(CONFIG_SYS_ARM_WITHOUT_RELOC)
> -void board_init_f (ulong bootflag)
> +void __board_init_f(ulong bootflag)
> {
> - relocate_code (CONFIG_SYS_TEXT_BASE - TOTAL_MALLOC_LEN, NULL,
> - CONFIG_SYS_TEXT_BASE);
> + relocate_code(CONFIG_SYS_TEXT_BASE - TOTAL_MALLOC_LEN, NULL,
> + CONFIG_SYS_TEXT_BASE);
> }
> +void board_init_f(ulong bootflag)__attribute__((weak,
> + alias("__board_init_f")));
> #endif
>
> /*
ACK for now, but given space constraints we probably don't want to
carry around __board_init_f just to have it be overridden (will an
overridden weak alias allow the function to be optimized away by the
linker if function-sections/gc-sections is used?)
Eventually all boards should just provide their own board_init_f,
which could just consist of a call to a common board init helper
function. Or possibly a preprocessor define could be used to indicate
that the common function should be used.
-Scott
More information about the U-Boot
mailing list