xref: /qemu/tests/qtest/libqos/virtio-scsi.h (revision a2ce7dbd917a18408cf4bfd132578b46c2752a72)
18f41a3a8SEmanuele Giuseppe Esposito /*
28f41a3a8SEmanuele Giuseppe Esposito  * libqos driver framework
38f41a3a8SEmanuele Giuseppe Esposito  *
48f41a3a8SEmanuele Giuseppe Esposito  * Copyright (c) 2018 Emanuele Giuseppe Esposito <e.emanuelegiuseppe@gmail.com>
58f41a3a8SEmanuele Giuseppe Esposito  *
68f41a3a8SEmanuele Giuseppe Esposito  * This library is free software; you can redistribute it and/or
78f41a3a8SEmanuele Giuseppe Esposito  * modify it under the terms of the GNU Lesser General Public
8dc0ad02dSThomas Huth  * License version 2.1 as published by the Free Software Foundation.
98f41a3a8SEmanuele Giuseppe Esposito  *
108f41a3a8SEmanuele Giuseppe Esposito  * This library is distributed in the hope that it will be useful,
118f41a3a8SEmanuele Giuseppe Esposito  * but WITHOUT ANY WARRANTY; without even the implied warranty of
128f41a3a8SEmanuele Giuseppe Esposito  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
138f41a3a8SEmanuele Giuseppe Esposito  * Lesser General Public License for more details.
148f41a3a8SEmanuele Giuseppe Esposito  *
158f41a3a8SEmanuele Giuseppe Esposito  * You should have received a copy of the GNU Lesser General Public
168f41a3a8SEmanuele Giuseppe Esposito  * License along with this library; if not, see <http://www.gnu.org/licenses/>
178f41a3a8SEmanuele Giuseppe Esposito  */
188f41a3a8SEmanuele Giuseppe Esposito 
19f91005e1SMarkus Armbruster #ifndef TESTS_LIBQOS_VIRTIO_SCSI_H
20f91005e1SMarkus Armbruster #define TESTS_LIBQOS_VIRTIO_SCSI_H
21f91005e1SMarkus Armbruster 
22*a2ce7dbdSPaolo Bonzini #include "qgraph.h"
23*a2ce7dbdSPaolo Bonzini #include "virtio.h"
24*a2ce7dbdSPaolo Bonzini #include "virtio-pci.h"
258f41a3a8SEmanuele Giuseppe Esposito 
268f41a3a8SEmanuele Giuseppe Esposito typedef struct QVirtioSCSI QVirtioSCSI;
278f41a3a8SEmanuele Giuseppe Esposito typedef struct QVirtioSCSIPCI QVirtioSCSIPCI;
288f41a3a8SEmanuele Giuseppe Esposito typedef struct QVirtioSCSIDevice QVirtioSCSIDevice;
298f41a3a8SEmanuele Giuseppe Esposito 
308f41a3a8SEmanuele Giuseppe Esposito struct QVirtioSCSI {
318f41a3a8SEmanuele Giuseppe Esposito     QVirtioDevice *vdev;
328f41a3a8SEmanuele Giuseppe Esposito };
338f41a3a8SEmanuele Giuseppe Esposito 
348f41a3a8SEmanuele Giuseppe Esposito struct QVirtioSCSIPCI {
358f41a3a8SEmanuele Giuseppe Esposito     QVirtioPCIDevice pci_vdev;
368f41a3a8SEmanuele Giuseppe Esposito     QVirtioSCSI scsi;
378f41a3a8SEmanuele Giuseppe Esposito };
388f41a3a8SEmanuele Giuseppe Esposito 
398f41a3a8SEmanuele Giuseppe Esposito struct QVirtioSCSIDevice {
408f41a3a8SEmanuele Giuseppe Esposito     QOSGraphObject obj;
418f41a3a8SEmanuele Giuseppe Esposito     QVirtioSCSI scsi;
428f41a3a8SEmanuele Giuseppe Esposito };
43f91005e1SMarkus Armbruster 
44f91005e1SMarkus Armbruster #endif
45