qdev: Move bus properties to a separate global
Simple code movement in order to simplify future refactoring. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Andreas Färber <afaerber@suse.de>
This commit is contained in:
parent
2f262e06f0
commit
3cb75a7cba
10
hw/i2c.c
10
hw/i2c.c
@ -17,13 +17,15 @@ struct i2c_bus
|
||||
uint8_t saved_address;
|
||||
};
|
||||
|
||||
static Property i2c_props[] = {
|
||||
DEFINE_PROP_UINT8("address", struct I2CSlave, address, 0),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
};
|
||||
|
||||
static struct BusInfo i2c_bus_info = {
|
||||
.name = "I2C",
|
||||
.size = sizeof(i2c_bus),
|
||||
.props = (Property[]) {
|
||||
DEFINE_PROP_UINT8("address", struct I2CSlave, address, 0),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
}
|
||||
.props = i2c_props,
|
||||
};
|
||||
|
||||
static void i2c_bus_pre_save(void *opaque)
|
||||
|
@ -27,14 +27,16 @@
|
||||
|
||||
static char *idebus_get_fw_dev_path(DeviceState *dev);
|
||||
|
||||
static Property ide_props[] = {
|
||||
DEFINE_PROP_UINT32("unit", IDEDevice, unit, -1),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
};
|
||||
|
||||
static struct BusInfo ide_bus_info = {
|
||||
.name = "IDE",
|
||||
.size = sizeof(IDEBus),
|
||||
.get_fw_dev_path = idebus_get_fw_dev_path,
|
||||
.props = (Property[]) {
|
||||
DEFINE_PROP_UINT32("unit", IDEDevice, unit, -1),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
},
|
||||
.props = ide_props,
|
||||
};
|
||||
|
||||
void ide_bus_new(IDEBus *idebus, DeviceState *dev, int bus_id)
|
||||
|
@ -29,13 +29,15 @@
|
||||
/* --------------------------------------------------------------------- */
|
||||
/* hda bus */
|
||||
|
||||
static Property hda_props[] = {
|
||||
DEFINE_PROP_UINT32("cad", HDACodecDevice, cad, -1),
|
||||
DEFINE_PROP_END_OF_LIST()
|
||||
};
|
||||
|
||||
static struct BusInfo hda_codec_bus_info = {
|
||||
.name = "HDA",
|
||||
.size = sizeof(HDACodecBus),
|
||||
.props = (Property[]) {
|
||||
DEFINE_PROP_UINT32("cad", HDACodecDevice, cad, -1),
|
||||
DEFINE_PROP_END_OF_LIST()
|
||||
}
|
||||
.props = hda_props,
|
||||
};
|
||||
|
||||
void hda_codec_bus_init(DeviceState *dev, HDACodecBus *bus,
|
||||
|
22
hw/pci.c
22
hw/pci.c
@ -44,6 +44,17 @@ static char *pcibus_get_dev_path(DeviceState *dev);
|
||||
static char *pcibus_get_fw_dev_path(DeviceState *dev);
|
||||
static int pcibus_reset(BusState *qbus);
|
||||
|
||||
static Property pci_props[] = {
|
||||
DEFINE_PROP_PCI_DEVFN("addr", PCIDevice, devfn, -1),
|
||||
DEFINE_PROP_STRING("romfile", PCIDevice, romfile),
|
||||
DEFINE_PROP_UINT32("rombar", PCIDevice, rom_bar, 1),
|
||||
DEFINE_PROP_BIT("multifunction", PCIDevice, cap_present,
|
||||
QEMU_PCI_CAP_MULTIFUNCTION_BITNR, false),
|
||||
DEFINE_PROP_BIT("command_serr_enable", PCIDevice, cap_present,
|
||||
QEMU_PCI_CAP_SERR_BITNR, true),
|
||||
DEFINE_PROP_END_OF_LIST()
|
||||
};
|
||||
|
||||
struct BusInfo pci_bus_info = {
|
||||
.name = "PCI",
|
||||
.size = sizeof(PCIBus),
|
||||
@ -51,16 +62,7 @@ struct BusInfo pci_bus_info = {
|
||||
.get_dev_path = pcibus_get_dev_path,
|
||||
.get_fw_dev_path = pcibus_get_fw_dev_path,
|
||||
.reset = pcibus_reset,
|
||||
.props = (Property[]) {
|
||||
DEFINE_PROP_PCI_DEVFN("addr", PCIDevice, devfn, -1),
|
||||
DEFINE_PROP_STRING("romfile", PCIDevice, romfile),
|
||||
DEFINE_PROP_UINT32("rombar", PCIDevice, rom_bar, 1),
|
||||
DEFINE_PROP_BIT("multifunction", PCIDevice, cap_present,
|
||||
QEMU_PCI_CAP_MULTIFUNCTION_BITNR, false),
|
||||
DEFINE_PROP_BIT("command_serr_enable", PCIDevice, cap_present,
|
||||
QEMU_PCI_CAP_SERR_BITNR, true),
|
||||
DEFINE_PROP_END_OF_LIST()
|
||||
}
|
||||
.props = pci_props,
|
||||
};
|
||||
|
||||
static PCIBus *pci_find_bus_nr(PCIBus *bus, int bus_num);
|
||||
|
@ -12,17 +12,19 @@ static char *scsibus_get_fw_dev_path(DeviceState *dev);
|
||||
static int scsi_req_parse(SCSICommand *cmd, SCSIDevice *dev, uint8_t *buf);
|
||||
static void scsi_req_dequeue(SCSIRequest *req);
|
||||
|
||||
static Property scsi_props[] = {
|
||||
DEFINE_PROP_UINT32("channel", SCSIDevice, channel, 0),
|
||||
DEFINE_PROP_UINT32("scsi-id", SCSIDevice, id, -1),
|
||||
DEFINE_PROP_UINT32("lun", SCSIDevice, lun, -1),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
};
|
||||
|
||||
static struct BusInfo scsi_bus_info = {
|
||||
.name = "SCSI",
|
||||
.size = sizeof(SCSIBus),
|
||||
.get_dev_path = scsibus_get_dev_path,
|
||||
.get_fw_dev_path = scsibus_get_fw_dev_path,
|
||||
.props = (Property[]) {
|
||||
DEFINE_PROP_UINT32("channel", SCSIDevice, channel, 0),
|
||||
DEFINE_PROP_UINT32("scsi-id", SCSIDevice, id, -1),
|
||||
DEFINE_PROP_UINT32("lun", SCSIDevice, lun, -1),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
},
|
||||
.props = scsi_props,
|
||||
};
|
||||
static int next_scsi_bus;
|
||||
|
||||
|
@ -49,13 +49,15 @@
|
||||
do { } while (0)
|
||||
#endif
|
||||
|
||||
static Property spapr_vio_props[] = {
|
||||
DEFINE_PROP_UINT32("irq", VIOsPAPRDevice, vio_irq_num, 0), \
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
};
|
||||
|
||||
static struct BusInfo spapr_vio_bus_info = {
|
||||
.name = "spapr-vio",
|
||||
.size = sizeof(VIOsPAPRBus),
|
||||
.props = (Property[]) {
|
||||
DEFINE_PROP_UINT32("irq", VIOsPAPRDevice, vio_irq_num, 0), \
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
},
|
||||
.props = spapr_vio_props,
|
||||
};
|
||||
|
||||
VIOsPAPRDevice *spapr_vio_find_by_reg(VIOsPAPRBus *bus, uint32_t reg)
|
||||
|
15
hw/usb/bus.c
15
hw/usb/bus.c
@ -11,19 +11,22 @@ static char *usb_get_dev_path(DeviceState *dev);
|
||||
static char *usb_get_fw_dev_path(DeviceState *qdev);
|
||||
static int usb_qdev_exit(DeviceState *qdev);
|
||||
|
||||
static Property usb_props[] = {
|
||||
DEFINE_PROP_STRING("port", USBDevice, port_path),
|
||||
DEFINE_PROP_BIT("full-path", USBDevice, flags,
|
||||
USB_DEV_FLAG_FULL_PATH, true),
|
||||
DEFINE_PROP_END_OF_LIST()
|
||||
};
|
||||
|
||||
static struct BusInfo usb_bus_info = {
|
||||
.name = "USB",
|
||||
.size = sizeof(USBBus),
|
||||
.print_dev = usb_bus_dev_print,
|
||||
.get_dev_path = usb_get_dev_path,
|
||||
.get_fw_dev_path = usb_get_fw_dev_path,
|
||||
.props = (Property[]) {
|
||||
DEFINE_PROP_STRING("port", USBDevice, port_path),
|
||||
DEFINE_PROP_BIT("full-path", USBDevice, flags,
|
||||
USB_DEV_FLAG_FULL_PATH, true),
|
||||
DEFINE_PROP_END_OF_LIST()
|
||||
},
|
||||
.props = usb_props,
|
||||
};
|
||||
|
||||
static int next_usb_bus = 0;
|
||||
static QTAILQ_HEAD(, USBBus) busses = QTAILQ_HEAD_INITIALIZER(busses);
|
||||
|
||||
|
@ -1055,13 +1055,15 @@ static Answer *ccid_peek_next_answer(USBCCIDState *s)
|
||||
: &s->pending_answers[s->pending_answers_start % PENDING_ANSWERS_NUM];
|
||||
}
|
||||
|
||||
static Property ccid_props[] = {
|
||||
DEFINE_PROP_UINT32("slot", struct CCIDCardState, slot, 0),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
};
|
||||
|
||||
static struct BusInfo ccid_bus_info = {
|
||||
.name = "ccid-bus",
|
||||
.size = sizeof(CCIDBus),
|
||||
.props = (Property[]) {
|
||||
DEFINE_PROP_UINT32("slot", struct CCIDCardState, slot, 0),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
}
|
||||
.props = ccid_props,
|
||||
};
|
||||
|
||||
void ccid_card_send_apdu_to_guest(CCIDCardState *card,
|
||||
|
@ -728,15 +728,17 @@ static int virtio_serial_load(QEMUFile *f, void *opaque, int version_id)
|
||||
|
||||
static void virtser_bus_dev_print(Monitor *mon, DeviceState *qdev, int indent);
|
||||
|
||||
static Property virtser_props[] = {
|
||||
DEFINE_PROP_UINT32("nr", VirtIOSerialPort, id, VIRTIO_CONSOLE_BAD_ID),
|
||||
DEFINE_PROP_STRING("name", VirtIOSerialPort, name),
|
||||
DEFINE_PROP_END_OF_LIST()
|
||||
};
|
||||
|
||||
static struct BusInfo virtser_bus_info = {
|
||||
.name = "virtio-serial-bus",
|
||||
.size = sizeof(VirtIOSerialBus),
|
||||
.print_dev = virtser_bus_dev_print,
|
||||
.props = (Property[]) {
|
||||
DEFINE_PROP_UINT32("nr", VirtIOSerialPort, id, VIRTIO_CONSOLE_BAD_ID),
|
||||
DEFINE_PROP_STRING("name", VirtIOSerialPort, name),
|
||||
DEFINE_PROP_END_OF_LIST()
|
||||
}
|
||||
.props = virtser_props,
|
||||
};
|
||||
|
||||
static void virtser_bus_dev_print(Monitor *mon, DeviceState *qdev, int indent)
|
||||
|
Loading…
Reference in New Issue
Block a user