[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 7/9] hw/sysbus: Introduce dedicated struct SysBusState for TYPE_S
From: |
Bernhard Beschow |
Subject: |
[PATCH 7/9] hw/sysbus: Introduce dedicated struct SysBusState for TYPE_SYSTEM_BUS |
Date: |
Tue, 20 Sep 2022 01:17:18 +0200 |
With this out of the way, in the next step, SysBusState gains attributes
for its memory and address recouces.
Signed-off-by: Bernhard Beschow <shentey@gmail.com>
---
hw/core/sysbus.c | 4 ++--
include/hw/boards.h | 3 ++-
include/hw/misc/macio/macio.h | 2 +-
include/hw/sysbus.h | 8 ++++++--
4 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/hw/core/sysbus.c b/hw/core/sysbus.c
index 16a9b4d7a0..1100f3ad6c 100644
--- a/hw/core/sysbus.c
+++ b/hw/core/sysbus.c
@@ -84,7 +84,7 @@ static void system_bus_class_init(ObjectClass *klass, void
*data)
static const TypeInfo system_bus_info = {
.name = TYPE_SYSTEM_BUS,
.parent = TYPE_BUS,
- .instance_size = sizeof(BusState),
+ .instance_size = sizeof(SysBusState),
.class_init = system_bus_class_init,
};
@@ -343,7 +343,7 @@ BusState *sysbus_get_default(void)
return NULL;
}
- return ¤t_machine->main_system_bus;
+ return ¤t_machine->main_system_bus.parent_obj;
}
static void sysbus_register_types(void)
diff --git a/include/hw/boards.h b/include/hw/boards.h
index 7af940102d..63a4f990ea 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -11,6 +11,7 @@
#include "qemu/module.h"
#include "qom/object.h"
#include "hw/core/cpu.h"
+#include "hw/sysbus.h"
#define TYPE_MACHINE_SUFFIX "-machine"
@@ -346,7 +347,7 @@ struct MachineState {
*/
MemoryRegion *ram;
DeviceMemoryState *device_memory;
- BusState main_system_bus;
+ SysBusState main_system_bus;
ram_addr_t ram_size;
ram_addr_t maxram_size;
diff --git a/include/hw/misc/macio/macio.h b/include/hw/misc/macio/macio.h
index 6c05f3bfd2..0944be587f 100644
--- a/include/hw/misc/macio/macio.h
+++ b/include/hw/misc/macio/macio.h
@@ -44,7 +44,7 @@ OBJECT_DECLARE_SIMPLE_TYPE(MacIOBusState, MACIO_BUS)
struct MacIOBusState {
/*< private >*/
- BusState parent_obj;
+ SysBusState parent_obj;
};
/* MacIO IDE */
diff --git a/include/hw/sysbus.h b/include/hw/sysbus.h
index 3564b7b6a2..5bb3b88501 100644
--- a/include/hw/sysbus.h
+++ b/include/hw/sysbus.h
@@ -11,9 +11,13 @@
#define QDEV_MAX_PIO 32
#define TYPE_SYSTEM_BUS "System"
-DECLARE_INSTANCE_CHECKER(BusState, SYSTEM_BUS,
- TYPE_SYSTEM_BUS)
+OBJECT_DECLARE_SIMPLE_TYPE(SysBusState, SYSTEM_BUS)
+struct SysBusState {
+ /*< private >*/
+ BusState parent_obj;
+ /*< public >*/
+};
#define TYPE_SYS_BUS_DEVICE "sys-bus-device"
OBJECT_DECLARE_TYPE(SysBusDevice, SysBusDeviceClass,
--
2.37.3
- Re: [PATCH 2/9] exec/hwaddr.h: Add missing include, (continued)
- [PATCH 3/9] hw/core/sysbus: Resolve main_system_bus singleton, Bernhard Beschow, 2022/09/19
- [PATCH 4/9] hw/ppc/spapr: Fix code style problems reported by checkpatch, Bernhard Beschow, 2022/09/19
- [PATCH 5/9] exec/address-spaces: Wrap address space singletons into functions, Bernhard Beschow, 2022/09/19
- [PATCH 6/9] target/loongarch/cpu: Remove unneeded include directive, Bernhard Beschow, 2022/09/19
- [PATCH 7/9] hw/sysbus: Introduce dedicated struct SysBusState for TYPE_SYSTEM_BUS,
Bernhard Beschow <=
- [PATCH 8/9] softmmu/physmem: Let SysBusState absorb memory region and address space singletons, Bernhard Beschow, 2022/09/19
- [PATCH 9/9] exec/address-spaces: Inline legacy functions, Bernhard Beschow, 2022/09/19
Re: [PATCH 0/9] Deprecate sysbus_get_default() and get_system_memory() et. al, Peter Maydell, 2022/09/20