[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 58/79] ppc/e500: drop RAM size fixup
From: |
Igor Mammedov |
Subject: |
[PATCH v6 58/79] ppc/e500: drop RAM size fixup |
Date: |
Wed, 19 Feb 2020 11:09:32 -0500 |
If user provided non-sense RAM size, board will complain and
continue running with max RAM size supported.
Also RAM is going to be allocated by generic code, so it won't be
possible for board to fix things up for user.
Make it error message and exit to force user fix CLI,
instead of accepting non-sense CLI values.
While at it, replace usage of global ram_size with
machine->ram_size
Signed-off-by: Igor Mammedov <address@hidden>
Acked-by: David Gibson <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
---
v2:
* fix format string cousing build failure on 32-bit host
(Philippe Mathieu-Daudé <address@hidden>)
---
hw/ppc/e500.c | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c
index 886442e54f..960024b611 100644
--- a/hw/ppc/e500.c
+++ b/hw/ppc/e500.c
@@ -906,12 +906,14 @@ void ppce500_init(MachineState *machine)
env = firstenv;
- /* Fixup Memory size on a alignment boundary */
- ram_size &= ~(RAM_SIZES_ALIGN - 1);
- machine->ram_size = ram_size;
+ if (!QEMU_IS_ALIGNED(machine->ram_size, RAM_SIZES_ALIGN)) {
+ error_report("RAM size must be multiple of %" PRIu64, RAM_SIZES_ALIGN);
+ exit(EXIT_FAILURE);
+ }
/* Register Memory */
- memory_region_allocate_system_memory(ram, NULL, "mpc8544ds.ram", ram_size);
+ memory_region_allocate_system_memory(ram, NULL, "mpc8544ds.ram",
+ machine->ram_size);
memory_region_add_subregion(address_space_mem, 0, ram);
dev = qdev_create(NULL, "e500-ccsr");
@@ -1083,7 +1085,7 @@ void ppce500_init(MachineState *machine)
kernel_base = cur_base;
kernel_size = load_image_targphys(machine->kernel_filename,
cur_base,
- ram_size - cur_base);
+ machine->ram_size - cur_base);
if (kernel_size < 0) {
error_report("could not load kernel '%s'",
machine->kernel_filename);
@@ -1097,7 +1099,7 @@ void ppce500_init(MachineState *machine)
if (machine->initrd_filename) {
initrd_base = (cur_base + INITRD_LOAD_PAD) & ~INITRD_PAD_MASK;
initrd_size = load_image_targphys(machine->initrd_filename,
initrd_base,
- ram_size - initrd_base);
+ machine->ram_size - initrd_base);
if (initrd_size < 0) {
error_report("could not load initial ram disk '%s'",
@@ -1115,7 +1117,7 @@ void ppce500_init(MachineState *machine)
* ensures enough space between kernel and initrd.
*/
dt_base = (loadaddr + payload_size + DTC_LOAD_PAD) & ~DTC_PAD_MASK;
- if (dt_base + DTB_MAX_SIZE > ram_size) {
+ if (dt_base + DTB_MAX_SIZE > machine->ram_size) {
error_report("not enough memory for device tree");
exit(1);
}
--
2.18.1
- [PATCH v6 50/79] mips/boston: use memdev for RAM, (continued)
- [PATCH v6 50/79] mips/boston: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 49/79] m68k/next-cube: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 53/79] mips/mips_jazz: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 51/79] mips/mips_fulong2e: drop RAM size fixup, Igor Mammedov, 2020/02/19
- [PATCH v6 55/79] mips/mips_malta: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 56/79] mips/mips_mipssim: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 54/79] mips/mips_jazz: add max ram size check, Igor Mammedov, 2020/02/19
- [PATCH v6 59/79] ppc/e500: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 61/79] ppc/mac_oldworld: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 57/79] mips/mips_r4k: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 58/79] ppc/e500: drop RAM size fixup,
Igor Mammedov <=
- [PATCH v6 52/79] mips/mips_fulong2e: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 63/79] ppc/ppc405_boards: add RAM size checks, Igor Mammedov, 2020/02/19
- [PATCH v6 67/79] ppc/spapr: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 65/79] ppc/{ppc440_bamboo, sam460ex}: drop RAM size fixup, Igor Mammedov, 2020/02/19
- [PATCH v6 66/79] ppc/{ppc440_bamboo, sam460ex}: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 60/79] ppc/mac_newworld: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 69/79] sparc/leon3: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 68/79] ppc/virtex_ml507: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 71/79] sparc/niagara: use memdev for RAM, Igor Mammedov, 2020/02/19
- [PATCH v6 62/79] ppc/pnv: use memdev for RAM, Igor Mammedov, 2020/02/19