Go to the documentation of this file.
38 #ifndef __DEV_ARM_SP804_HH__
39 #define __DEV_ARM_SP804_HH__
42 #include "params/Sp804.hh"
115 std::string
name()
const {
return _name; }
164 #endif // __DEV_ARM_SP804_HH__
void serialize(CheckpointOut &cp) const override
Serialize an object.
void unserialize(CheckpointIn &cp) override
Unserialize an object.
void read(PacketPtr pkt, Addr daddr)
Handle read for a single timer.
Bitfield< 3, 2 > timerPrescale
EndBitUnion(CTRL) protected Sp804 * parent
Pointer to parent class.
bool rawInt
If timer has caused an interrupt.
Basic support for object serialization.
Timer timer0
Timers that do the actual work.
uint64_t Tick
Tick count type.
uint32_t loadValue
Value to load into counter when periodic mode reaches 0.
void serialize(CheckpointOut &cp) const override
Serialize an object.
CTRL control
Control register as specified above.
void write(PacketPtr pkt, Addr daddr)
Handle write for a single timer.
void restartCounter(uint32_t val)
Restart the counter ticking at val.
void unserialize(CheckpointIn &cp) override
Unserialize an object.
Sp804(Params *p)
The constructor for RealView just registers itself with the MMU.
ArmInterruptPin *const interrupt
Pointer to the interrupt pin.
const Params * params() const
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.
Timer(std::string __name, Sp804 *parent, ArmInterruptPin *_interrupt, Tick clock)
EventFunctionWrapper zeroEvent
void counterAtZero()
Called when the counter reaches 0.
const Tick clock
Number of ticks in a clock input.
AmbaPioDeviceParams Params
const SimObjectParams * _params
Cached copy of the object parameters.
Bitfield< 7 > timerEnable
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
Generic representation of an Arm interrupt pin.
Tick read(PacketPtr pkt) override
Handle a read to the device.
std::ostream CheckpointOut
EndBitUnion(UserDescFlags) struct UserDesc32
bool pendingInt
If an interrupt is currently pending.
BitUnion32(CTRL) Bitfield< 0 > oneShot
Generated on Wed Sep 30 2020 14:02:10 for gem5 by doxygen 1.8.17