TEMU provides support for PCI bus based devices.
2. Modelling Requirements
While it is sometimes necessary to implement PCI bridges (e.g. GRPCI2), the more common task is to implement PCI devices.
A PCI device in TEMU must support the following interfaces:
PCIDevIface implementing the PCI device interface. Used for for accessing config info about the PCI device.
MemAccessIface implementing the PCI memory access functions for each BAR.
ExpROMAccessIface implementing accesses to PCI expansion ROM.
That means that MemAccessIface may be either IO or PCI mem. This depends on the hard coded value in the bar.
An example of a PCI device is provided in