diff options
author | Simon Glass <sjg@chromium.org> | 2013-02-28 19:26:15 +0000 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2013-03-04 15:57:47 -0800 |
commit | f697d528caba0c30382b7269fd36f1111e51810d (patch) | |
tree | d2dceffbd191c1e1a3481c06a32597af9d580a98 /arch/x86/include | |
parent | f82d15ead1badc329c4c804f0405e32289f46dd8 (diff) | |
download | u-boot-imx-f697d528caba0c30382b7269fd36f1111e51810d.zip u-boot-imx-f697d528caba0c30382b7269fd36f1111e51810d.tar.gz u-boot-imx-f697d528caba0c30382b7269fd36f1111e51810d.tar.bz2 |
x86: Support relocation of FDT on start-up
With CONFIG_OF_CONTROL we may have an FDT in the BSS region. Relocate
it up with the rest of U-Boot to keep the rest of memory free.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/x86/include')
-rw-r--r-- | arch/x86/include/asm/global_data.h | 1 | ||||
-rw-r--r-- | arch/x86/include/asm/init_helpers.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/relocate.h | 1 |
3 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/include/asm/global_data.h b/arch/x86/include/asm/global_data.h index 2f84abd..4fdb080 100644 --- a/arch/x86/include/asm/global_data.h +++ b/arch/x86/include/asm/global_data.h @@ -32,6 +32,7 @@ struct arch_global_data { uint64_t tsc_base; /* Initial value returned by rdtsc() */ uint32_t tsc_base_kclocks; /* Initial tsc as a kclocks value */ uint32_t tsc_prev; /* For show_boot_progress() */ + void *new_fdt; /* Relocated FDT */ }; #endif diff --git a/arch/x86/include/asm/init_helpers.h b/arch/x86/include/asm/init_helpers.h index 2f437e0..d018b29 100644 --- a/arch/x86/include/asm/init_helpers.h +++ b/arch/x86/include/asm/init_helpers.h @@ -38,5 +38,7 @@ int flash_init_r(void); int status_led_set_r(void); int set_load_addr_r(void); int init_func_spi(void); +int find_fdt(void); +int prepare_fdt(void); #endif /* !_INIT_HELPERS_H_ */ diff --git a/arch/x86/include/asm/relocate.h b/arch/x86/include/asm/relocate.h index 33129ef..d371c9d 100644 --- a/arch/x86/include/asm/relocate.h +++ b/arch/x86/include/asm/relocate.h @@ -27,6 +27,7 @@ #include <common.h> int copy_uboot_to_ram(void); +int copy_fdt_to_ram(void); int clear_bss(void); int do_elf_reloc_fixups(void); |