From: Paul Brook Date: Thu, 14 May 2009 21:35:08 +0000 (+0100) Subject: Virtio-balloon qdev conversion X-Git-Tag: Tizen_Studio_1.3_Release_p2.3.1~1405^2~17^2~8333 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2d72c5727f8343a39862b8fca3b53a2bce26a7ca;p=sdk%2Femulator%2Fqemu.git Virtio-balloon qdev conversion Signed-off-by: Paul Brook --- diff --git a/hw/pc.c b/hw/pc.c index 12065baf6c..6c8bb1bbd6 100644 --- a/hw/pc.c +++ b/hw/pc.c @@ -33,7 +33,6 @@ #include "boards.h" #include "monitor.h" #include "fw_cfg.h" -#include "virtio-balloon.h" #include "virtio-console.h" #include "hpet_emul.h" #include "watchdog.h" @@ -1141,8 +1140,9 @@ static void pc_init1(ram_addr_t ram_size, } /* Add virtio balloon device */ - if (pci_enabled) - virtio_balloon_init(pci_bus); + if (pci_enabled) { + pci_create_simple(pci_bus, -1, "virtio-balloon"); + } /* Add virtio console devices */ if (pci_enabled) { diff --git a/hw/virtio-balloon.c b/hw/virtio-balloon.c index b8f9184e11..7fa7e47f7f 100644 --- a/hw/virtio-balloon.c +++ b/hw/virtio-balloon.c @@ -169,17 +169,11 @@ static int virtio_balloon_load(QEMUFile *f, void *opaque, int version_id) return 0; } -void *virtio_balloon_init(PCIBus *bus) +static void virtio_balloon_init(PCIDevice *pci_dev) { VirtIOBalloon *s; - PCIDevice *d; - d = pci_register_device(bus, "virtio-balloon", sizeof(VirtIOBalloon), - -1, NULL, NULL); - if (!d) - return NULL; - - s = (VirtIOBalloon *)virtio_init_pci(d, "virtio-balloon", + s = (VirtIOBalloon *)virtio_init_pci(pci_dev, "virtio-balloon", PCI_VENDOR_ID_REDHAT_QUMRANET, PCI_DEVICE_ID_VIRTIO_BALLOON, PCI_VENDOR_ID_REDHAT_QUMRANET, @@ -197,6 +191,12 @@ void *virtio_balloon_init(PCIBus *bus) qemu_add_balloon_handler(virtio_balloon_to_target, s); register_savevm("virtio-balloon", -1, 1, virtio_balloon_save, virtio_balloon_load, s); +} - return &s->vdev; +static void virtio_balloon_register_devices(void) +{ + pci_qdev_register("virtio-balloon", sizeof(VirtIOBalloon), + virtio_balloon_init); } + +device_init(virtio_balloon_register_devices) diff --git a/hw/virtio-balloon.h b/hw/virtio-balloon.h index c71f9709bf..9a0d119e42 100644 --- a/hw/virtio-balloon.h +++ b/hw/virtio-balloon.h @@ -37,6 +37,4 @@ struct virtio_balloon_config uint32_t actual; }; -void *virtio_balloon_init(PCIBus *bus); - #endif