gem5
v20.0.0.2
|
Callback interface from PCI devices to the host. More...
#include <host.hh>
Public Member Functions | |
DeviceInterface ()=delete | |
void | operator= (const DeviceInterface &)=delete |
const std::string | name () const |
void | postInt () |
Post a PCI interrupt to the CPU. More... | |
void | clearInt () |
Clear a posted PCI interrupt. More... | |
Addr | pioAddr (Addr addr) const |
Calculate the physical address of an IO location on the PCI bus. More... | |
Addr | memAddr (Addr addr) const |
Calculate the physical address of a non-prefetchable memory location in the PCI address space. More... | |
Addr | dmaAddr (Addr addr) const |
Calculate the physical address of a prefetchable memory location in the PCI address space. More... | |
Protected Member Functions | |
DeviceInterface (PciHost &host, PciBusAddr &bus_addr, PciIntPin pin) | |
Instantiate a device interface. More... | |
Protected Attributes | |
PciHost & | host |
const PciBusAddr | busAddr |
const PciIntPin | interruptPin |
Friends | |
class | ::PciHost |
Callback interface from PCI devices to the host.
Devices get an instance of this object when they register themselves with the host using the PciHost::registerDevice() call.
|
protected |
|
delete |
void PciHost::DeviceInterface::clearInt | ( | void | ) |
Clear a posted PCI interrupt.
Definition at line 110 of file host.cc.
References busAddr, PciHost::clearInt(), DPRINTF, host, and interruptPin.
Referenced by GenericPciHost::dmaAddr(), and PciDevice::intrClear().
Calculate the physical address of a prefetchable memory location in the PCI address space.
addr | Address in the PCI DMA memory address space |
Definition at line 146 of file host.hh.
References busAddr, PciHost::dmaAddr(), and host.
Referenced by PciDevice::pciToDma().
Calculate the physical address of a non-prefetchable memory location in the PCI address space.
addr | Address in the PCI memory address space |
Definition at line 137 of file host.hh.
References busAddr, host, and PciHost::memAddr().
Referenced by PciDevice::writeConfig().
const std::string PciHost::DeviceInterface::name | ( | ) | const |
Definition at line 95 of file host.cc.
References PciBusAddr::bus, busAddr, csprintf(), PciBusAddr::dev, PciBusAddr::func, host, and SimObject::name().
|
delete |
Calculate the physical address of an IO location on the PCI bus.
addr | Address in the PCI IO address space |
Definition at line 128 of file host.hh.
References busAddr, host, and PciHost::pioAddr().
Referenced by PciDevice::writeConfig().
void PciHost::DeviceInterface::postInt | ( | ) |
Post a PCI interrupt to the CPU.
Definition at line 102 of file host.cc.
References busAddr, DPRINTF, host, interruptPin, and PciHost::postInt().
Referenced by GenericPciHost::dmaAddr(), and PciDevice::intrPost().
|
protected |
|
protected |
|
protected |
Definition at line 152 of file host.hh.
Referenced by clearInt(), and postInt().