[U-Boot] [PATCH v3 1/5] arm bootm: Allow to pass board specified atags

Marek Vasut
2012-10-13T23:43:25Z

Dear Pali Roh?r,

... missing commit message ...

> Signed-off-by: Pali Roh?r <pali.rohar@gmail.com>
> ---
> arch/arm/include/asm/setup.h | 5 +++++
> arch/arm/lib/bootm.c | 5 +++++
> 2 files changed, 10 insertions(+)

... missing changelog ...

> diff --git a/arch/arm/include/asm/setup.h b/arch/arm/include/asm/setup.h
> index 89df4dc..78a7fac 100644
> --- a/arch/arm/include/asm/setup.h
> +++ b/arch/arm/include/asm/setup.h
> @@ -267,3 +267,8 @@ struct meminfo {
> extern struct meminfo meminfo;
>
> #endif
> +
> +/*
> + * Board specified tags
> + */

What's this ?

> +void setup_board_tags(struct tag **in_params);
> diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c
> index a9070d5..c092bfa 100644
> --- a/arch/arm/lib/bootm.c
> +++ b/arch/arm/lib/bootm.c
> @@ -266,6 +266,10 @@ static int create_fdt(bootm_headers_t *images)
> }
> #endif
>
> +void __setup_board_tags(void) {}
> +void setup_board_tags(struct tag **in_params)
> + __attribute__((weak, alias("__setup_board_tags")));

__weak void setup...(...) {} works just fine. Include linux/compiler.h

> /* Subcommand: PREP */
> static void boot_prep_linux(bootm_headers_t *images)
> {
> @@ -307,6 +311,7 @@ static void boot_prep_linux(bootm_headers_t *images)
> setup_initrd_tag(gd->bd, images->rd_start,
> images->rd_end);
> #endif
> + setup_board_tags(&params);
> setup_end_tag(gd->bd);
> #else /* all tags */
> printf("FDT and ATAGS support not compiled in - hanging\n");

Best regards,
Marek Vasut