[U-Boot] [PATCH] mpc83xx: increase BOOTMAPSZ to 16MB

As space expands, so does the software. Today the kernel with built-in initramfs image is likely to not fit into 8MB limit. It feels safe to increase BOOTMAPSZ to 16MB, since the Linux actually maps 16MB on 6xx PPCs (two BATs, 8MB each).
Signed-off-by: Anton Vorontsov avorontsov@ru.mvista.com ---
p.s. The patch for the whole tree is quite big, so let's start with 83xx.
pp.s. Maybe we could fector out these defines into include/configs/ppc6xx-common.h?
include/configs/MPC8313ERDB.h | 4 ++-- include/configs/MPC8315ERDB.h | 4 ++-- include/configs/MPC8323ERDB.h | 4 ++-- include/configs/MPC832XEMDS.h | 4 ++-- include/configs/MPC8349EMDS.h | 4 ++-- include/configs/MPC8349ITX.h | 4 ++-- include/configs/MPC8360EMDS.h | 4 ++-- include/configs/MPC8360ERDK.h | 4 ++-- include/configs/MPC837XEMDS.h | 4 ++-- include/configs/MPC837XERDB.h | 4 ++-- include/configs/MVBLM7.h | 4 ++-- include/configs/TQM834x.h | 4 ++-- include/configs/sbc8349.h | 4 ++-- 13 files changed, 26 insertions(+), 26 deletions(-)
diff --git a/include/configs/MPC8313ERDB.h b/include/configs/MPC8313ERDB.h index fc3fa13..95b7503 100644 --- a/include/configs/MPC8313ERDB.h +++ b/include/configs/MPC8313ERDB.h @@ -453,10 +453,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux*/
#define CONFIG_SYS_RCWH_PCIHOST 0x80000000 /* PCIHOST */
diff --git a/include/configs/MPC8315ERDB.h b/include/configs/MPC8315ERDB.h index 1225270..ab7afed 100644 --- a/include/configs/MPC8315ERDB.h +++ b/include/configs/MPC8315ERDB.h @@ -440,10 +440,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux */
/* * Core HID Setup diff --git a/include/configs/MPC8323ERDB.h b/include/configs/MPC8323ERDB.h index c6ac91a..d1913ff 100644 --- a/include/configs/MPC8323ERDB.h +++ b/include/configs/MPC8323ERDB.h @@ -453,10 +453,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux */
/* * Core HID Setup diff --git a/include/configs/MPC832XEMDS.h b/include/configs/MPC832XEMDS.h index bc56e68..4f87749 100644 --- a/include/configs/MPC832XEMDS.h +++ b/include/configs/MPC832XEMDS.h @@ -468,10 +468,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux */
/* * Core HID Setup diff --git a/include/configs/MPC8349EMDS.h b/include/configs/MPC8349EMDS.h index bbdc211..7c73266 100644 --- a/include/configs/MPC8349EMDS.h +++ b/include/configs/MPC8349EMDS.h @@ -537,10 +537,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux*/
#define CONFIG_SYS_RCWH_PCIHOST 0x80000000 /* PCIHOST */
diff --git a/include/configs/MPC8349ITX.h b/include/configs/MPC8349ITX.h index f633f24..c0c7364 100644 --- a/include/configs/MPC8349ITX.h +++ b/include/configs/MPC8349ITX.h @@ -496,10 +496,10 @@ boards, we say we have two, but don't display a message if we find only one. */
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux*/
#define CONFIG_SYS_HRCW_LOW (\ HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ diff --git a/include/configs/MPC8360EMDS.h b/include/configs/MPC8360EMDS.h index fbd2457..13f3606 100644 --- a/include/configs/MPC8360EMDS.h +++ b/include/configs/MPC8360EMDS.h @@ -497,10 +497,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux */
/* * Core HID Setup diff --git a/include/configs/MPC8360ERDK.h b/include/configs/MPC8360ERDK.h index a4f2862..170dc2f 100644 --- a/include/configs/MPC8360ERDK.h +++ b/include/configs/MPC8360ERDK.h @@ -403,10 +403,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux */
/* * Core HID Setup diff --git a/include/configs/MPC837XEMDS.h b/include/configs/MPC837XEMDS.h index d49155f..3a04116 100644 --- a/include/configs/MPC837XEMDS.h +++ b/include/configs/MPC837XEMDS.h @@ -502,10 +502,10 @@ extern int board_pci_host_broken(void);
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux */
/* * Core HID Setup diff --git a/include/configs/MPC837XERDB.h b/include/configs/MPC837XERDB.h index f281c59..9dc89d3 100644 --- a/include/configs/MPC837XERDB.h +++ b/include/configs/MPC837XERDB.h @@ -509,10 +509,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux */
/* * Core HID Setup diff --git a/include/configs/MVBLM7.h b/include/configs/MVBLM7.h index bc2d825..07056e2 100644 --- a/include/configs/MVBLM7.h +++ b/include/configs/MVBLM7.h @@ -306,10 +306,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux*/
#define CONFIG_SYS_HRCW_LOW 0x0 #define CONFIG_SYS_HRCW_HIGH 0x0 diff --git a/include/configs/TQM834x.h b/include/configs/TQM834x.h index 2961a1b..d6165a6 100644 --- a/include/configs/TQM834x.h +++ b/include/configs/TQM834x.h @@ -373,10 +373,10 @@ extern int tqm834x_num_flash_banks;
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux*/
#define CONFIG_SYS_HRCW_LOW (\ HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ diff --git a/include/configs/sbc8349.h b/include/configs/sbc8349.h index 174149b..fd2ecae 100644 --- a/include/configs/sbc8349.h +++ b/include/configs/sbc8349.h @@ -483,10 +483,10 @@
/* * For booting Linux, the board info and command line data - * have to be in the first 8 MB of memory, since this is + * have to be in the first 16 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 (16 << 20) /* Initial Memory map for Linux*/
#define CONFIG_SYS_RCWH_PCIHOST 0x80000000 /* PCIHOST */

