Go to the documentation of this file.
18 #include <FreeNOS/System.h>
23 : m_initialTimerCounter(0)
30 u32 f =
mrc(p15, 0, 0, c14, c0);
44 mcr(p15, 0, 0, c14, c2, value);
49 mcr(p15, 0, 1, c14, c2, value);
virtual Result tick()
Process timer tick.
#define mrc(coproc, opcode1, opcode2, reg, subReg)
Move to ARM from CoProcessor (MRC).
Size m_int
Timer interrupt number.
#define mcr(coproc, opcode1, opcode2, reg, subReg, value)
Move to CoProcessor from ARM (MCR).
Size m_initialTimerCounter
Currently configured initial timer counter.
void setPL1PhysicalTimerControl(const u32 value)
Set Physical Timer 1 control value.
void setPL1PhysicalTimerValue(const u32 value)
Set Physical Timer 1 value.
virtual Result setFrequency(Size hertz)
Set timer frequency.
unsigned int u32
Unsigned 32-bit number.
static const u32 TimerControlEnable
Set this bit in the PL1 control register to enable it.
unsigned int Size
Any sane size indicator cannot go negative.
virtual Result setFrequency(const Size hertz)
Set timer frequency.
u32 getSystemFrequency(void) const
Retrieve system timer frequency.
virtual Result tick()
Process timer tick.