[U-Boot] [PATCH v3 7/8] ARM: mx6: Change the FDT loading address to avoid overlaping

Otavio Salvador otavio at ossystems.com.br
Mon Dec 16 23:44:04 CET 2013


This patch fixes allow for the DeviceTree and initrd relocation fixing
the boot of FSL 3.10.9-1.0.0-alpha kernel.

This changes following boards:

 - mx6sabreauto
 - mx6sabresd
 - wandboard
 - udoo
 - nitrogen6x
 - cgtqmx6eval

The reasoning, as explained by Hui Liu, is:

,----
| The FDT blob will be placed at DDR physical addr: 0x11000000. When Linux kernel
| Boot up, it will decompress the compressed kernel image and place the decompressed
| kernel image at the low end of the DDR memory and start running from it. If the
| decompressed kernel image is bigger for example than 16M, it may over written the
| fdt blob which u-boot loaded to the DDR memory @0x11000000 with fdt_addr=0x11000000
|
| To expand the fdt_addr from 0x11000000 to 0x18000000, which can avoid the override
| Since we will not likely have one kernel image larger than 128MB.
`----

Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
---
Changes in v3: None
Changes in v2:
- Change loadaddr to allow use with more than 1G of RAM

 include/configs/cgtqmx6eval.h     | 2 +-
 include/configs/mx6sabre_common.h | 2 +-
 include/configs/nitrogen6x.h      | 2 +-
 include/configs/udoo.h            | 2 +-
 include/configs/wandboard.h       | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/include/configs/cgtqmx6eval.h b/include/configs/cgtqmx6eval.h
index d5db8f5..29a023c 100644
--- a/include/configs/cgtqmx6eval.h
+++ b/include/configs/cgtqmx6eval.h
@@ -81,7 +81,7 @@
 	"console=ttymxc1\0" \
 	"fdt_high=0xffffffff\0" \
 	"initrd_high=0xffffffff\0" \
-	"fdt_addr=0x11000000\0" \
+	"fdt_addr=0x18000000\0" \
 	"boot_fdt=try\0" \
 	"mmcdev=1\0" \
 	"mmcpart=1\0" \
diff --git a/include/configs/mx6sabre_common.h b/include/configs/mx6sabre_common.h
index a214324..d6ebf83 100644
--- a/include/configs/mx6sabre_common.h
+++ b/include/configs/mx6sabre_common.h
@@ -116,7 +116,7 @@
 	"script=boot.scr\0" \
 	"uimage=uImage\0" \
 	"fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \
-	"fdt_addr=0x11000000\0" \
+	"fdt_addr=0x18000000\0" \
 	"boot_fdt=try\0" \
 	"ip_dyn=yes\0" \
 	"console=" CONFIG_CONSOLE_DEV "\0" \
diff --git a/include/configs/nitrogen6x.h b/include/configs/nitrogen6x.h
index 957dabe..41a6d71 100644
--- a/include/configs/nitrogen6x.h
+++ b/include/configs/nitrogen6x.h
@@ -179,7 +179,7 @@
 	"fdt_high=0xffffffff\0" \
 	"initrd_high=0xffffffff\0" \
 	"fdt_file=imx6q-sabrelite.dtb\0" \
-	"fdt_addr=0x11000000\0" \
+	"fdt_addr=0x18000000\0" \
 	"boot_fdt=try\0" \
 	"ip_dyn=yes\0" \
 	"mmcdev=0\0" \
diff --git a/include/configs/udoo.h b/include/configs/udoo.h
index b9a493c..c187361 100644
--- a/include/configs/udoo.h
+++ b/include/configs/udoo.h
@@ -93,7 +93,7 @@
 	"fdt_high=0xffffffff\0" \
 	"initrd_high=0xffffffff\0" \
 	"fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \
-	"fdt_addr=0x11000000\0" \
+	"fdt_addr=0x18000000\0" \
 	"boot_fdt=try\0" \
 	"ip_dyn=yes\0" \
 	"mmcdev=0\0" \
diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h
index 85f3c16..5252705 100644
--- a/include/configs/wandboard.h
+++ b/include/configs/wandboard.h
@@ -120,7 +120,7 @@
 	"fdt_high=0xffffffff\0" \
 	"initrd_high=0xffffffff\0" \
 	"fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \
-	"fdt_addr=0x11000000\0" \
+	"fdt_addr=0x18000000\0" \
 	"boot_fdt=try\0" \
 	"ip_dyn=yes\0" \
 	"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
-- 
1.8.4.3



More information about the U-Boot mailing list