Lines Matching refs:irqwait
338 drm_via_irqwait_t irqwait;
348 DRM_COPY_FROM_USER_IOCTL(irqwait, argp, sizeof(irqwait));
349 if (irqwait.request.irq >= dev_priv->num_irqs) {
351 irqwait.request.irq);
355 cur_irq += irqwait.request.irq;
357 switch (irqwait.request.type & ~VIA_IRQ_FLAGS_MASK) {
359 irqwait.request.sequence += atomic_read(&cur_irq->irq_received);
360 irqwait.request.type &= ~_DRM_VBLANK_RELATIVE;
367 if (irqwait.request.type & VIA_IRQ_SIGNAL) {
373 force_sequence = (irqwait.request.type & VIA_IRQ_FORCE_SEQUENCE);
375 ret = via_driver_irq_wait(dev, irqwait.request.irq, force_sequence,
376 &irqwait.request.sequence);
378 irqwait.reply.tval_sec = now.tv_sec;
379 irqwait.reply.tval_usec = now.tv_usec;
381 DRM_COPY_TO_USER_IOCTL(argp, irqwait, sizeof(irqwait));