Lines Matching refs:events
106 struct dvb_fe_events events; member
205 struct dvb_fe_events *events = &fepriv->events; in dvb_frontend_add_event() local
214 mutex_lock(&events->mtx); in dvb_frontend_add_event()
216 wp = (events->eventw + 1) % MAX_EVENT; in dvb_frontend_add_event()
217 if (wp == events->eventr) { in dvb_frontend_add_event()
218 events->overflow = 1; in dvb_frontend_add_event()
219 events->eventr = (events->eventr + 1) % MAX_EVENT; in dvb_frontend_add_event()
222 e = &events->events[events->eventw]; in dvb_frontend_add_event()
226 events->eventw = wp; in dvb_frontend_add_event()
228 mutex_unlock(&events->mtx); in dvb_frontend_add_event()
230 wake_up_interruptible (&events->wait_queue); in dvb_frontend_add_event()
237 struct dvb_fe_events *events = &fepriv->events; in dvb_frontend_get_event() local
241 if (events->overflow) { in dvb_frontend_get_event()
242 events->overflow = 0; in dvb_frontend_get_event()
246 if (events->eventw == events->eventr) { in dvb_frontend_get_event()
254 ret = wait_event_interruptible (events->wait_queue, in dvb_frontend_get_event()
255 events->eventw != events->eventr); in dvb_frontend_get_event()
264 mutex_lock(&events->mtx); in dvb_frontend_get_event()
265 *event = events->events[events->eventr]; in dvb_frontend_get_event()
266 events->eventr = (events->eventr + 1) % MAX_EVENT; in dvb_frontend_get_event()
267 mutex_unlock(&events->mtx); in dvb_frontend_get_event()
275 struct dvb_fe_events *events = &fepriv->events; in dvb_frontend_clear_events() local
277 mutex_lock(&events->mtx); in dvb_frontend_clear_events()
278 events->eventr = events->eventw; in dvb_frontend_clear_events()
279 mutex_unlock(&events->mtx); in dvb_frontend_clear_events()
2537 poll_wait (file, &fepriv->events.wait_queue, wait); in dvb_frontend_poll()
2539 if (fepriv->events.eventw != fepriv->events.eventr) in dvb_frontend_poll()
2623 fepriv->events.eventr = fepriv->events.eventw = 0; in dvb_frontend_open()
2750 init_waitqueue_head (&fepriv->events.wait_queue); in dvb_register_frontend()
2751 mutex_init(&fepriv->events.mtx); in dvb_register_frontend()