40 #ifndef __DEV_ARM_SP804_HH__
41 #define __DEV_ARM_SP804_HH__
44 #include "params/Sp804.hh"
114 Timer(std::
string __name,
Sp804 *parent,
int int_num,
Tick clock);
116 std::
string name()
const {
return _name; }
168 #endif // __DEV_ARM_SP804_HH__
void counterAtZero()
Called when the counter reaches 0.
void read(PacketPtr pkt, Addr daddr)
Handle read for a single timer.
EndBitUnion(UserDescFlags) struct UserDesc32
EndBitUnion(CTRL) protected Sp804 * parent
Pointer to parent class.
Bitfield< 7 > timerEnable
const Params * params() const
void restartCounter(uint32_t val)
Restart the counter ticking at val.
CTRL control
Control register as specified above.
BitUnion32(CTRL) Bitfield< 0 > oneShot
AmbaPioDeviceParams Params
Timer timer0
Timers that do the actual work.
void serialize(CheckpointOut &cp) const override
Serialize an object.
EventWrapper< Timer,&Timer::counterAtZero > zeroEvent
void unserialize(CheckpointIn &cp) override
Unserialize an object.
Sp804(Params *p)
The constructor for RealView just registers itself with the MMU.
This is a base class for AMBA devices that have to respond to Device and Implementer ID calls...
uint64_t Tick
Tick count type.
void unserialize(CheckpointIn &cp) override
Unserialize an object.
bool pendingInt
If an interrupt is currently pending.
uint32_t loadValue
Value to load into counter when periodic mode reaches 0.
Tick write(PacketPtr pkt) override
All writes are simply ignored.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
A Packet is used to encapsulate a transfer between two objects in the memory system (e...
Basic support for object serialization.
bool rawInt
If timer has caused an interrupt.
std::ostream CheckpointOut
Bitfield< 3, 2 > timerPrescale
const Tick clock
Number of ticks in a clock input.
const SimObjectParams * _params
Cached copy of the object parameters.
void write(PacketPtr pkt, Addr daddr)
Handle write for a single timer.
BaseGic * gic
Pointer to the GIC for causing an interrupt.
const uint32_t intNum
Number of interrupt to cause/clear.
void serialize(CheckpointOut &cp) const override
Serialize an object.
Tick read(PacketPtr pkt) override
Handle a read to the device.