1 #ifndef VIRTIO_VGA_H 2 #define VIRTIO_VGA_H 3 4 #include "hw/virtio/virtio-gpu-pci.h" 5 #include "vga_int.h" 6 #include "qom/object.h" 7 8 /* 9 * virtio-vga-base: This extends VirtioPCIProxy. 10 */ 11 #define TYPE_VIRTIO_VGA_BASE "virtio-vga-base" 12 typedef struct VirtIOVGABase VirtIOVGABase; 13 typedef struct VirtIOVGABaseClass VirtIOVGABaseClass; 14 #define VIRTIO_VGA_BASE(obj) \ 15 OBJECT_CHECK(VirtIOVGABase, (obj), TYPE_VIRTIO_VGA_BASE) 16 #define VIRTIO_VGA_BASE_GET_CLASS(obj) \ 17 OBJECT_GET_CLASS(VirtIOVGABaseClass, obj, TYPE_VIRTIO_VGA_BASE) 18 #define VIRTIO_VGA_BASE_CLASS(klass) \ 19 OBJECT_CLASS_CHECK(VirtIOVGABaseClass, klass, TYPE_VIRTIO_VGA_BASE) 20 21 struct VirtIOVGABase { 22 VirtIOPCIProxy parent_obj; 23 24 VirtIOGPUBase *vgpu; 25 VGACommonState vga; 26 MemoryRegion vga_mrs[3]; 27 }; 28 29 struct VirtIOVGABaseClass { 30 VirtioPCIClass parent_class; 31 32 DeviceReset parent_reset; 33 }; 34 35 #endif /* VIRTIO_VGA_H */ 36