44#ifndef __DEV_ARM_GIC_V2M_H__
45#define __DEV_ARM_GIC_V2M_H__
51#include "params/Gicv2m.hh"
52#include "params/Gicv2mFrame.hh"
Base class for ARM GIC implementations.
Gicv2mFrame(const Params &p)
const unsigned int spi_len
const unsigned int spi_base
BaseGic * gic
Gic to which we fire interrupts.
unsigned int log2framenum
Count of number of configured frames, as log2(frames)
virtual Tick read(PacketPtr pkt)
A PIO read to the device.
virtual AddrRangeList getAddrRanges() const
Return the address ranges used by the Gicv2m This is the set of frame addresses.
static const int FRAME_SIZE
virtual Tick write(PacketPtr pkt)
A PIO read to the device.
int frameFromAddr(Addr a) const
Determine which frame a PIO access lands in.
const Tick pioDelay
Latency for an MMIO operation.
std::vector< Gicv2mFrame * > frames
A set of configured hardware frames.
static const int MSI_SETSPI_NSR
static const int MSI_TYPER
PioDevice(const Params &p)
std::list< AddrRange > AddrRangeList
Convenience typedef for a collection of address ranges.
SimObject(const Params &p)
Copyright (c) 2024 Arm Limited All rights reserved.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
uint64_t Tick
Tick count type.