Go to the documentation of this file.
41 #ifndef __DEV_ARM_GICV3_H__
42 #define __DEV_ARM_GICV3_H__
46 #include "params/Gicv3.hh"
103 void clearInt(uint32_t int_id)
override;
104 void clearPPInt(uint32_t int_id, uint32_t cpu)
override;
112 void init()
override;
122 void sendInt(uint32_t int_id)
override;
123 void sendPPInt(uint32_t int_id, uint32_t cpu)
override;
166 #endif //__DEV_ARM_GICV3_H__
std::vector< Gicv3CPUInterface * > cpuInterfaces
static const int INTID_SECURE
Gicv3Redistributor * getRedistributorByAddr(Addr address) const
Gicv3Distributor * getDistributor() const
int ContextID
Globally unique thread context ID.
uint64_t Tick
Tick count type.
void clearPPInt(uint32_t int_id, uint32_t cpu) override
Gicv3Redistributor * getRedistributorByAffinity(uint32_t affinity) const
const Params * params() const
Gicv3Distributor * distributor
static const int INTID_NONSECURE
void clearInt(uint32_t int_id) override
Clear an interrupt from a device that is connected to the GIC.
AddrRangeList getAddrRanges() const override
Every PIO device is obliged to provide an implementation that returns the address ranges the device r...
void serialize(CheckpointOut &cp) const override
Serialize an object.
The AddrRange class encapsulates an address range, and supports a number of tests to check if two ran...
void deassertInt(uint32_t cpu, ArmISA::InterruptTypes int_type)
void sendPPInt(uint32_t int_id, uint32_t cpu) override
Interface call for private peripheral interrupts.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
Gicv3Redistributor * getRedistributor(ContextID context_id) const
void deassertAll(uint32_t cpu)
std::vector< Gicv3Redistributor * > redistributors
void postInt(uint32_t cpu, ArmISA::InterruptTypes int_type)
static const int INTID_SPURIOUS
bool haveAsserted(uint32_t cpu) const
const SimObjectParams * _params
Cached copy of the object parameters.
Gicv3CPUInterface * getCPUInterface(int cpu_id) const
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
Tick read(PacketPtr pkt) override
Pure virtual function that the device must implement.
void init() override
init() is called after all C++ SimObjects have been created and all ports are connected.
Tick write(PacketPtr pkt) override
Pure virtual function that the device must implement.
std::ostream CheckpointOut
bool supportsVersion(GicVersion version) override
Check if version supported.
void unserialize(CheckpointIn &cp) override
Unserialize an object.
void sendInt(uint32_t int_id) override
Post an interrupt from a device that is connected to the GIC.
Generated on Wed Sep 30 2020 14:02:10 for gem5 by doxygen 1.8.17