Lines Matching refs:alarm
91 SNDi_Work.alarm[alarmNo].enable = FALSE; in SND_AlarmInit()
92 SNDi_Work.alarm[alarmNo].id = 0; in SND_AlarmInit()
98 SNDAlarm *alarm; in SND_SetupAlarm() local
103 alarm = &SNDi_Work.alarm[alarmNo]; in SND_SetupAlarm()
105 if (alarm->enable) in SND_SetupAlarm()
107 OS_CancelAlarm(&alarm->alarm); in SND_SetupAlarm()
108 alarm->enable = FALSE; in SND_SetupAlarm()
111 alarm->setting.tick = tick; in SND_SetupAlarm()
112 alarm->setting.period = period; in SND_SetupAlarm()
113 alarm->id = (u8)id; in SND_SetupAlarm()
114 alarm->count = 0; in SND_SetupAlarm()
121 SNDAlarm *alarm; in SND_StartAlarm() local
126 alarm = &SNDi_Work.alarm[alarmNo]; in SND_StartAlarm()
128 if (alarm->enable) in SND_StartAlarm()
130 OS_CancelAlarm(&alarm->alarm); in SND_StartAlarm()
131 alarm->enable = FALSE; in SND_StartAlarm()
134 tick = alarm->setting.tick; in SND_StartAlarm()
135 period = alarm->setting.period; in SND_StartAlarm()
136 arg = (void *)((alarm->id << 8) | alarmNo); in SND_StartAlarm()
138 OS_CreateAlarm(&alarm->alarm); in SND_StartAlarm()
142 OS_SetAlarm(&alarm->alarm, tick, AlarmHandler, arg); in SND_StartAlarm()
146 OS_SetPeriodicAlarm(&alarm->alarm, OS_GetTick() + tick, period, AlarmHandler, arg); in SND_StartAlarm()
149 alarm->enable = TRUE; in SND_StartAlarm()
154 SNDAlarm *alarm; in SND_StopAlarm() local
158 alarm = &SNDi_Work.alarm[alarmNo]; in SND_StopAlarm()
160 if (!alarm->enable) in SND_StopAlarm()
163 OS_CancelAlarm(&alarm->alarm); in SND_StopAlarm()
165 alarm->id++; in SND_StopAlarm()
166 alarm->enable = FALSE; in SND_StopAlarm()
181 SNDAlarm *alarm; in AlarmHandler() local
185 alarm = &SNDi_Work.alarm[alarmNo]; in AlarmHandler()
186 if ( id != alarm->id ) { in AlarmHandler()
190 if ( alarm->count < 0xff ) { in AlarmHandler()
191 alarm->count++; in AlarmHandler()
194 while (alarm->count > 0) in AlarmHandler()
199 alarm->count--; in AlarmHandler()