Lines Matching full:wait
22 struct omap_irq_wait *wait; in omap_irq_update() local
27 list_for_each_entry(wait, &priv->wait_list, node) in omap_irq_update()
28 irqmask |= wait->irqmask; in omap_irq_update()
35 static void omap_irq_wait_handler(struct omap_irq_wait *wait) in omap_irq_wait_handler() argument
37 wait->count--; in omap_irq_wait_handler()
38 wake_up(&wait->wq); in omap_irq_wait_handler()
45 struct omap_irq_wait *wait = kzalloc(sizeof(*wait), GFP_KERNEL); in omap_irq_wait_init() local
48 init_waitqueue_head(&wait->wq); in omap_irq_wait_init()
49 wait->irqmask = irqmask; in omap_irq_wait_init()
50 wait->count = count; in omap_irq_wait_init()
53 list_add(&wait->node, &priv->wait_list); in omap_irq_wait_init()
57 return wait; in omap_irq_wait_init()
60 int omap_irq_wait(struct drm_device *dev, struct omap_irq_wait *wait, in omap_irq_wait() argument
67 ret = wait_event_timeout(wait->wq, (wait->count <= 0), timeout); in omap_irq_wait()
70 list_del(&wait->node); in omap_irq_wait()
74 kfree(wait); in omap_irq_wait()
211 struct omap_irq_wait *wait, *n; in omap_irq_handler() local
242 list_for_each_entry_safe(wait, n, &priv->wait_list, node) { in omap_irq_handler()
243 if (wait->irqmask & irqstatus) in omap_irq_handler()
244 omap_irq_wait_handler(wait); in omap_irq_handler()