diff options
author | Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> | 2007-01-08 05:19:57 -0500 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2007-02-07 21:24:25 -0500 |
commit | 689692e73ea4b95c9fa5d5913eade33147db2e5a (patch) | |
tree | 7b6c843a7649f32affd7533092e97a6443b61a01 /drivers/char/drm/via_irq.c | |
parent | 76f625511e61f9d5561885c77d2ff1436ed83797 (diff) |
via: add some new chipsets
Disable 3D functionality and AGP DMA for chipsets with the DX9 3D engine.
Signed-off-by: Dave Airlie <airlied@linux.ie>
Diffstat (limited to 'drivers/char/drm/via_irq.c')
-rw-r--r-- | drivers/char/drm/via_irq.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/drivers/char/drm/via_irq.c b/drivers/char/drm/via_irq.c index c33d068cde19..1ac5941ad237 100644 --- a/drivers/char/drm/via_irq.c +++ b/drivers/char/drm/via_irq.c | |||
@@ -258,12 +258,16 @@ void via_driver_irq_preinstall(drm_device_t * dev) | |||
258 | dev_priv->irq_enable_mask = VIA_IRQ_VBLANK_ENABLE; | 258 | dev_priv->irq_enable_mask = VIA_IRQ_VBLANK_ENABLE; |
259 | dev_priv->irq_pending_mask = VIA_IRQ_VBLANK_PENDING; | 259 | dev_priv->irq_pending_mask = VIA_IRQ_VBLANK_PENDING; |
260 | 260 | ||
261 | dev_priv->irq_masks = (dev_priv->pro_group_a) ? | 261 | if (dev_priv->chipset == VIA_PRO_GROUP_A || |
262 | via_pro_group_a_irqs : via_unichrome_irqs; | 262 | dev_priv->chipset == VIA_DX9_0) { |
263 | dev_priv->num_irqs = (dev_priv->pro_group_a) ? | 263 | dev_priv->irq_masks = via_pro_group_a_irqs; |
264 | via_num_pro_group_a : via_num_unichrome; | 264 | dev_priv->num_irqs = via_num_pro_group_a; |
265 | dev_priv->irq_map = (dev_priv->pro_group_a) ? | 265 | dev_priv->irq_map = via_irqmap_pro_group_a; |
266 | via_irqmap_pro_group_a : via_irqmap_unichrome; | 266 | } else { |
267 | dev_priv->irq_masks = via_unichrome_irqs; | ||
268 | dev_priv->num_irqs = via_num_unichrome; | ||
269 | dev_priv->irq_map = via_irqmap_unichrome; | ||
270 | } | ||
267 | 271 | ||
268 | for (i = 0; i < dev_priv->num_irqs; ++i) { | 272 | for (i = 0; i < dev_priv->num_irqs; ++i) { |
269 | atomic_set(&cur_irq->irq_received, 0); | 273 | atomic_set(&cur_irq->irq_received, 0); |