MLK-15301 imx8/imx8m: Change kernel loading address to avoid overlap
authorYe Li <ye.li@nxp.com>
Thu, 29 Jun 2017 02:15:44 +0000 (21:15 -0500)
committerJason Liu <jason.hui.liu@nxp.com>
Thu, 2 Nov 2017 18:36:58 +0000 (02:36 +0800)
Currently, the space between kernel loading address and u-boot start address
is less than 512KB, smaller than u-boot size.  This is ok for normal booting,
because u-boot will relocate itself to higher memory address before loading the
kernel. But for mfgtool which pre-loads kernel and u-boot into memory, this causes overlap.

So need change the kernel loading address. Add 2MB offset to it. Because ARM64 kernel
has such requirement:
"arm64 requires the kernel image to placed TEXT_OFFSET bytes beyond a 2 MB aligned base“

Signed-off-by: Ye Li <ye.li@nxp.com>
Reviewed-by : Peng Fan <peng.fan@nxp.com>

include/configs/imx8mq_evk.h
include/configs/imx8qm_arm2.h
include/configs/imx8qxp_arm2.h

index 4ad0b7f..43182bb 100644 (file)
           "else booti ${loadaddr} - ${fdtaddr}; fi"
 
 /* Link Definitions */
-#define CONFIG_LOADADDR                        0x40080000
+#define CONFIG_LOADADDR                        0x40280000
 #define CONFIG_SYS_TEXT_BASE           0x40021000
 
 #define CONFIG_SYS_LOAD_ADDR           CONFIG_LOADADDR
index ce4fd8b..1acade8 100644 (file)
           "else booti ${loadaddr} - ${fdtaddr}; fi"
 
 /* Link Definitions */
-#define CONFIG_LOADADDR                        0x80080000
+#define CONFIG_LOADADDR                        0x80280000
 #define CONFIG_SYS_TEXT_BASE           0x80020000
 
 #define CONFIG_SYS_LOAD_ADDR           CONFIG_LOADADDR
index e3822f1..7dda308 100644 (file)
           "else booti ${loadaddr} - ${fdtaddr}; fi"
 
 /* Link Definitions */
-#define CONFIG_LOADADDR                        0x80080000
+#define CONFIG_LOADADDR                        0x80280000
 #define CONFIG_SYS_TEXT_BASE           0x80020000
 
 #define CONFIG_SYS_LOAD_ADDR           CONFIG_LOADADDR