Lines Matching refs:events
106 struct dvb_fe_events events; member
204 struct dvb_fe_events *events = &fepriv->events; in dvb_frontend_add_event() local
213 mutex_lock(&events->mtx); in dvb_frontend_add_event()
215 wp = (events->eventw + 1) % MAX_EVENT; in dvb_frontend_add_event()
216 if (wp == events->eventr) { in dvb_frontend_add_event()
217 events->overflow = 1; in dvb_frontend_add_event()
218 events->eventr = (events->eventr + 1) % MAX_EVENT; in dvb_frontend_add_event()
221 e = &events->events[events->eventw]; in dvb_frontend_add_event()
225 events->eventw = wp; in dvb_frontend_add_event()
227 mutex_unlock(&events->mtx); in dvb_frontend_add_event()
229 wake_up_interruptible (&events->wait_queue); in dvb_frontend_add_event()
236 struct dvb_fe_events *events = &fepriv->events; in dvb_frontend_get_event() local
240 if (events->overflow) { in dvb_frontend_get_event()
241 events->overflow = 0; in dvb_frontend_get_event()
245 if (events->eventw == events->eventr) { in dvb_frontend_get_event()
253 ret = wait_event_interruptible (events->wait_queue, in dvb_frontend_get_event()
254 events->eventw != events->eventr); in dvb_frontend_get_event()
263 mutex_lock(&events->mtx); in dvb_frontend_get_event()
264 *event = events->events[events->eventr]; in dvb_frontend_get_event()
265 events->eventr = (events->eventr + 1) % MAX_EVENT; in dvb_frontend_get_event()
266 mutex_unlock(&events->mtx); in dvb_frontend_get_event()
274 struct dvb_fe_events *events = &fepriv->events; in dvb_frontend_clear_events() local
276 mutex_lock(&events->mtx); in dvb_frontend_clear_events()
277 events->eventr = events->eventw; in dvb_frontend_clear_events()
278 mutex_unlock(&events->mtx); in dvb_frontend_clear_events()
2546 poll_wait (file, &fepriv->events.wait_queue, wait); in dvb_frontend_poll()
2548 if (fepriv->events.eventw != fepriv->events.eventr) in dvb_frontend_poll()
2632 fepriv->events.eventr = fepriv->events.eventw = 0; in dvb_frontend_open()
2759 init_waitqueue_head (&fepriv->events.wait_queue); in dvb_register_frontend()
2760 mutex_init(&fepriv->events.mtx); in dvb_register_frontend()