Go to the documentation of this file.
34 #ifndef __DEV_AMDGPU_AMDGPU_DEVICE_HH__
35 #define __DEV_AMDGPU_AMDGPU_DEVICE_HH__
43 #include "params/AMDGPUDevice.hh"
96 std::array<uint8_t, ROM_SIZE>
rom;
106 std::unordered_map<uint32_t, uint64_t>
regs;
136 #endif // __DEV_AMDGPU_AMDGPU_DEVICE_HH__
Tick read(PacketPtr pkt) override
Pure virtual function that the device must implement.
std::unordered_map< uint32_t, uint64_t > regs
Device registers - Maps register address to register value.
bool isROM(Addr addr) const
AddrRangeList getAddrRanges() const override
Every PIO device is obliged to provide an implementation that returns the address ranges the device r...
bool contains(const Addr &a) const
Determine if the range contains an address.
void intrPost()
Methods inherited from PciDevice.
constexpr int DOORBELL_BAR
constexpr int FRAMEBUFFER_BAR
void unserialize(CheckpointIn &cp) override
Unserialize an object.
Tick readConfig(PacketPtr pkt) override
Read from the PCI config space data that is stored locally.
void writeMMIO(PacketPtr pkt, Addr offset)
AMDGPUDevice(const AMDGPUDeviceParams &p)
Tick writeConfig(PacketPtr pkt) override
Write to the PCI config space data that is stored locally.
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
uint64_t Tick
Tick count type.
AMDMMIOReader mmioReader
MMIO reader to populate device registers map.
PCI device, base implementation is only config space.
bool checkpoint_before_mmios
void readROM(PacketPtr pkt)
Device model for an AMD GPU.
void serialize(CheckpointOut &cp) const override
Checkpoint support.
void dispatchAccess(PacketPtr pkt, bool read)
Convert a PCI packet into a response.
Helper class to read Linux kernel MMIO trace from amdgpu modprobes.
void readFrame(PacketPtr pkt, Addr offset)
Helper methods to handle specific BAR read/writes.
void readDoorbell(PacketPtr pkt, Addr offset)
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
constexpr uint32_t ROM_SIZE
Tick write(PacketPtr pkt) override
Pure virtual function that the device must implement.
constexpr uint32_t VGA_ROM_DEFAULT
void readMMIO(PacketPtr pkt, Addr offset)
AddrRange romRange
VGA ROM methods.
std::array< uint8_t, ROM_SIZE > rom
std::ostream CheckpointOut
void writeFrame(PacketPtr pkt, Addr offset)
The AddrRange class encapsulates an address range, and supports a number of tests to check if two ran...
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
void writeDoorbell(PacketPtr pkt, Addr offset)
Generated on Wed Jul 28 2021 12:10:25 for gem5 by doxygen 1.8.17