mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 08:13:54 -06:00
s390/sclp: introduce a root sclp device
Let's create a root sclp device, which has other sclp devices as children (e.g. the event facility for now) and can later be used for migration of sclp specific attributes and setup of memory. Reviewed-by: Matthew Rosato <mjrosato@linux.vnet.ibm.com> Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
This commit is contained in:
parent
732bdd383e
commit
515190d9da
3 changed files with 78 additions and 11 deletions
|
@ -189,8 +189,6 @@ typedef struct SCLPEventClass {
|
|||
OBJECT_GET_CLASS(SCLPEventFacilityClass, (obj), \
|
||||
TYPE_SCLP_EVENT_FACILITY)
|
||||
|
||||
typedef struct SCLPEventFacility SCLPEventFacility;
|
||||
|
||||
typedef struct SCLPEventFacilityClass {
|
||||
SysBusDeviceClass parent_class;
|
||||
void (*command_handler)(SCLPEventFacility *ef, SCCB *sccb, uint64_t code);
|
||||
|
|
|
@ -163,6 +163,28 @@ typedef struct SCCB {
|
|||
char data[SCCB_DATA_LEN];
|
||||
} QEMU_PACKED SCCB;
|
||||
|
||||
#define TYPE_SCLP "sclp"
|
||||
#define SCLP(obj) OBJECT_CHECK(SCLPDevice, (obj), TYPE_SCLP)
|
||||
#define SCLP_CLASS(oc) OBJECT_CLASS_CHECK(SCLPDeviceClass, (oc), TYPE_SCLP)
|
||||
#define SCLP_GET_CLASS(obj) OBJECT_GET_CLASS(SCLPDeviceClass, (obj), TYPE_SCLP)
|
||||
|
||||
typedef struct SCLPEventFacility SCLPEventFacility;
|
||||
|
||||
typedef struct SCLPDevice {
|
||||
/* private */
|
||||
DeviceState parent_obj;
|
||||
SCLPEventFacility *event_facility;
|
||||
|
||||
/* public */
|
||||
} SCLPDevice;
|
||||
|
||||
typedef struct SCLPDeviceClass {
|
||||
/* private */
|
||||
DeviceClass parent_class;
|
||||
|
||||
/* public */
|
||||
} SCLPDeviceClass;
|
||||
|
||||
typedef struct sclpMemoryHotplugDev sclpMemoryHotplugDev;
|
||||
|
||||
#define TYPE_SCLP_MEMORY_HOTPLUG_DEV "sclp-memory-hotplug-dev"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue