diff options
author | Simon Glass <sjg@chromium.org> | 2011-05-10 11:59:04 -0700 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2011-08-24 10:01:31 -0700 |
commit | 20d8fe039fa7732aa71f1360adadfb6753687f8d (patch) | |
tree | 0d3c689503990f113eef69603cd30d9f78736b5e /arch/arm/lib | |
parent | fba3cfb94552efe566dbb2b1e595ec236c91b168 (diff) |
fdt: Add support for embedded device tree (CONFIG_OF_EMBED)
This new option allows U-Boot to embed a binary device tree into its image
to allow run-time control of peripherals. This device tree is for U-Boot's
own use and is not necessarily the same one as is passed to the kernel.
BUG=chromium-os:11623
TEST=build and boot U-Boot on Seaboard
Change-Id: I024d01079a44395e122a8b53e3901ba9a007dc5a
Reviewed-on: http://gerrit.chromium.org/gerrit/621
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/arm/lib')
-rw-r--r-- | arch/arm/lib/board.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c index c89fdd0fc17..24f4f0ccd09 100644 --- a/arch/arm/lib/board.c +++ b/arch/arm/lib/board.c @@ -270,6 +270,9 @@ void board_init_f (ulong bootflag) init_fnc_t **init_fnc_ptr; gd_t *id; ulong addr, addr_sp; +#ifdef CONFIG_OF_EMBED + extern u8 _binary_dt_dtb_start[]; +#endif #ifdef CONFIG_TEGRA2 /* @@ -290,6 +293,10 @@ void board_init_f (ulong bootflag) memset ((void*)gd, 0, sizeof (gd_t)); gd->mon_len = _bss_end_ofs; +#ifdef CONFIG_OF_EMBED + /* Get a pointer to the FDT */ + gd->blob = _binary_dt_dtb_start; +#endif for (init_fnc_ptr = init_sequence; *init_fnc_ptr; ++init_fnc_ptr) { if ((*init_fnc_ptr)() != 0) { |