diff options
| author | Peter Maydell <peter.maydell@linaro.org> | 2016-06-23 10:44:56 +0100 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2016-06-23 10:44:56 +0100 |
| commit | 59a79f65ba1eb197609532b52df7d48617c75b33 (patch) | |
| tree | 4f402abf0b86f918a70e997b69b1cd6fadbb0361 /hw/xen/xen_backend.c | |
| parent | 6f1d2d1c5ad20d464705b17318cb7ca495f8078a (diff) | |
| parent | 25f8f6b4c295940ae5d83c19509353afc1dbc9a4 (diff) | |
| download | focaccia-qemu-59a79f65ba1eb197609532b52df7d48617c75b33.tar.gz focaccia-qemu-59a79f65ba1eb197609532b52df7d48617c75b33.zip | |
Merge remote-tracking branch 'remotes/sstabellini/tags/xen-20160622-tag' into staging
xen-20160622 # gpg: Signature made Wed 22 Jun 2016 12:45:56 BST # gpg: using RSA key 0x894F8F4870E1AE90 # gpg: Good signature from "Stefano Stabellini <stefano.stabellini@eu.citrix.com>" # Primary key fingerprint: D04E 33AB A51F 67BA 07D3 0AEA 894F 8F48 70E1 AE90 * remotes/sstabellini/tags/xen-20160622-tag: xen: move xen_sysdev to xen_backend.c xen: fix qdisk BLKIF_OP_DISCARD for 32/64 word size mix xen: fix style of hw/block/xen_blkif.h Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw/xen/xen_backend.c')
| -rw-r--r-- | hw/xen/xen_backend.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/hw/xen/xen_backend.c b/hw/xen/xen_backend.c index e7ce724567..bab79b1912 100644 --- a/hw/xen/xen_backend.c +++ b/hw/xen/xen_backend.c @@ -26,12 +26,17 @@ #include <sys/signal.h> #include "hw/hw.h" +#include "hw/sysbus.h" #include "sysemu/char.h" #include "qemu/log.h" #include "hw/xen/xen_backend.h" #include <xen/grant_table.h> +#define TYPE_XENSYSDEV "xensysdev" + +DeviceState *xen_sysdev; + /* ------------------------------------------------------------- */ /* public */ @@ -762,6 +767,10 @@ int xen_be_init(void) /* Check if xen_init() have been called */ goto err; } + + xen_sysdev = qdev_create(NULL, TYPE_XENSYSDEV); + qdev_init_nofail(xen_sysdev); + return 0; err: @@ -862,3 +871,35 @@ void xen_be_printf(struct XenDevice *xendev, int msg_level, const char *fmt, ... } qemu_log_flush(); } + +static int xen_sysdev_init(SysBusDevice *dev) +{ + return 0; +} + +static Property xen_sysdev_properties[] = { + {/* end of property list */}, +}; + +static void xen_sysdev_class_init(ObjectClass *klass, void *data) +{ + DeviceClass *dc = DEVICE_CLASS(klass); + SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass); + + k->init = xen_sysdev_init; + dc->props = xen_sysdev_properties; +} + +static const TypeInfo xensysdev_info = { + .name = TYPE_XENSYSDEV, + .parent = TYPE_SYS_BUS_DEVICE, + .instance_size = sizeof(SysBusDevice), + .class_init = xen_sysdev_class_init, +}; + +static void xenbe_register_types(void) +{ + type_register_static(&xensysdev_info); +} + +type_init(xenbe_register_types); |