[U-Boot] [PATCH] powerpc/86xx: Increase boot map size to 256 MiB
Scott Wood
oss at buserror.net
Wed Jul 20 00:51:55 CEST 2016
This is what Linux maps on classic PPC during boot, and modern kernel
images don't fit within the current 8 MiB uncompressed limit.
Adjust image load addresses to be above this limit to avoid conflicts.
Signed-off-by: Scott Wood <oss at buserror.net>
---
include/configs/MPC8610HPCD.h | 13 +++++++------
include/configs/MPC8641HPCN.h | 9 +++++----
2 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/include/configs/MPC8610HPCD.h b/include/configs/MPC8610HPCD.h
index f6d45a9..a19f4ab 100644
--- a/include/configs/MPC8610HPCD.h
+++ b/include/configs/MPC8610HPCD.h
@@ -477,7 +477,8 @@
* have to be in the first 8 MB of memory, since this is
* the maximum mapped by the Linux kernel during initialization.
*/
-#define CONFIG_SYS_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux*/
+#define CONFIG_SYS_BOOTMAPSZ (256 << 20) /* Initial Memory map for Linux*/
+#define CONFIG_SYS_BOOTM_LEN (256 << 20) /* Increase max gunzip size */
#if defined(CONFIG_CMD_KGDB)
#define CONFIG_KGDB_BAUDRATE 230400 /* speed to run kgdb serial port */
@@ -498,7 +499,7 @@
#define CONFIG_NETMASK 255.255.255.0
/* default location for tftp and bootm */
-#define CONFIG_LOADADDR 1000000
+#define CONFIG_LOADADDR 0x10000000
#define CONFIG_BOOTDELAY 10 /* -1 disables auto-boot */
#undef CONFIG_BOOTARGS /* the boot command will set bootargs */
@@ -567,9 +568,9 @@
"cmp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) \
" $filesize\0" \
"consoledev=ttyS0\0" \
-"ramdiskaddr=2000000\0" \
+"ramdiskaddr=0x18000000\0" \
"ramdiskfile=8610hpcd/ramdisk.uboot\0" \
-"fdtaddr=c00000\0" \
+"fdtaddr=0x17c00000\0" \
"fdtfile=8610hpcd/mpc8610_hpcd.dtb\0" \
"bdev=sda3\0" \
"en-wd=mw.b f8100010 0x08; echo -expect:- 08; md.b f8100010 1\0" \
@@ -605,9 +606,9 @@
"netdev=eth0\0" \
"uboot=" __stringify(CONFIG_UBOOTPATH) "\0" \
"consoledev=ttyS0\0" \
- "ramdiskaddr=2000000\0" \
+ "ramdiskaddr=0x18000000\0" \
"ramdiskfile=8610hpcd/ramdisk.uboot\0" \
- "fdtaddr=c00000\0" \
+ "fdtaddr=0x17c00000\0" \
"fdtfile=8610hpcd/mpc8610_hpcd.dtb\0" \
"bdev=sda3\0"
#endif
diff --git a/include/configs/MPC8641HPCN.h b/include/configs/MPC8641HPCN.h
index 9b2623c..756bb29 100644
--- a/include/configs/MPC8641HPCN.h
+++ b/include/configs/MPC8641HPCN.h
@@ -637,7 +637,8 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
* have to be in the first 8 MB of memory, since this is
* the maximum mapped by the Linux kernel during initialization.
*/
-#define CONFIG_SYS_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux*/
+#define CONFIG_SYS_BOOTMAPSZ (256 << 20) /* Initial Memory map for Linux*/
+#define CONFIG_SYS_BOOTM_LEN (256 << 20) /* Increase max gunzip size */
#if defined(CONFIG_CMD_KGDB)
#define CONFIG_KGDB_BAUDRATE 230400 /* speed to run kgdb serial port */
@@ -664,7 +665,7 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
#define CONFIG_NETMASK 255.255.255.0
/* default location for tftp and bootm */
-#define CONFIG_LOADADDR 1000000
+#define CONFIG_LOADADDR 0x10000000
#define CONFIG_BOOTDELAY 10 /* -1 disables auto-boot */
#undef CONFIG_BOOTARGS /* the boot command will set bootargs */
@@ -686,9 +687,9 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
"cmp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) \
" $filesize\0" \
"consoledev=ttyS0\0" \
- "ramdiskaddr=2000000\0" \
+ "ramdiskaddr=0x18000000\0" \
"ramdiskfile=your.ramdisk.u-boot\0" \
- "fdtaddr=c00000\0" \
+ "fdtaddr=0x17c00000\0" \
"fdtfile=mpc8641_hpcn.dtb\0" \
"en-wd=mw.b ffdf0010 0x08; echo -expect:- 08; md.b ffdf0010 1\0" \
"dis-wd=mw.b ffdf0010 0x00; echo -expect:- 00; md.b ffdf0010 1\0" \
--
2.7.4
More information about the U-Boot
mailing list