1*8fcfc823SAlex Bennée /* 2*8fcfc823SAlex Bennée * virtio-gpio structures 3*8fcfc823SAlex Bennée * 4*8fcfc823SAlex Bennée * Copyright (c) 2022 Linaro Ltd 5*8fcfc823SAlex Bennée * 6*8fcfc823SAlex Bennée * SPDX-License-Identifier: GPL-2.0-or-later 7*8fcfc823SAlex Bennée */ 8*8fcfc823SAlex Bennée 9*8fcfc823SAlex Bennée #ifndef TESTS_LIBQOS_VIRTIO_GPIO_H 10*8fcfc823SAlex Bennée #define TESTS_LIBQOS_VIRTIO_GPIO_H 11*8fcfc823SAlex Bennée 12*8fcfc823SAlex Bennée #include "qgraph.h" 13*8fcfc823SAlex Bennée #include "virtio.h" 14*8fcfc823SAlex Bennée #include "virtio-pci.h" 15*8fcfc823SAlex Bennée 16*8fcfc823SAlex Bennée typedef struct QVhostUserGPIO QVhostUserGPIO; 17*8fcfc823SAlex Bennée typedef struct QVhostUserGPIOPCI QVhostUserGPIOPCI; 18*8fcfc823SAlex Bennée typedef struct QVhostUserGPIODevice QVhostUserGPIODevice; 19*8fcfc823SAlex Bennée 20*8fcfc823SAlex Bennée struct QVhostUserGPIO { 21*8fcfc823SAlex Bennée QVirtioDevice *vdev; 22*8fcfc823SAlex Bennée QVirtQueue **queues; 23*8fcfc823SAlex Bennée }; 24*8fcfc823SAlex Bennée 25*8fcfc823SAlex Bennée struct QVhostUserGPIOPCI { 26*8fcfc823SAlex Bennée QVirtioPCIDevice pci_vdev; 27*8fcfc823SAlex Bennée QVhostUserGPIO gpio; 28*8fcfc823SAlex Bennée }; 29*8fcfc823SAlex Bennée 30*8fcfc823SAlex Bennée struct QVhostUserGPIODevice { 31*8fcfc823SAlex Bennée QOSGraphObject obj; 32*8fcfc823SAlex Bennée QVhostUserGPIO gpio; 33*8fcfc823SAlex Bennée }; 34*8fcfc823SAlex Bennée 35*8fcfc823SAlex Bennée #endif 36