[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 12/30] hw/arm/raspi: Use a unique raspi_machine_class_init() m
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH v2 12/30] hw/arm/raspi: Use a unique raspi_machine_class_init() method |
Date: |
Thu, 6 Feb 2020 02:17:38 +0100 |
With the exception of the ignore_memory_transaction_failures
flag set for the raspi2, both machine_class_init() methods
are now identical. Merge them to keep a unique method.
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
hw/arm/raspi.c | 31 ++++++-------------------------
1 file changed, 6 insertions(+), 25 deletions(-)
diff --git a/hw/arm/raspi.c b/hw/arm/raspi.c
index a104393cb2..8fe07db47a 100644
--- a/hw/arm/raspi.c
+++ b/hw/arm/raspi.c
@@ -293,7 +293,7 @@ static void raspi_machine_init(MachineState *machine)
setup_boot(machine, version, machine->ram_size - vcram_size);
}
-static void raspi2_machine_class_init(ObjectClass *oc, void *data)
+static void raspi_machine_class_init(ObjectClass *oc, void *data)
{
MachineClass *mc = MACHINE_CLASS(oc);
RaspiMachineClass *rmc = RASPI_MACHINE_CLASS(oc);
@@ -310,41 +310,22 @@ static void raspi2_machine_class_init(ObjectClass *oc,
void *data)
mc->min_cpus = BCM283X_NCPUS;
mc->default_cpus = BCM283X_NCPUS;
mc->default_ram_size = board_ram_size(board_rev);
- mc->ignore_memory_transaction_failures = true;
+ if (board_version(board_rev) == 2) {
+ mc->ignore_memory_transaction_failures = true;
+ }
};
-#ifdef TARGET_AARCH64
-static void raspi3_machine_class_init(ObjectClass *oc, void *data)
-{
- MachineClass *mc = MACHINE_CLASS(oc);
- RaspiMachineClass *rmc = RASPI_MACHINE_CLASS(oc);
- uint32_t board_rev = (uint32_t)(uintptr_t)data;
-
- rmc->board_rev = board_rev;
- mc->desc = g_strdup_printf("Raspberry Pi %s", board_type(board_rev));
- mc->init = raspi_machine_init;
- mc->block_default_type = IF_SD;
- mc->no_parallel = 1;
- mc->no_floppy = 1;
- mc->no_cdrom = 1;
- mc->max_cpus = BCM283X_NCPUS;
- mc->min_cpus = BCM283X_NCPUS;
- mc->default_cpus = BCM283X_NCPUS;
- mc->default_ram_size = board_ram_size(board_rev);
-}
-#endif
-
static const TypeInfo raspi_machine_types[] = {
{
.name = MACHINE_TYPE_NAME("raspi2"),
.parent = TYPE_RASPI_MACHINE,
- .class_init = raspi2_machine_class_init,
+ .class_init = raspi_machine_class_init,
.class_data = (void *)0xa21041,
#ifdef TARGET_AARCH64
}, {
.name = MACHINE_TYPE_NAME("raspi3"),
.parent = TYPE_RASPI_MACHINE,
- .class_init = raspi3_machine_class_init,
+ .class_init = raspi_machine_class_init,
.class_data = (void *)0xa02082,
#endif
}, {
--
2.21.1
- [PATCH v2 04/30] hw/arm/raspi: Extract the RAM size from the board revision, (continued)
- [PATCH v2 04/30] hw/arm/raspi: Extract the RAM size from the board revision, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 05/30] hw/arm/raspi: Extract the processor type from the board revision, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 06/30] hw/arm/raspi: Trivial code movement, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 08/30] hw/arm/raspi: Make board_rev a field of RaspiMachineClass, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 07/30] hw/arm/raspi: Make machines children of abstract RaspiMachineClass, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 09/30] hw/arm/raspi: Let class_init() directly call raspi_machine_init(), Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 10/30] hw/arm/raspi: Set default RAM size to size encoded in board revision, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 11/30] hw/arm/raspi: Extract the board model from the board revision, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 12/30] hw/arm/raspi: Use a unique raspi_machine_class_init() method,
Philippe Mathieu-Daudé <=
- [PATCH v2 13/30] hw/arm/raspi: Extract the cores count from the board revision, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 14/30] hw/arm/bcm2836: Restrict BCM283XClass declaration to C source, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 15/30] hw/arm/bcm2836: QOM'ify more by adding class_init() to each SoC type, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 16/30] hw/arm/bcm2836: Introduce BCM283XClass::core_count, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 17/30] hw/arm/bcm2836: Only provide "enabled-cpus" property to multicore SoCs, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 18/30] hw/arm/bcm2836: Split out common realize() code, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 19/30] hw/arm/bcm2836: Introduce the BCM2835 SoC, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 20/30] hw/arm/raspi: Add the Raspberry Pi Zero machine, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 21/30] hw/arm/raspi: Add the Raspberry Pi B+ machine, Philippe Mathieu-Daudé, 2020/02/05
- [PATCH v2 24/30] tests/acceptance/boot_linux_console: Test the raspi1 console, Philippe Mathieu-Daudé, 2020/02/05