1267f6646SMarc-André Lureau /*
2267f6646SMarc-André Lureau  * Virtio GPU PCI Device
3267f6646SMarc-André Lureau  *
4267f6646SMarc-André Lureau  * Copyright Red Hat, Inc. 2013-2014
5267f6646SMarc-André Lureau  *
6267f6646SMarc-André Lureau  * Authors:
7267f6646SMarc-André Lureau  *     Dave Airlie <airlied@redhat.com>
8267f6646SMarc-André Lureau  *     Gerd Hoffmann <kraxel@redhat.com>
9267f6646SMarc-André Lureau  *
10267f6646SMarc-André Lureau  * This work is licensed under the terms of the GNU GPL, version 2.
11267f6646SMarc-André Lureau  * See the COPYING file in the top-level directory.
12267f6646SMarc-André Lureau  */
13267f6646SMarc-André Lureau 
14267f6646SMarc-André Lureau #ifndef HW_VIRTIO_GPU_PCI_H
15267f6646SMarc-André Lureau #define HW_VIRTIO_GPU_PCI_H
16267f6646SMarc-André Lureau 
17267f6646SMarc-André Lureau #include "hw/virtio/virtio-pci.h"
18267f6646SMarc-André Lureau #include "hw/virtio/virtio-gpu.h"
19db1015e9SEduardo Habkost #include "qom/object.h"
20267f6646SMarc-André Lureau 
21267f6646SMarc-André Lureau 
22267f6646SMarc-André Lureau /*
23267f6646SMarc-André Lureau  * virtio-gpu-pci-base: This extends VirtioPCIProxy.
24267f6646SMarc-André Lureau  */
25267f6646SMarc-André Lureau #define TYPE_VIRTIO_GPU_PCI_BASE "virtio-gpu-pci-base"
26*8063396bSEduardo Habkost OBJECT_DECLARE_SIMPLE_TYPE(VirtIOGPUPCIBase, VIRTIO_GPU_PCI_BASE)
27267f6646SMarc-André Lureau 
28267f6646SMarc-André Lureau struct VirtIOGPUPCIBase {
29267f6646SMarc-André Lureau     VirtIOPCIProxy parent_obj;
30267f6646SMarc-André Lureau     VirtIOGPUBase *vgpu;
31267f6646SMarc-André Lureau };
32267f6646SMarc-André Lureau 
33267f6646SMarc-André Lureau /* to share between PCI and VGA */
34267f6646SMarc-André Lureau #define DEFINE_VIRTIO_GPU_PCI_PROPERTIES(_state)                \
35267f6646SMarc-André Lureau     DEFINE_PROP_BIT("ioeventfd", _state, flags,                 \
36267f6646SMarc-André Lureau                     VIRTIO_PCI_FLAG_USE_IOEVENTFD_BIT, false),  \
37267f6646SMarc-André Lureau         DEFINE_PROP_UINT32("vectors", _state, nvectors, 3)
38267f6646SMarc-André Lureau 
39267f6646SMarc-André Lureau #endif /* HW_VIRTIO_GPU_PCI_H */
40