17df2c718SJuan Quintela /* 27df2c718SJuan Quintela * Virtio input host PCI Bindings 37df2c718SJuan Quintela * 47df2c718SJuan Quintela * This work is licensed under the terms of the GNU GPL, version 2 or 57df2c718SJuan Quintela * (at your option) any later version. See the COPYING file in the 67df2c718SJuan Quintela * top-level directory. 77df2c718SJuan Quintela */ 87df2c718SJuan Quintela 97df2c718SJuan Quintela #include "qemu/osdep.h" 107df2c718SJuan Quintela 117df2c718SJuan Quintela #include "virtio-pci.h" 127df2c718SJuan Quintela #include "hw/virtio/virtio-input.h" 130b8fa32fSMarkus Armbruster #include "qemu/module.h" 14db1015e9SEduardo Habkost #include "qom/object.h" 157df2c718SJuan Quintela 167df2c718SJuan Quintela typedef struct VirtIOInputHostPCI VirtIOInputHostPCI; 177df2c718SJuan Quintela 18d923e305SGerd Hoffmann #define TYPE_VIRTIO_INPUT_HOST_PCI "virtio-input-host-pci" 19*8110fa1dSEduardo Habkost DECLARE_INSTANCE_CHECKER(VirtIOInputHostPCI, VIRTIO_INPUT_HOST_PCI, 20*8110fa1dSEduardo Habkost TYPE_VIRTIO_INPUT_HOST_PCI) 217df2c718SJuan Quintela 227df2c718SJuan Quintela struct VirtIOInputHostPCI { 237df2c718SJuan Quintela VirtIOPCIProxy parent_obj; 247df2c718SJuan Quintela VirtIOInputHost vdev; 257df2c718SJuan Quintela }; 267df2c718SJuan Quintela 277df2c718SJuan Quintela static void virtio_host_initfn(Object *obj) 287df2c718SJuan Quintela { 297df2c718SJuan Quintela VirtIOInputHostPCI *dev = VIRTIO_INPUT_HOST_PCI(obj); 307df2c718SJuan Quintela 317df2c718SJuan Quintela virtio_instance_init_common(obj, &dev->vdev, sizeof(dev->vdev), 327df2c718SJuan Quintela TYPE_VIRTIO_INPUT_HOST); 337df2c718SJuan Quintela } 347df2c718SJuan Quintela 357df2c718SJuan Quintela static const VirtioPCIDeviceTypeInfo virtio_input_host_pci_info = { 36d923e305SGerd Hoffmann .generic_name = TYPE_VIRTIO_INPUT_HOST_PCI, 377df2c718SJuan Quintela .parent = TYPE_VIRTIO_INPUT_PCI, 387df2c718SJuan Quintela .instance_size = sizeof(VirtIOInputHostPCI), 397df2c718SJuan Quintela .instance_init = virtio_host_initfn, 407df2c718SJuan Quintela }; 417df2c718SJuan Quintela 427df2c718SJuan Quintela static void virtio_input_host_pci_register(void) 437df2c718SJuan Quintela { 447df2c718SJuan Quintela virtio_pci_types_register(&virtio_input_host_pci_info); 457df2c718SJuan Quintela } 467df2c718SJuan Quintela 477df2c718SJuan Quintela type_init(virtio_input_host_pci_register) 48