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

Pali Rohár
2012-10-13T19:31:56Z

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(+)

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
+ */
+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")));
+
/* 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");
--
1.7.9.5