[U-Boot] [PATCH] mx6sabre_common: Allow booting a FSL 3.10 kernel

Fabio Estevam fabio.estevam at freescale.com
Mon Nov 25 16:54:38 CET 2013


Currently the booting of a 3.10 kernel fails, as explained by Jason Liu [1]:

"Let me explain it:
since we defined the fdt_high=0xffffffff at include/configs/mx6qsabre_common.h,
which means we disable the fdt re-allocation, which you can see when boot up:

## Flattened Device Tree blob at 11000000
   Booting using the fdt blob at 0x11000000
   Using Device Tree in place at 11000000, end 1800e37e

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.

o 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.

The other solution is to enable the FDT blob re-allocation by remove the
fdt_high=0xffffffff"

Use the second approach to enable the boot of a FSL 3.10 kernel.

[1] http://marc.info/?l=u-boot&m=138519609402384&w=2

Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
---
 include/configs/mx6sabre_common.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/include/configs/mx6sabre_common.h b/include/configs/mx6sabre_common.h
index 79d1f34..14db1c1 100644
--- a/include/configs/mx6sabre_common.h
+++ b/include/configs/mx6sabre_common.h
@@ -86,8 +86,6 @@
 	"boot_fdt=try\0" \
 	"ip_dyn=yes\0" \
 	"console=" CONFIG_CONSOLE_DEV "\0" \
-	"fdt_high=0xffffffff\0"	  \
-	"initrd_high=0xffffffff\0" \
 	"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
 	"mmcpart=1\0" \
 	"mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \
-- 
1.8.1.2




More information about the U-Boot mailing list