Commit 53e3c4f9183af22ab5426faa901a507c6ee5b13c
1 parent
5210977a
Sparc64: convert ebus to qdev
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Showing
1 changed file
with
18 additions
and
2 deletions
hw/sun4u.c
... | ... | @@ -305,9 +305,12 @@ static void ebus_mmio_mapfunc(PCIDevice *pci_dev, int region_num, |
305 | 305 | static void |
306 | 306 | pci_ebus_init(PCIBus *bus, int devfn) |
307 | 307 | { |
308 | - PCIDevice *s; | |
308 | + pci_create_simple(bus, devfn, "ebus"); | |
309 | +} | |
309 | 310 | |
310 | - s = pci_register_device(bus, "EBUS", sizeof(*s), devfn, NULL, NULL); | |
311 | +static void | |
312 | +pci_ebus_init1(PCIDevice *s) | |
313 | +{ | |
311 | 314 | pci_config_set_vendor_id(s->config, PCI_VENDOR_ID_SUN); |
312 | 315 | pci_config_set_device_id(s->config, PCI_DEVICE_ID_SUN_EBUS); |
313 | 316 | s->config[0x04] = 0x06; // command = bus master, pci mem |
... | ... | @@ -326,6 +329,19 @@ pci_ebus_init(PCIBus *bus, int devfn) |
326 | 329 | ebus_mmio_mapfunc); |
327 | 330 | } |
328 | 331 | |
332 | +static PCIDeviceInfo ebus_info = { | |
333 | + .qdev.name = "ebus", | |
334 | + .qdev.size = sizeof(PCIDevice), | |
335 | + .init = pci_ebus_init1, | |
336 | +}; | |
337 | + | |
338 | +static void pci_ebus_register(void) | |
339 | +{ | |
340 | + pci_qdev_register(&ebus_info); | |
341 | +} | |
342 | + | |
343 | +device_init(pci_ebus_register); | |
344 | + | |
329 | 345 | static void sun4uv_init(ram_addr_t RAM_size, |
330 | 346 | const char *boot_devices, |
331 | 347 | const char *kernel_filename, const char *kernel_cmdline, | ... | ... |