summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@linaro.org>2011-03-28 09:59:01 +0000
committerGerald Van Baren <gvb@unssw.com>2011-04-25 21:11:21 -0400
commit55b0a39314562087143f439ecae57379b97db9aa (patch)
treed3879cdbabfd2386a30a261819e3d5d9b4c0c326 /arch
parentce6b27a874fe30e7126ae93c060277770ee85ced (diff)
downloadu-boot-imx-55b0a39314562087143f439ecae57379b97db9aa.zip
u-boot-imx-55b0a39314562087143f439ecae57379b97db9aa.tar.gz
u-boot-imx-55b0a39314562087143f439ecae57379b97db9aa.tar.bz2
Respect memreserve regions specified in the device tree
If a regions is reserved in the fdt, then it should not be used. Add the memreserve regions to the lmb so that u-boot doesn't use them to store the initrd. Signed-off-by: Grant Likely <grant.likely@linaro.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/lib/bootm.c2
-rw-r--r--arch/powerpc/lib/bootm.c4
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c
index aba13f4..802e833 100644
--- a/arch/arm/lib/bootm.c
+++ b/arch/arm/lib/bootm.c
@@ -187,6 +187,8 @@ static int bootm_linux_fdt(int machid, bootm_headers_t *images)
kernel_entry = (void (*)(int, int, void *))images->ep;
+ boot_fdt_add_mem_rsv_regions(lmb, *of_flat_tree);
+
rd_len = images->rd_end - images->rd_start;
ret = boot_ramdisk_high(lmb, images->rd_start, rd_len,
initrd_start, initrd_end);
diff --git a/arch/powerpc/lib/bootm.c b/arch/powerpc/lib/bootm.c
index 6be22c4..e01787d 100644
--- a/arch/powerpc/lib/bootm.c
+++ b/arch/powerpc/lib/bootm.c
@@ -239,6 +239,10 @@ static int boot_body_linux(bootm_headers_t *images)
int ret;
+#if defined(CONFIG_OF_LIBFDT)
+ boot_fdt_add_mem_rsv_regions(lmb, *of_flat_tree);
+#endif
+
/* allocate space and init command line */
ret = boot_cmdline_linux(images);
if (ret)