15#ifndef SIMICS_SYSTEMC_IFACE_PCIE_DEVICE_QUERY_INTERFACE_H
16#define SIMICS_SYSTEMC_IFACE_PCIE_DEVICE_QUERY_INTERFACE_H
Interface that allows the Simics glue to perform snooping and automatic connection of the device's ta...
Definition: pcie_device_query_interface.h:50
virtual ~PcieBaseAddressRegisterQueryInterface()=default
virtual std::vector< PCIeBar > getBarInfo()=0
BAR register information.
Interface required from a SystemC PCIe device in order to connect to Simics.
Definition: pcie_device_query_interface.h:29
virtual sc_core::sc_object * getMsgTargetSocket()=0
virtual ~PcieDeviceQueryInterface()=default
virtual sc_core::sc_object * getConfigTargetSocket()=0
virtual sc_core::sc_object * getPcieMapInitiatorSocket()=0
Definition: pcie_device_query_interface.h:92
virtual void hotReset()=0
virtual ~PcieResetInterface()=default
virtual void functionLevelReset(int function_number)=0
virtual void warmReset()=0
Base Address Register (BAR) configuration.
Definition: pcie_device_query_interface.h:71
int size_bits
Size of BAR, in number of bits.
Definition: pcie_device_query_interface.h:76
bool is_memory
If it is a Memory BAR?
Definition: pcie_device_query_interface.h:74
int function
Function number of the device.
Definition: pcie_device_query_interface.h:72
sc_core::sc_object * target_socket
Where to direct the access.
Definition: pcie_device_query_interface.h:77
bool is_64bit
For memory BAR, is it 64-bit or 32-bit?
Definition: pcie_device_query_interface.h:75
int offset
BAR offset in Configuration Space Header.
Definition: pcie_device_query_interface.h:73