path: root/arch/arm/lib
diff options
authorSimon Glass <sjg@chromium.org>2011-10-24 19:15:34 +0000
committerWolfgang Denk <wd@denx.de>2011-10-26 21:40:16 +0200
commiteea63e05d0b7f54e7aa39725015483972c71cb3c (patch)
tree6efe7cc0f7dc4eea53b04fc1ac02e35b552af8d4 /arch/arm/lib
parentf5437ad141e13ff03dccb24707e8100d2b0295fd (diff)
fdt: ARM: Add fdtcontroladdr to set device tree address in environment
This adds support for a new environment variable called 'fdtcontroladdr'. If defined, the hex address is used as the address of the control fdt for U-Boot. Note: I have not changed CONFIG_PRAM section as I already have an outstanding patch on that. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/arm/lib')
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c
index bd6d4e319..bae289237 100644
--- a/arch/arm/lib/board.c
+++ b/arch/arm/lib/board.c
@@ -286,6 +286,9 @@ void board_init_f(ulong bootflag)
/* FDT is at end of image */
gd->fdt_blob = (void *)(_end_ofs + _TEXT_BASE);
+ /* Allow the early environment to override the fdt address */
+ gd->fdt_blob = (void *)getenv_ulong("fdtcontroladdr", 16,
+ (uintptr_t)gd->fdt_blob);
for (init_fnc_ptr = init_sequence; *init_fnc_ptr; ++init_fnc_ptr) {
if ((*init_fnc_ptr)() != 0) {