Lines Matching refs:dev_priv
100 drm_via_private_t *dev_priv = dev->dev_private; in via_get_vblank_counter() local
105 return atomic_read(&dev_priv->vbl_received); in via_get_vblank_counter()
111 drm_via_private_t *dev_priv = (drm_via_private_t *) dev->dev_private; in via_driver_irq_handler() local
115 drm_via_irq_t *cur_irq = dev_priv->via_irqs; in via_driver_irq_handler()
120 atomic_inc(&dev_priv->vbl_received); in via_driver_irq_handler()
121 if (!(atomic_read(&dev_priv->vbl_received) & 0x0F)) { in via_driver_irq_handler()
123 if (dev_priv->last_vblank_valid) { in via_driver_irq_handler()
124 dev_priv->usec_per_vblank = in via_driver_irq_handler()
126 &dev_priv->last_vblank) >> 4; in via_driver_irq_handler()
128 dev_priv->last_vblank = cur_vblank; in via_driver_irq_handler()
129 dev_priv->last_vblank_valid = 1; in via_driver_irq_handler()
131 if (!(atomic_read(&dev_priv->vbl_received) & 0xFF)) { in via_driver_irq_handler()
133 dev_priv->usec_per_vblank); in via_driver_irq_handler()
139 for (i = 0; i < dev_priv->num_irqs; ++i) { in via_driver_irq_handler()
144 if (dev_priv->irq_map[drm_via_irq_dma0_td] == i) in via_driver_irq_handler()
146 else if (dev_priv->irq_map[drm_via_irq_dma1_td] == i) in via_driver_irq_handler()
162 static __inline__ void viadrv_acknowledge_irqs(drm_via_private_t *dev_priv) in viadrv_acknowledge_irqs() argument
166 if (dev_priv) { in viadrv_acknowledge_irqs()
170 dev_priv->irq_pending_mask); in viadrv_acknowledge_irqs()
176 drm_via_private_t *dev_priv = dev->dev_private; in via_enable_vblank() local
195 drm_via_private_t *dev_priv = dev->dev_private; in via_disable_vblank() local
212 drm_via_private_t *dev_priv = (drm_via_private_t *) dev->dev_private; in via_driver_irq_wait() local
221 if (!dev_priv) { in via_driver_irq_wait()
231 real_irq = dev_priv->irq_map[irq]; in via_driver_irq_wait()
239 masks = dev_priv->irq_masks; in via_driver_irq_wait()
240 cur_irq = dev_priv->via_irqs + real_irq; in via_driver_irq_wait()
264 drm_via_private_t *dev_priv = (drm_via_private_t *) dev->dev_private; in via_driver_irq_preinstall() local
269 DRM_DEBUG("dev_priv: %p\n", dev_priv); in via_driver_irq_preinstall()
270 if (dev_priv) { in via_driver_irq_preinstall()
271 cur_irq = dev_priv->via_irqs; in via_driver_irq_preinstall()
273 dev_priv->irq_enable_mask = VIA_IRQ_VBLANK_ENABLE; in via_driver_irq_preinstall()
274 dev_priv->irq_pending_mask = VIA_IRQ_VBLANK_PENDING; in via_driver_irq_preinstall()
276 if (dev_priv->chipset == VIA_PRO_GROUP_A || in via_driver_irq_preinstall()
277 dev_priv->chipset == VIA_DX9_0) { in via_driver_irq_preinstall()
278 dev_priv->irq_masks = via_pro_group_a_irqs; in via_driver_irq_preinstall()
279 dev_priv->num_irqs = via_num_pro_group_a; in via_driver_irq_preinstall()
280 dev_priv->irq_map = via_irqmap_pro_group_a; in via_driver_irq_preinstall()
282 dev_priv->irq_masks = via_unichrome_irqs; in via_driver_irq_preinstall()
283 dev_priv->num_irqs = via_num_unichrome; in via_driver_irq_preinstall()
284 dev_priv->irq_map = via_irqmap_unichrome; in via_driver_irq_preinstall()
287 for (i = 0; i < dev_priv->num_irqs; ++i) { in via_driver_irq_preinstall()
289 cur_irq->enable_mask = dev_priv->irq_masks[i][0]; in via_driver_irq_preinstall()
290 cur_irq->pending_mask = dev_priv->irq_masks[i][1]; in via_driver_irq_preinstall()
292 dev_priv->irq_enable_mask |= cur_irq->enable_mask; in via_driver_irq_preinstall()
293 dev_priv->irq_pending_mask |= cur_irq->pending_mask; in via_driver_irq_preinstall()
299 dev_priv->last_vblank_valid = 0; in via_driver_irq_preinstall()
304 ~(dev_priv->irq_enable_mask)); in via_driver_irq_preinstall()
307 viadrv_acknowledge_irqs(dev_priv); in via_driver_irq_preinstall()
313 drm_via_private_t *dev_priv = (drm_via_private_t *) dev->dev_private; in via_driver_irq_postinstall() local
317 if (!dev_priv) in via_driver_irq_postinstall()
322 | dev_priv->irq_enable_mask); in via_driver_irq_postinstall()
333 drm_via_private_t *dev_priv = (drm_via_private_t *) dev->dev_private; in via_driver_irq_uninstall() local
337 if (dev_priv) { in via_driver_irq_uninstall()
346 ~(VIA_IRQ_VBLANK_ENABLE | dev_priv->irq_enable_mask)); in via_driver_irq_uninstall()
355 drm_via_private_t *dev_priv = (drm_via_private_t *) dev->dev_private; in via_wait_irq() local
356 drm_via_irq_t *cur_irq = dev_priv->via_irqs; in via_wait_irq()
359 if (irqwait->request.irq >= dev_priv->num_irqs) { in via_wait_irq()