From 0aab0d3a4a62505ab7e79ee0a67fe3f04f6dae23 Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Tue, 30 Jun 2009 14:12:07 +0200 Subject: qdev: update pci device registration. Makes pci_qdev_register take a PCIDeviceInfo struct instead of a bunch of parameters. Also adds config_read and config_write callbacks to PCIDeviceInfo, so drivers needing these can be converted to the qdev device API too. Signed-off-by: Gerd Hoffmann --- hw/eepro100.c | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) (limited to 'hw/eepro100.c') diff --git a/hw/eepro100.c b/hw/eepro100.c index 00021408c..85446ed69 100644 --- a/hw/eepro100.c +++ b/hw/eepro100.c @@ -1792,14 +1792,27 @@ static void pci_i82559er_init(PCIDevice *dev) nic_init(dev, i82559ER); } +static PCIDeviceInfo eepro100_info[] = { + { + .qdev.name = "i82551", + .qdev.size = sizeof(PCIEEPRO100State), + .init = pci_i82551_init, + },{ + .qdev.name = "i82557b", + .qdev.size = sizeof(PCIEEPRO100State), + .init = pci_i82557b_init, + },{ + .qdev.name = "i82559er", + .qdev.size = sizeof(PCIEEPRO100State), + .init = pci_i82559er_init, + },{ + /* end of list */ + } +}; + static void eepro100_register_devices(void) { - pci_qdev_register("i82551", sizeof(PCIEEPRO100State), - pci_i82551_init); - pci_qdev_register("i82557b", sizeof(PCIEEPRO100State), - pci_i82557b_init); - pci_qdev_register("i82559er", sizeof(PCIEEPRO100State), - pci_i82559er_init); + pci_qdev_register_many(eepro100_info); } device_init(eepro100_register_devices) -- cgit v1.2.3