qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

pci-spapr.h (935B)


      1 /*
      2  * libqos PCI bindings for SPAPR
      3  *
      4  * This work is licensed under the terms of the GNU GPL, version 2 or later.
      5  * See the COPYING file in the top-level directory.
      6  */
      7 
      8 #ifndef LIBQOS_PCI_SPAPR_H
      9 #define LIBQOS_PCI_SPAPR_H
     10 
     11 #include "libqos-malloc.h"
     12 #include "pci.h"
     13 #include "qgraph.h"
     14 
     15 /* From include/hw/pci-host/spapr.h */
     16 
     17 typedef struct QPCIWindow {
     18     uint64_t pci_base;    /* window address in PCI space */
     19     uint64_t size;        /* window size */
     20 } QPCIWindow;
     21 
     22 typedef struct QPCIBusSPAPR {
     23     QOSGraphObject obj;
     24     QPCIBus bus;
     25     QGuestAllocator *alloc;
     26 
     27     uint64_t buid;
     28 
     29     uint64_t pio_cpu_base;
     30     QPCIWindow pio;
     31 
     32     uint64_t mmio32_cpu_base;
     33     QPCIWindow mmio32;
     34 } QPCIBusSPAPR;
     35 
     36 void qpci_init_spapr(QPCIBusSPAPR *ret, QTestState *qts,
     37                      QGuestAllocator *alloc);
     38 QPCIBus *qpci_new_spapr(QTestState *qts, QGuestAllocator *alloc);
     39 void     qpci_free_spapr(QPCIBus *bus);
     40 
     41 #endif