pci: Trivial device model conversions to realize

Convert the device models where initialization obviously can't fail.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Gonglei <arei.gonglei@huawei.com>
This commit is contained in:
Markus Armbruster
2015-02-26 12:42:16 +01:00
committed by Michael S. Tsirkin
parent 7ee6c1e182
commit 9af21dbee1
34 changed files with 87 additions and 152 deletions
+2 -3
View File
@@ -420,7 +420,7 @@ static void piix4_pm_add_propeties(PIIX4PMState *s)
&s->io_base, NULL); &s->io_base, NULL);
} }
static int piix4_pm_initfn(PCIDevice *dev) static void piix4_pm_realize(PCIDevice *dev, Error **errp)
{ {
PIIX4PMState *s = PIIX4_PM(dev); PIIX4PMState *s = PIIX4_PM(dev);
uint8_t *pci_conf; uint8_t *pci_conf;
@@ -470,7 +470,6 @@ static int piix4_pm_initfn(PCIDevice *dev)
piix4_acpi_system_hot_add_init(pci_address_space_io(dev), dev->bus, s); piix4_acpi_system_hot_add_init(pci_address_space_io(dev), dev->bus, s);
piix4_pm_add_propeties(s); piix4_pm_add_propeties(s);
return 0;
} }
Object *piix4_pm_find(void) Object *piix4_pm_find(void)
@@ -593,7 +592,7 @@ static void piix4_pm_class_init(ObjectClass *klass, void *data)
HotplugHandlerClass *hc = HOTPLUG_HANDLER_CLASS(klass); HotplugHandlerClass *hc = HOTPLUG_HANDLER_CLASS(klass);
AcpiDeviceIfClass *adevc = ACPI_DEVICE_IF_CLASS(klass); AcpiDeviceIfClass *adevc = ACPI_DEVICE_IF_CLASS(klass);
k->init = piix4_pm_initfn; k->realize = piix4_pm_realize;
k->config_write = pm_write_config; k->config_write = pm_write_config;
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
k->device_id = PCI_DEVICE_ID_INTEL_82371AB_3; k->device_id = PCI_DEVICE_ID_INTEL_82371AB_3;
+2 -3
View File
@@ -1337,7 +1337,7 @@ static void ac97_on_reset (DeviceState *dev)
mixer_reset (s); mixer_reset (s);
} }
static int ac97_initfn (PCIDevice *dev) static void ac97_realize(PCIDevice *dev, Error **errp)
{ {
AC97LinkState *s = DO_UPCAST (AC97LinkState, dev, dev); AC97LinkState *s = DO_UPCAST (AC97LinkState, dev, dev);
uint8_t *c = s->dev.config; uint8_t *c = s->dev.config;
@@ -1384,7 +1384,6 @@ static int ac97_initfn (PCIDevice *dev)
pci_register_bar (&s->dev, 1, PCI_BASE_ADDRESS_SPACE_IO, &s->io_nabm); pci_register_bar (&s->dev, 1, PCI_BASE_ADDRESS_SPACE_IO, &s->io_nabm);
AUD_register_card ("ac97", &s->card); AUD_register_card ("ac97", &s->card);
ac97_on_reset (&s->dev.qdev); ac97_on_reset (&s->dev.qdev);
return 0;
} }
static int ac97_init (PCIBus *bus) static int ac97_init (PCIBus *bus)
@@ -1403,7 +1402,7 @@ static void ac97_class_init (ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS (klass); DeviceClass *dc = DEVICE_CLASS (klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS (klass); PCIDeviceClass *k = PCI_DEVICE_CLASS (klass);
k->init = ac97_initfn; k->realize = ac97_realize;
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
k->device_id = PCI_DEVICE_ID_INTEL_82801AA_5; k->device_id = PCI_DEVICE_ID_INTEL_82801AA_5;
k->revision = 0x01; k->revision = 0x01;
+2 -3
View File
@@ -1016,7 +1016,7 @@ static void es1370_on_reset (void *opaque)
es1370_reset (s); es1370_reset (s);
} }
static int es1370_initfn (PCIDevice *dev) static void es1370_realize(PCIDevice *dev, Error **errp)
{ {
ES1370State *s = DO_UPCAST (ES1370State, dev, dev); ES1370State *s = DO_UPCAST (ES1370State, dev, dev);
uint8_t *c = s->dev.config; uint8_t *c = s->dev.config;
@@ -1039,7 +1039,6 @@ static int es1370_initfn (PCIDevice *dev)
AUD_register_card ("es1370", &s->card); AUD_register_card ("es1370", &s->card);
es1370_reset (s); es1370_reset (s);
return 0;
} }
static int es1370_init (PCIBus *bus) static int es1370_init (PCIBus *bus)
@@ -1053,7 +1052,7 @@ static void es1370_class_init (ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS (klass); DeviceClass *dc = DEVICE_CLASS (klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS (klass); PCIDeviceClass *k = PCI_DEVICE_CLASS (klass);
k->init = es1370_initfn; k->realize = es1370_realize;
k->vendor_id = PCI_VENDOR_ID_ENSONIQ; k->vendor_id = PCI_VENDOR_ID_ENSONIQ;
k->device_id = PCI_DEVICE_ID_ENSONIQ_ES1370; k->device_id = PCI_DEVICE_ID_ENSONIQ_ES1370;
k->class_id = PCI_CLASS_MULTIMEDIA_AUDIO; k->class_id = PCI_CLASS_MULTIMEDIA_AUDIO;
+2 -4
View File
@@ -1126,7 +1126,7 @@ static void intel_hda_reset(DeviceState *dev)
intel_hda_update_irq(d); intel_hda_update_irq(d);
} }
static int intel_hda_init(PCIDevice *pci) static void intel_hda_realize(PCIDevice *pci, Error **errp)
{ {
IntelHDAState *d = INTEL_HDA(pci); IntelHDAState *d = INTEL_HDA(pci);
uint8_t *conf = d->pci.config; uint8_t *conf = d->pci.config;
@@ -1147,8 +1147,6 @@ static int intel_hda_init(PCIDevice *pci)
hda_codec_bus_init(DEVICE(pci), &d->codecs, sizeof(d->codecs), hda_codec_bus_init(DEVICE(pci), &d->codecs, sizeof(d->codecs),
intel_hda_response, intel_hda_xfer); intel_hda_response, intel_hda_xfer);
return 0;
} }
static void intel_hda_exit(PCIDevice *pci) static void intel_hda_exit(PCIDevice *pci)
@@ -1245,7 +1243,7 @@ static void intel_hda_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = intel_hda_init; k->realize = intel_hda_realize;
k->exit = intel_hda_exit; k->exit = intel_hda_exit;
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
k->class_id = PCI_CLASS_MULTIMEDIA_HD_AUDIO; k->class_id = PCI_CLASS_MULTIMEDIA_HD_AUDIO;
+4 -7
View File
@@ -189,7 +189,7 @@ static const MemoryRegionOps pci_vga_qext_ops = {
.endianness = DEVICE_LITTLE_ENDIAN, .endianness = DEVICE_LITTLE_ENDIAN,
}; };
static int pci_std_vga_initfn(PCIDevice *dev) static void pci_std_vga_realize(PCIDevice *dev, Error **errp)
{ {
PCIVGAState *d = DO_UPCAST(PCIVGAState, dev, dev); PCIVGAState *d = DO_UPCAST(PCIVGAState, dev, dev);
VGACommonState *s = &d->vga; VGACommonState *s = &d->vga;
@@ -232,11 +232,9 @@ static int pci_std_vga_initfn(PCIDevice *dev)
/* compatibility with pc-0.13 and older */ /* compatibility with pc-0.13 and older */
vga_init_vbe(s, OBJECT(dev), pci_address_space(dev)); vga_init_vbe(s, OBJECT(dev), pci_address_space(dev));
} }
return 0;
} }
static int pci_secondary_vga_initfn(PCIDevice *dev) static void pci_secondary_vga_realize(PCIDevice *dev, Error **errp)
{ {
PCIVGAState *d = DO_UPCAST(PCIVGAState, dev, dev); PCIVGAState *d = DO_UPCAST(PCIVGAState, dev, dev);
VGACommonState *s = &d->vga; VGACommonState *s = &d->vga;
@@ -268,7 +266,6 @@ static int pci_secondary_vga_initfn(PCIDevice *dev)
pci_register_bar(&d->dev, 0, PCI_BASE_ADDRESS_MEM_PREFETCH, &s->vram); pci_register_bar(&d->dev, 0, PCI_BASE_ADDRESS_MEM_PREFETCH, &s->vram);
pci_register_bar(&d->dev, 2, PCI_BASE_ADDRESS_SPACE_MEMORY, &d->mmio); pci_register_bar(&d->dev, 2, PCI_BASE_ADDRESS_SPACE_MEMORY, &d->mmio);
return 0;
} }
static void pci_secondary_vga_reset(DeviceState *dev) static void pci_secondary_vga_reset(DeviceState *dev)
@@ -298,7 +295,7 @@ static void vga_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_std_vga_initfn; k->realize = pci_std_vga_realize;
k->romfile = "vgabios-stdvga.bin"; k->romfile = "vgabios-stdvga.bin";
k->vendor_id = PCI_VENDOR_ID_QEMU; k->vendor_id = PCI_VENDOR_ID_QEMU;
k->device_id = PCI_DEVICE_ID_QEMU_VGA; k->device_id = PCI_DEVICE_ID_QEMU_VGA;
@@ -314,7 +311,7 @@ static void secondary_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_secondary_vga_initfn; k->realize = pci_secondary_vga_realize;
k->vendor_id = PCI_VENDOR_ID_QEMU; k->vendor_id = PCI_VENDOR_ID_QEMU;
k->device_id = PCI_DEVICE_ID_QEMU_VGA; k->device_id = PCI_DEVICE_ID_QEMU_VGA;
k->class_id = PCI_CLASS_DISPLAY_OTHER; k->class_id = PCI_CLASS_DISPLAY_OTHER;
+2 -4
View File
@@ -1298,7 +1298,7 @@ static const MemoryRegionOps vmsvga_io_ops = {
}, },
}; };
static int pci_vmsvga_initfn(PCIDevice *dev) static void pci_vmsvga_realize(PCIDevice *dev, Error **errp)
{ {
struct pci_vmsvga_state_s *s = VMWARE_SVGA(dev); struct pci_vmsvga_state_s *s = VMWARE_SVGA(dev);
@@ -1323,8 +1323,6 @@ static int pci_vmsvga_initfn(PCIDevice *dev)
/* compatibility with pc-0.13 and older */ /* compatibility with pc-0.13 and older */
vga_init_vbe(&s->chip.vga, OBJECT(dev), pci_address_space(dev)); vga_init_vbe(&s->chip.vga, OBJECT(dev), pci_address_space(dev));
} }
return 0;
} }
static Property vga_vmware_properties[] = { static Property vga_vmware_properties[] = {
@@ -1338,7 +1336,7 @@ static void vmsvga_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_vmsvga_initfn; k->realize = pci_vmsvga_realize;
k->romfile = "vgabios-vmware.bin"; k->romfile = "vgabios-vmware.bin";
k->vendor_id = PCI_VENDOR_ID_VMWARE; k->vendor_id = PCI_VENDOR_ID_VMWARE;
k->device_id = SVGA_PCI_DEVICE_ID; k->device_id = SVGA_PCI_DEVICE_ID;
+2 -3
View File
@@ -71,7 +71,7 @@ static void ich9_smbus_write_config(PCIDevice *d, uint32_t address,
} }
} }
static int ich9_smbus_initfn(PCIDevice *d) static void ich9_smbus_realize(PCIDevice *d, Error **errp)
{ {
ICH9SMBState *s = ICH9_SMB_DEVICE(d); ICH9SMBState *s = ICH9_SMB_DEVICE(d);
@@ -84,7 +84,6 @@ static int ich9_smbus_initfn(PCIDevice *d)
pm_smbus_init(&d->qdev, &s->smb); pm_smbus_init(&d->qdev, &s->smb);
pci_register_bar(d, ICH9_SMB_SMB_BASE_BAR, PCI_BASE_ADDRESS_SPACE_IO, pci_register_bar(d, ICH9_SMB_SMB_BASE_BAR, PCI_BASE_ADDRESS_SPACE_IO,
&s->smb.io); &s->smb.io);
return 0;
} }
static void ich9_smb_class_init(ObjectClass *klass, void *data) static void ich9_smb_class_init(ObjectClass *klass, void *data)
@@ -98,7 +97,7 @@ static void ich9_smb_class_init(ObjectClass *klass, void *data)
k->class_id = PCI_CLASS_SERIAL_SMBUS; k->class_id = PCI_CLASS_SERIAL_SMBUS;
dc->vmsd = &vmstate_ich9_smbus; dc->vmsd = &vmstate_ich9_smbus;
dc->desc = "ICH9 SMBUS Bridge"; dc->desc = "ICH9 SMBUS Bridge";
k->init = ich9_smbus_initfn; k->realize = ich9_smbus_realize;
k->config_write = ich9_smbus_write_config; k->config_write = ich9_smbus_write_config;
/* /*
* Reason: part of ICH9 southbridge, needs to be wired up by * Reason: part of ICH9 southbridge, needs to be wired up by
+2 -3
View File
@@ -326,7 +326,7 @@ static void cmd646_pci_config_write(PCIDevice *d, uint32_t addr, uint32_t val,
} }
/* CMD646 PCI IDE controller */ /* CMD646 PCI IDE controller */
static int pci_cmd646_ide_initfn(PCIDevice *dev) static void pci_cmd646_ide_realize(PCIDevice *dev, Error **errp)
{ {
PCIIDEState *d = PCI_IDE(dev); PCIIDEState *d = PCI_IDE(dev);
uint8_t *pci_conf = dev->config; uint8_t *pci_conf = dev->config;
@@ -374,7 +374,6 @@ static int pci_cmd646_ide_initfn(PCIDevice *dev)
vmstate_register(DEVICE(dev), 0, &vmstate_ide_pci, d); vmstate_register(DEVICE(dev), 0, &vmstate_ide_pci, d);
qemu_register_reset(cmd646_reset, d); qemu_register_reset(cmd646_reset, d);
return 0;
} }
static void pci_cmd646_ide_exitfn(PCIDevice *dev) static void pci_cmd646_ide_exitfn(PCIDevice *dev)
@@ -410,7 +409,7 @@ static void cmd646_ide_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_cmd646_ide_initfn; k->realize = pci_cmd646_ide_realize;
k->exit = pci_cmd646_ide_exitfn; k->exit = pci_cmd646_ide_exitfn;
k->vendor_id = PCI_VENDOR_ID_CMD; k->vendor_id = PCI_VENDOR_ID_CMD;
k->device_id = PCI_DEVICE_ID_CMD_646; k->device_id = PCI_DEVICE_ID_CMD_646;
+4 -6
View File
@@ -148,7 +148,7 @@ static void pci_piix_init_ports(PCIIDEState *d) {
} }
} }
static int pci_piix_ide_initfn(PCIDevice *dev) static void pci_piix_ide_realize(PCIDevice *dev, Error **errp)
{ {
PCIIDEState *d = PCI_IDE(dev); PCIIDEState *d = PCI_IDE(dev);
uint8_t *pci_conf = dev->config; uint8_t *pci_conf = dev->config;
@@ -163,8 +163,6 @@ static int pci_piix_ide_initfn(PCIDevice *dev)
vmstate_register(DEVICE(dev), 0, &vmstate_ide_pci, d); vmstate_register(DEVICE(dev), 0, &vmstate_ide_pci, d);
pci_piix_init_ports(d); pci_piix_init_ports(d);
return 0;
} }
int pci_piix3_xen_ide_unplug(DeviceState *dev) int pci_piix3_xen_ide_unplug(DeviceState *dev)
@@ -238,7 +236,7 @@ static void piix3_ide_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_piix_ide_initfn; k->realize = pci_piix_ide_realize;
k->exit = pci_piix_ide_exitfn; k->exit = pci_piix_ide_exitfn;
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
k->device_id = PCI_DEVICE_ID_INTEL_82371SB_1; k->device_id = PCI_DEVICE_ID_INTEL_82371SB_1;
@@ -258,7 +256,7 @@ static void piix3_ide_xen_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_piix_ide_initfn; k->realize = pci_piix_ide_realize;
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
k->device_id = PCI_DEVICE_ID_INTEL_82371SB_1; k->device_id = PCI_DEVICE_ID_INTEL_82371SB_1;
k->class_id = PCI_CLASS_STORAGE_IDE; k->class_id = PCI_CLASS_STORAGE_IDE;
@@ -276,7 +274,7 @@ static void piix4_ide_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_piix_ide_initfn; k->realize = pci_piix_ide_realize;
k->exit = pci_piix_ide_exitfn; k->exit = pci_piix_ide_exitfn;
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
k->device_id = PCI_DEVICE_ID_INTEL_82371AB; k->device_id = PCI_DEVICE_ID_INTEL_82371AB;
+2 -4
View File
@@ -172,7 +172,7 @@ static void vt82c686b_init_ports(PCIIDEState *d) {
} }
/* via ide func */ /* via ide func */
static int vt82c686b_ide_initfn(PCIDevice *dev) static void vt82c686b_ide_realize(PCIDevice *dev, Error **errp)
{ {
PCIIDEState *d = PCI_IDE(dev); PCIIDEState *d = PCI_IDE(dev);
uint8_t *pci_conf = dev->config; uint8_t *pci_conf = dev->config;
@@ -187,8 +187,6 @@ static int vt82c686b_ide_initfn(PCIDevice *dev)
vmstate_register(DEVICE(dev), 0, &vmstate_ide_pci, d); vmstate_register(DEVICE(dev), 0, &vmstate_ide_pci, d);
vt82c686b_init_ports(d); vt82c686b_init_ports(d);
return 0;
} }
static void vt82c686b_ide_exitfn(PCIDevice *dev) static void vt82c686b_ide_exitfn(PCIDevice *dev)
@@ -215,7 +213,7 @@ static void via_ide_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = vt82c686b_ide_initfn; k->realize = vt82c686b_ide_realize;
k->exit = vt82c686b_ide_exitfn; k->exit = vt82c686b_ide_exitfn;
k->vendor_id = PCI_VENDOR_ID_VIA; k->vendor_id = PCI_VENDOR_ID_VIA;
k->device_id = PCI_DEVICE_ID_VIA_IDE; k->device_id = PCI_DEVICE_ID_VIA_IDE;
+2 -4
View File
@@ -573,7 +573,7 @@ static const MemoryRegionOps tpci200_las3_ops = {
} }
}; };
static int tpci200_initfn(PCIDevice *pci_dev) static void tpci200_realize(PCIDevice *pci_dev, Error **errp)
{ {
TPCI200State *s = TPCI200(pci_dev); TPCI200State *s = TPCI200(pci_dev);
uint8_t *c = s->dev.config; uint8_t *c = s->dev.config;
@@ -609,8 +609,6 @@ static int tpci200_initfn(PCIDevice *pci_dev)
ipack_bus_new_inplace(&s->bus, sizeof(s->bus), DEVICE(pci_dev), NULL, ipack_bus_new_inplace(&s->bus, sizeof(s->bus), DEVICE(pci_dev), NULL,
N_MODULES, tpci200_set_irq); N_MODULES, tpci200_set_irq);
return 0;
} }
static const VMStateDescription vmstate_tpci200 = { static const VMStateDescription vmstate_tpci200 = {
@@ -632,7 +630,7 @@ static void tpci200_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = tpci200_initfn; k->realize = tpci200_realize;
k->vendor_id = PCI_VENDOR_ID_TEWS; k->vendor_id = PCI_VENDOR_ID_TEWS;
k->device_id = PCI_DEVICE_ID_TEWS_TPCI200; k->device_id = PCI_DEVICE_ID_TEWS_TPCI200;
k->class_id = PCI_CLASS_BRIDGE_OTHER; k->class_id = PCI_CLASS_BRIDGE_OTHER;
+2 -4
View File
@@ -58,7 +58,7 @@ static void i82378_request_pic_irq(void *opaque, int irq, int level)
qemu_set_irq(s->i8259[irq], level); qemu_set_irq(s->i8259[irq], level);
} }
static int i82378_initfn(PCIDevice *pci) static void i82378_realize(PCIDevice *pci, Error **errp)
{ {
DeviceState *dev = DEVICE(pci); DeviceState *dev = DEVICE(pci);
I82378State *s = I82378(dev); I82378State *s = I82378(dev);
@@ -107,8 +107,6 @@ static int i82378_initfn(PCIDevice *pci)
/* timer */ /* timer */
isa_create_simple(isabus, "mc146818rtc"); isa_create_simple(isabus, "mc146818rtc");
return 0;
} }
static void i82378_init(Object *obj) static void i82378_init(Object *obj)
@@ -125,7 +123,7 @@ static void i82378_class_init(ObjectClass *klass, void *data)
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
k->init = i82378_initfn; k->realize = i82378_realize;
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
k->device_id = PCI_DEVICE_ID_INTEL_82378; k->device_id = PCI_DEVICE_ID_INTEL_82378;
k->revision = 0x03; k->revision = 0x03;
+2 -3
View File
@@ -82,7 +82,7 @@ static const VMStateDescription vmstate_piix4 = {
} }
}; };
static int piix4_initfn(PCIDevice *dev) static void piix4_realize(PCIDevice *dev, Error **errp)
{ {
PIIX4State *d = DO_UPCAST(PIIX4State, dev, dev); PIIX4State *d = DO_UPCAST(PIIX4State, dev, dev);
@@ -90,7 +90,6 @@ static int piix4_initfn(PCIDevice *dev)
pci_address_space_io(dev)); pci_address_space_io(dev));
piix4_dev = &d->dev; piix4_dev = &d->dev;
qemu_register_reset(piix4_reset, d); qemu_register_reset(piix4_reset, d);
return 0;
} }
int piix4_init(PCIBus *bus, ISABus **isa_bus, int devfn) int piix4_init(PCIBus *bus, ISABus **isa_bus, int devfn)
@@ -107,7 +106,7 @@ static void piix4_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = piix4_initfn; k->realize = piix4_realize;
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
k->device_id = PCI_DEVICE_ID_INTEL_82371AB_0; k->device_id = PCI_DEVICE_ID_INTEL_82371AB_0;
k->class_id = PCI_CLASS_BRIDGE_ISA; k->class_id = PCI_CLASS_BRIDGE_ISA;
+8 -16
View File
@@ -245,7 +245,7 @@ static const VMStateDescription vmstate_acpi = {
* just register a PCI device now, functionalities will be implemented later. * just register a PCI device now, functionalities will be implemented later.
*/ */
static int vt82c686b_ac97_initfn(PCIDevice *dev) static void vt82c686b_ac97_realize(PCIDevice *dev, Error **errp)
{ {
VT686AC97State *s = DO_UPCAST(VT686AC97State, dev, dev); VT686AC97State *s = DO_UPCAST(VT686AC97State, dev, dev);
uint8_t *pci_conf = s->dev.config; uint8_t *pci_conf = s->dev.config;
@@ -255,8 +255,6 @@ static int vt82c686b_ac97_initfn(PCIDevice *dev)
pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_CAP_LIST | pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_CAP_LIST |
PCI_STATUS_DEVSEL_MEDIUM); PCI_STATUS_DEVSEL_MEDIUM);
pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03);
return 0;
} }
void vt82c686b_ac97_init(PCIBus *bus, int devfn) void vt82c686b_ac97_init(PCIBus *bus, int devfn)
@@ -272,7 +270,7 @@ static void via_ac97_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = vt82c686b_ac97_initfn; k->realize = vt82c686b_ac97_realize;
k->vendor_id = PCI_VENDOR_ID_VIA; k->vendor_id = PCI_VENDOR_ID_VIA;
k->device_id = PCI_DEVICE_ID_VIA_AC97; k->device_id = PCI_DEVICE_ID_VIA_AC97;
k->revision = 0x50; k->revision = 0x50;
@@ -288,7 +286,7 @@ static const TypeInfo via_ac97_info = {
.class_init = via_ac97_class_init, .class_init = via_ac97_class_init,
}; };
static int vt82c686b_mc97_initfn(PCIDevice *dev) static void vt82c686b_mc97_realize(PCIDevice *dev, Error **errp)
{ {
VT686MC97State *s = DO_UPCAST(VT686MC97State, dev, dev); VT686MC97State *s = DO_UPCAST(VT686MC97State, dev, dev);
uint8_t *pci_conf = s->dev.config; uint8_t *pci_conf = s->dev.config;
@@ -297,8 +295,6 @@ static int vt82c686b_mc97_initfn(PCIDevice *dev)
PCI_COMMAND_VGA_PALETTE); PCI_COMMAND_VGA_PALETTE);
pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_DEVSEL_MEDIUM); pci_set_word(pci_conf + PCI_STATUS, PCI_STATUS_DEVSEL_MEDIUM);
pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03); pci_set_long(pci_conf + PCI_INTERRUPT_PIN, 0x03);
return 0;
} }
void vt82c686b_mc97_init(PCIBus *bus, int devfn) void vt82c686b_mc97_init(PCIBus *bus, int devfn)
@@ -314,7 +310,7 @@ static void via_mc97_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = vt82c686b_mc97_initfn; k->realize = vt82c686b_mc97_realize;
k->vendor_id = PCI_VENDOR_ID_VIA; k->vendor_id = PCI_VENDOR_ID_VIA;
k->device_id = PCI_DEVICE_ID_VIA_MC97; k->device_id = PCI_DEVICE_ID_VIA_MC97;
k->class_id = PCI_CLASS_COMMUNICATION_OTHER; k->class_id = PCI_CLASS_COMMUNICATION_OTHER;
@@ -331,7 +327,7 @@ static const TypeInfo via_mc97_info = {
}; };
/* vt82c686 pm init */ /* vt82c686 pm init */
static int vt82c686b_pm_initfn(PCIDevice *dev) static void vt82c686b_pm_realize(PCIDevice *dev, Error **errp)
{ {
VT686PMState *s = DO_UPCAST(VT686PMState, dev, dev); VT686PMState *s = DO_UPCAST(VT686PMState, dev, dev);
uint8_t *pci_conf; uint8_t *pci_conf;
@@ -361,8 +357,6 @@ static int vt82c686b_pm_initfn(PCIDevice *dev)
acpi_pm_tmr_init(&s->ar, pm_tmr_timer, &s->io); acpi_pm_tmr_init(&s->ar, pm_tmr_timer, &s->io);
acpi_pm1_evt_init(&s->ar, pm_tmr_timer, &s->io); acpi_pm1_evt_init(&s->ar, pm_tmr_timer, &s->io);
acpi_pm1_cnt_init(&s->ar, &s->io, 2); acpi_pm1_cnt_init(&s->ar, &s->io, 2);
return 0;
} }
I2CBus *vt82c686b_pm_init(PCIBus *bus, int devfn, uint32_t smb_io_base, I2CBus *vt82c686b_pm_init(PCIBus *bus, int devfn, uint32_t smb_io_base,
@@ -391,7 +385,7 @@ static void via_pm_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = vt82c686b_pm_initfn; k->realize = vt82c686b_pm_realize;
k->config_write = pm_write_config; k->config_write = pm_write_config;
k->vendor_id = PCI_VENDOR_ID_VIA; k->vendor_id = PCI_VENDOR_ID_VIA;
k->device_id = PCI_DEVICE_ID_VIA_ACPI; k->device_id = PCI_DEVICE_ID_VIA_ACPI;
@@ -421,7 +415,7 @@ static const VMStateDescription vmstate_via = {
}; };
/* init the PCI-to-ISA bridge */ /* init the PCI-to-ISA bridge */
static int vt82c686b_initfn(PCIDevice *d) static void vt82c686b_realize(PCIDevice *d, Error **errp)
{ {
VT82C686BState *vt82c = DO_UPCAST(VT82C686BState, dev, d); VT82C686BState *vt82c = DO_UPCAST(VT82C686BState, dev, d);
uint8_t *pci_conf; uint8_t *pci_conf;
@@ -451,8 +445,6 @@ static int vt82c686b_initfn(PCIDevice *d)
&vt82c->superio); &vt82c->superio);
qemu_register_reset(vt82c686b_reset, d); qemu_register_reset(vt82c686b_reset, d);
return 0;
} }
ISABus *vt82c686b_init(PCIBus *bus, int devfn) ISABus *vt82c686b_init(PCIBus *bus, int devfn)
@@ -469,7 +461,7 @@ static void via_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = vt82c686b_initfn; k->realize = vt82c686b_realize;
k->config_write = vt82c686b_write_config; k->config_write = vt82c686b_write_config;
k->vendor_id = PCI_VENDOR_ID_VIA; k->vendor_id = PCI_VENDOR_ID_VIA;
k->device_id = PCI_DEVICE_ID_VIA_ISA_BRIDGE; k->device_id = PCI_DEVICE_ID_VIA_ISA_BRIDGE;
+2 -4
View File
@@ -233,7 +233,7 @@ static const MemoryRegionOps pci_testdev_pio_ops = {
}, },
}; };
static int pci_testdev_init(PCIDevice *pci_dev) static void pci_testdev_realize(PCIDevice *pci_dev, Error **errp)
{ {
PCITestDevState *d = PCI_TEST_DEV(pci_dev); PCITestDevState *d = PCI_TEST_DEV(pci_dev);
uint8_t *pci_conf; uint8_t *pci_conf;
@@ -275,8 +275,6 @@ static int pci_testdev_init(PCIDevice *pci_dev)
assert(r >= 0); assert(r >= 0);
test->hasnotifier = true; test->hasnotifier = true;
} }
return 0;
} }
static void static void
@@ -306,7 +304,7 @@ static void pci_testdev_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_testdev_init; k->realize = pci_testdev_realize;
k->exit = pci_testdev_uninit; k->exit = pci_testdev_uninit;
k->vendor_id = PCI_VENDOR_ID_REDHAT; k->vendor_id = PCI_VENDOR_ID_REDHAT;
k->device_id = PCI_DEVICE_ID_REDHAT_TEST; k->device_id = PCI_DEVICE_ID_REDHAT_TEST;
+2 -4
View File
@@ -1537,7 +1537,7 @@ static void e1000_write_config(PCIDevice *pci_dev, uint32_t address,
} }
static int pci_e1000_init(PCIDevice *pci_dev) static void pci_e1000_realize(PCIDevice *pci_dev, Error **errp)
{ {
DeviceState *dev = DEVICE(pci_dev); DeviceState *dev = DEVICE(pci_dev);
E1000State *d = E1000(pci_dev); E1000State *d = E1000(pci_dev);
@@ -1581,8 +1581,6 @@ static int pci_e1000_init(PCIDevice *pci_dev)
d->autoneg_timer = timer_new_ms(QEMU_CLOCK_VIRTUAL, e1000_autoneg_timer, d); d->autoneg_timer = timer_new_ms(QEMU_CLOCK_VIRTUAL, e1000_autoneg_timer, d);
d->mit_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, e1000_mit_timer, d); d->mit_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, e1000_mit_timer, d);
return 0;
} }
static void qdev_e1000_reset(DeviceState *dev) static void qdev_e1000_reset(DeviceState *dev)
@@ -1614,7 +1612,7 @@ static void e1000_class_init(ObjectClass *klass, void *data)
E1000BaseClass *e = E1000_DEVICE_CLASS(klass); E1000BaseClass *e = E1000_DEVICE_CLASS(klass);
const E1000Info *info = data; const E1000Info *info = data;
k->init = pci_e1000_init; k->realize = pci_e1000_realize;
k->exit = pci_e1000_uninit; k->exit = pci_e1000_uninit;
k->romfile = "efi-e1000.rom"; k->romfile = "efi-e1000.rom";
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
+2 -4
View File
@@ -1848,7 +1848,7 @@ static NetClientInfo net_eepro100_info = {
.receive = nic_receive, .receive = nic_receive,
}; };
static int e100_nic_init(PCIDevice *pci_dev) static void e100_nic_realize(PCIDevice *pci_dev, Error **errp)
{ {
EEPRO100State *s = DO_UPCAST(EEPRO100State, dev, pci_dev); EEPRO100State *s = DO_UPCAST(EEPRO100State, dev, pci_dev);
E100PCIDeviceInfo *info = eepro100_get_class(s); E100PCIDeviceInfo *info = eepro100_get_class(s);
@@ -1892,8 +1892,6 @@ static int e100_nic_init(PCIDevice *pci_dev)
memcpy(s->vmstate, &vmstate_eepro100, sizeof(vmstate_eepro100)); memcpy(s->vmstate, &vmstate_eepro100, sizeof(vmstate_eepro100));
s->vmstate->name = qemu_get_queue(s->nic)->model; s->vmstate->name = qemu_get_queue(s->nic)->model;
vmstate_register(&pci_dev->qdev, -1, s->vmstate, s); vmstate_register(&pci_dev->qdev, -1, s->vmstate, s);
return 0;
} }
static void eepro100_instance_init(Object *obj) static void eepro100_instance_init(Object *obj)
@@ -2083,7 +2081,7 @@ static void eepro100_class_init(ObjectClass *klass, void *data)
k->vendor_id = PCI_VENDOR_ID_INTEL; k->vendor_id = PCI_VENDOR_ID_INTEL;
k->class_id = PCI_CLASS_NETWORK_ETHERNET; k->class_id = PCI_CLASS_NETWORK_ETHERNET;
k->romfile = "pxe-eepro100.rom"; k->romfile = "pxe-eepro100.rom";
k->init = e100_nic_init; k->realize = e100_nic_realize;
k->exit = pci_nic_uninit; k->exit = pci_nic_uninit;
k->device_id = info->device_id; k->device_id = info->device_id;
k->revision = info->revision; k->revision = info->revision;
+2 -4
View File
@@ -709,7 +709,7 @@ static NetClientInfo net_ne2000_info = {
.receive = ne2000_receive, .receive = ne2000_receive,
}; };
static int pci_ne2000_init(PCIDevice *pci_dev) static void pci_ne2000_realize(PCIDevice *pci_dev, Error **errp)
{ {
PCINE2000State *d = DO_UPCAST(PCINE2000State, dev, pci_dev); PCINE2000State *d = DO_UPCAST(PCINE2000State, dev, pci_dev);
NE2000State *s; NE2000State *s;
@@ -729,8 +729,6 @@ static int pci_ne2000_init(PCIDevice *pci_dev)
s->nic = qemu_new_nic(&net_ne2000_info, &s->c, s->nic = qemu_new_nic(&net_ne2000_info, &s->c,
object_get_typename(OBJECT(pci_dev)), pci_dev->qdev.id, s); object_get_typename(OBJECT(pci_dev)), pci_dev->qdev.id, s);
qemu_format_nic_info_str(qemu_get_queue(s->nic), s->c.macaddr.a); qemu_format_nic_info_str(qemu_get_queue(s->nic), s->c.macaddr.a);
return 0;
} }
static void pci_ne2000_exit(PCIDevice *pci_dev) static void pci_ne2000_exit(PCIDevice *pci_dev)
@@ -763,7 +761,7 @@ static void ne2000_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_ne2000_init; k->realize = pci_ne2000_realize;
k->exit = pci_ne2000_exit; k->exit = pci_ne2000_exit;
k->romfile = "efi-ne2k_pci.rom", k->romfile = "efi-ne2k_pci.rom",
k->vendor_id = PCI_VENDOR_ID_REALTEK; k->vendor_id = PCI_VENDOR_ID_REALTEK;
+2 -4
View File
@@ -3455,7 +3455,7 @@ static NetClientInfo net_rtl8139_info = {
.link_status_changed = rtl8139_set_link_status, .link_status_changed = rtl8139_set_link_status,
}; };
static int pci_rtl8139_init(PCIDevice *dev) static void pci_rtl8139_realize(PCIDevice *dev, Error **errp)
{ {
RTL8139State *s = RTL8139(dev); RTL8139State *s = RTL8139(dev);
DeviceState *d = DEVICE(dev); DeviceState *d = DEVICE(dev);
@@ -3496,8 +3496,6 @@ static int pci_rtl8139_init(PCIDevice *dev)
s->cplus_txbuffer_offset = 0; s->cplus_txbuffer_offset = 0;
s->timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, rtl8139_timer, s); s->timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, rtl8139_timer, s);
return 0;
} }
static void rtl8139_instance_init(Object *obj) static void rtl8139_instance_init(Object *obj)
@@ -3519,7 +3517,7 @@ static void rtl8139_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass); DeviceClass *dc = DEVICE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
k->init = pci_rtl8139_init; k->realize = pci_rtl8139_realize;
k->exit = pci_rtl8139_uninit; k->exit = pci_rtl8139_uninit;
k->romfile = "efi-rtl8139.rom"; k->romfile = "efi-rtl8139.rom";
k->vendor_id = PCI_VENDOR_ID_REALTEK; k->vendor_id = PCI_VENDOR_ID_REALTEK;
+2 -4
View File
@@ -2125,7 +2125,7 @@ static const MemoryRegionOps b1_ops = {
}, },
}; };
static int vmxnet3_pci_init(PCIDevice *pci_dev) static void vmxnet3_pci_realize(PCIDevice *pci_dev, Error **errp)
{ {
DeviceState *dev = DEVICE(pci_dev); DeviceState *dev = DEVICE(pci_dev);
VMXNET3State *s = VMXNET3(pci_dev); VMXNET3State *s = VMXNET3(pci_dev);
@@ -2164,8 +2164,6 @@ static int vmxnet3_pci_init(PCIDevice *pci_dev)
register_savevm(dev, "vmxnet3-msix", -1, 1, register_savevm(dev, "vmxnet3-msix", -1, 1,
vmxnet3_msix_save, vmxnet3_msix_load, s); vmxnet3_msix_save, vmxnet3_msix_load, s);
return 0;
} }
static void vmxnet3_instance_init(Object *obj) static void vmxnet3_instance_init(Object *obj)
@@ -2501,7 +2499,7 @@ static void vmxnet3_class_init(ObjectClass *class, void *data)
DeviceClass *dc = DEVICE_CLASS(class); DeviceClass *dc = DEVICE_CLASS(class);
PCIDeviceClass *c = PCI_DEVICE_CLASS(class); PCIDeviceClass *c = PCI_DEVICE_CLASS(class);
c->init = vmxnet3_pci_init; c->realize = vmxnet3_pci_realize;
c->exit = vmxnet3_pci_uninit; c->exit = vmxnet3_pci_uninit;
c->vendor_id = PCI_VENDOR_ID_VMWARE; c->vendor_id = PCI_VENDOR_ID_VMWARE;
c->device_id = PCI_DEVICE_ID_VMWARE_VMXNET3; c->device_id = PCI_DEVICE_ID_VMWARE_VMXNET3;

Some files were not shown because too many files have changed in this diff Show More