On Thu, 6 Nov 2008 16:31:26 +0300 Anton Vorontsov avorontsov@ru.mvista.com wrote:
As space expands, so does the software. Today the kernel with built-in initramfs image is likely to not fit into 8MB limit. It feels safe to increase BOOTMAPSZ to 16MB, since the Linux actually maps 16MB on 6xx PPCs (two BATs, 8MB each).
Signed-off-by: Anton Vorontsov avorontsov@ru.mvista.com
p.s. The patch for the whole tree is quite big, so let's start with 83xx.
ack, I'm ok with this operation starting in 83xx land, but it may be worth investigating whether it can be made a one-shot directly with WD, just as the CFG_ -> CONFIG_SYS_ switch just happened. dunno. If we don't hear from WD soon, I'll put this in mpc83xx's next branch.
pp.s. Maybe we could fector out these defines into include/configs/ppc6xx-common.h?
sure, but maybe that can wait until the base domain granularity becomes more accurately visible...I just took a look - I can't seem to find a single non-coldfire board that doesn't set BOOTMAPSZ to 8MB (coldfire boards set it to SDRAM_BASE + SDRAM_SIZE). Anyway, I it looks like a single patch might fit on this mailling list.
Kim

On Wed, Nov 12, 2008 at 03:57:13PM -0600, Kim Phillips wrote:
On Thu, 6 Nov 2008 16:31:26 +0300 Anton Vorontsov avorontsov@ru.mvista.com wrote:
As space expands, so does the software. Today the kernel with built-in initramfs image is likely to not fit into 8MB limit. It feels safe to increase BOOTMAPSZ to 16MB, since the Linux actually maps 16MB on 6xx PPCs (two BATs, 8MB each).
Signed-off-by: Anton Vorontsov avorontsov@ru.mvista.com
p.s. The patch for the whole tree is quite big, so let's start with 83xx.
ack,
Great, thanks.
I'm ok with this operation starting in 83xx land, but it may be worth investigating whether it can be made a one-shot directly with WD, just as the CFG_ -> CONFIG_SYS_ switch just happened. dunno. If we don't hear from WD soon, I'll put this in mpc83xx's next branch.
Please don't queue this patch yet. I'll send an updated version soon, that will also define CFG_BOOTM_LEN (so that bootm command will able to gunzip 16MB images).
pp.s. Maybe we could fector out these defines into include/configs/ppc6xx-common.h?
sure, but maybe that can wait until the base domain granularity becomes more accurately visible...
Ok, makes sense.
participants (2)
-
Anton Vorontsov
-
Kim Phillips