38 #ifndef __DEV_ARM_WATCHDOG_SP805_HH__ 39 #define __DEV_ARM_WATCHDOG_SP805_HH__ 109 uint32_t
value(
void)
const;
133 #endif // __DEV_ARM_WATCHDOG_SP805_HH__ static constexpr uint32_t WDOGLOCK_MAGIC
If written into WdogLock, registers are unlocked for writes.
void restartCounter(void)
Restarts the counter to the current timeout interval.
void stopCounter(void)
Stops the counter when watchdog becomes disabled.
Tick timeoutStartTick
Timeout start tick to keep track of the counter value.
uint32_t value(void) const
Returns the current counter value.
Tick read(PacketPtr pkt) override
Pure virtual function that the device must implement.
void timeoutExpired(void)
Triggered when value reaches 0.
Tick write(PacketPtr pkt) override
Pure virtual function that the device must implement.
Sp805(Sp805Params const *params)
EventFunctionWrapper timeoutEvent
Timeout event, triggered when the counter value reaches 0.
bool resetEnabled
Indicates if reset behaviour is enabled when counter reaches 0.
This is a base class for AMBA devices that have to respond to Device and Implementer ID calls...
uint64_t Tick
Tick count type.
uint32_t timeoutInterval
Timeout interval (in cycles) as specified in WdogLoad.
const Params * params() const
void clearInt(void)
Clears any active interrupts.
void unserialize(CheckpointIn &cp) override
Unserialize an object.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
bool enabled
Indicates if watchdog (counter and interrupt) is enabled.
A Packet is used to encapsulate a transfer between two objects in the memory system (e...
bool intRaised
Indicates if an interrupt has been raised by the counter reaching 0.
uint32_t persistedValue
Value as persisted when the watchdog is stopped.
std::ostream CheckpointOut
bool integrationTestEnabled
Indicates if integration test harness is enabled.
void serialize(CheckpointOut &cp) const override
Serialize an object.
bool writeAccessEnabled
Indicates if write access to registers is enabled.
void sendInt(void)
Raises an interrupt.