/** * Function documented in platform-cc2650.h */ void cc2650AlarmProcess(otInstance *aInstance) { uint32_t offsetTime; if (sIsRunning) { /* unsinged subtraction will result in the absolute offset */ offsetTime = otPlatAlarmMilliGetNow() - sTime0; if (sAlarmTime <= offsetTime) { sIsRunning = false; #if OPENTHREAD_ENABLE_DIAG if (otPlatDiagModeGet()) { otPlatDiagAlarmFired(aInstance); } else #endif /* OPENTHREAD_ENABLE_DIAG */ { otPlatAlarmMilliFired(aInstance); } } } }
void nrf5AlarmProcess(otInstance *aInstance) { if (sTimerData[kMsTimer].mFireAlarm) { sTimerData[kMsTimer].mFireAlarm = false; #if OPENTHREAD_ENABLE_DIAG if (otPlatDiagModeGet()) { otPlatDiagAlarmFired(aInstance); } else #endif { otPlatAlarmMilliFired(aInstance); } } if (sTimerData[kUsTimer].mFireAlarm) { sTimerData[kUsTimer].mFireAlarm = false; otPlatAlarmMicroFired(aInstance); } }
void kw41zAlarmProcess(otInstance *aInstance) { if ((sAlarmTime != 0) && (sTime >= sAlarmTime)) { sAlarmTime = 0; #if OPENTHREAD_ENABLE_DIAG if (otPlatDiagModeGet()) { otPlatDiagAlarmFired(aInstance); } else #endif { otPlatAlarmMilliFired(aInstance); } } }
void samr21AlarmProcess(otInstance *aInstance) { if ((sDeltaTime != 0) && ((sTime - sStartTime) >= sDeltaTime)) { sDeltaTime = 0; #if OPENTHREAD_ENABLE_DIAG if (otPlatDiagModeGet()) { otPlatDiagAlarmFired(aInstance); } else #endif { otPlatAlarmMilliFired(aInstance); } } }
void platformAlarmProcess(otInstance *aInstance) { int32_t remaining; if (sIsMsRunning) { remaining = (int32_t)(sMsAlarm - otPlatAlarmMilliGetNow()); if (remaining <= 0) { sIsMsRunning = false; #if OPENTHREAD_ENABLE_DIAG if (otPlatDiagModeGet()) { otPlatDiagAlarmFired(aInstance); } else #endif { otPlatAlarmMilliFired(aInstance); } } } #if OPENTHREAD_CONFIG_ENABLE_PLATFORM_USEC_TIMER if (sIsUsRunning) { remaining = (int32_t)(sUsAlarm - otPlatAlarmMicroGetNow()); if (remaining <= 0) { sIsUsRunning = false; otPlatAlarmMicroFired(aInstance); } } #endif // OPENTHREAD_CONFIG_ENABLE_PLATFORM_USEC_TIMER }
void efr32AlarmProcess(otInstance *aInstance) { uint32_t now = otPlatAlarmMilliGetNow(); uint32_t expires; bool fire = false; otEXPECT(sIsRunning); expires = sAlarmT0 + sAlarmDt; if (sAlarmT0 <= now) { fire = (expires >= sAlarmT0 && expires <= now); } else { fire = (expires >= sAlarmT0 || expires <= now); } if (fire) { sIsRunning = false; #if OPENTHREAD_ENABLE_DIAG if (otPlatDiagModeGet()) { otPlatDiagAlarmFired(aInstance); } else #endif { otPlatAlarmMilliFired(aInstance); } } exit: return; }