Commit 2d72c5727f8343a39862b8fca3b53a2bce26a7ca
1 parent
07e3af9a
Virtio-balloon qdev conversion
Signed-off-by: Paul Brook <paul@codesourcery.com>
Showing
3 changed files
with
12 additions
and
14 deletions
hw/pc.c
... | ... | @@ -33,7 +33,6 @@ |
33 | 33 | #include "boards.h" |
34 | 34 | #include "monitor.h" |
35 | 35 | #include "fw_cfg.h" |
36 | -#include "virtio-balloon.h" | |
37 | 36 | #include "virtio-console.h" |
38 | 37 | #include "hpet_emul.h" |
39 | 38 | #include "watchdog.h" |
... | ... | @@ -1141,8 +1140,9 @@ static void pc_init1(ram_addr_t ram_size, |
1141 | 1140 | } |
1142 | 1141 | |
1143 | 1142 | /* Add virtio balloon device */ |
1144 | - if (pci_enabled) | |
1145 | - virtio_balloon_init(pci_bus); | |
1143 | + if (pci_enabled) { | |
1144 | + pci_create_simple(pci_bus, -1, "virtio-balloon"); | |
1145 | + } | |
1146 | 1146 | |
1147 | 1147 | /* Add virtio console devices */ |
1148 | 1148 | if (pci_enabled) { | ... | ... |
hw/virtio-balloon.c
... | ... | @@ -169,17 +169,11 @@ static int virtio_balloon_load(QEMUFile *f, void *opaque, int version_id) |
169 | 169 | return 0; |
170 | 170 | } |
171 | 171 | |
172 | -void *virtio_balloon_init(PCIBus *bus) | |
172 | +static void virtio_balloon_init(PCIDevice *pci_dev) | |
173 | 173 | { |
174 | 174 | VirtIOBalloon *s; |
175 | - PCIDevice *d; | |
176 | 175 | |
177 | - d = pci_register_device(bus, "virtio-balloon", sizeof(VirtIOBalloon), | |
178 | - -1, NULL, NULL); | |
179 | - if (!d) | |
180 | - return NULL; | |
181 | - | |
182 | - s = (VirtIOBalloon *)virtio_init_pci(d, "virtio-balloon", | |
176 | + s = (VirtIOBalloon *)virtio_init_pci(pci_dev, "virtio-balloon", | |
183 | 177 | PCI_VENDOR_ID_REDHAT_QUMRANET, |
184 | 178 | PCI_DEVICE_ID_VIRTIO_BALLOON, |
185 | 179 | PCI_VENDOR_ID_REDHAT_QUMRANET, |
... | ... | @@ -197,6 +191,12 @@ void *virtio_balloon_init(PCIBus *bus) |
197 | 191 | qemu_add_balloon_handler(virtio_balloon_to_target, s); |
198 | 192 | |
199 | 193 | register_savevm("virtio-balloon", -1, 1, virtio_balloon_save, virtio_balloon_load, s); |
194 | +} | |
200 | 195 | |
201 | - return &s->vdev; | |
196 | +static void virtio_balloon_register_devices(void) | |
197 | +{ | |
198 | + pci_qdev_register("virtio-balloon", sizeof(VirtIOBalloon), | |
199 | + virtio_balloon_init); | |
202 | 200 | } |
201 | + | |
202 | +device_init(virtio_balloon_register_devices) | ... | ... |