boolean TimerInitialize (TTimer *pThis) { assert (pThis != 0); assert (pThis->m_pInterruptSystem != 0); InterruptSystemConnectIRQ (pThis->m_pInterruptSystem, ARM_IRQ_TIMER3, TimerInterruptHandler, pThis); DataMemBarrier (); write32 (ARM_SYSTIMER_CLO, -(30 * CLOCKHZ)); // timer wraps soon, to check for problems write32 (ARM_SYSTIMER_C3, read32 (ARM_SYSTIMER_CLO) + CLOCKHZ / HZ); TimerTuneMsDelay (pThis); DataMemBarrier (); return TRUE; }
void ConnectInterrupt (unsigned nIRQ, TInterruptHandler *pHandler, void *pParam) { InterruptSystemConnectIRQ (InterruptSystemGet (), nIRQ, pHandler, pParam); }
void ConnectInterrupt(unsigned IRQ, TInterruptHandler *Handler, void *Param) { InterruptSystemConnectIRQ(IRQ, Handler, Param); }