summaryrefslogtreecommitdiff
path: root/shared-core
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2008-12-23 11:22:44 +1000
committerDave Airlie <airlied@redhat.com>2008-12-23 11:30:37 +1000
commitb48bd3a036efa3c3aa759759a5be4f80f1c3ac72 (patch)
tree19f1821a6d6b02924e37c0574c1915820c82a7ae /shared-core
parentdfd7fdafd8a2bad0d63ced4a969b6278c221c000 (diff)
radeon: only write irq regs if irq is enabled
Diffstat (limited to 'shared-core')
-rw-r--r--shared-core/radeon_irq.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/shared-core/radeon_irq.c b/shared-core/radeon_irq.c
index 69569961..836f384d 100644
--- a/shared-core/radeon_irq.c
+++ b/shared-core/radeon_irq.c
@@ -44,7 +44,8 @@ void radeon_irq_set_state(struct drm_device *dev, u32 mask, int state)
else
dev_priv->irq_enable_reg &= ~mask;
- RADEON_WRITE(RADEON_GEN_INT_CNTL, dev_priv->irq_enable_reg);
+ if (dev->irq_enabled)
+ RADEON_WRITE(RADEON_GEN_INT_CNTL, dev_priv->irq_enable_reg);
}
static void r500_vbl_irq_set_state(struct drm_device *dev, u32 mask, int state)
@@ -56,7 +57,8 @@ static void r500_vbl_irq_set_state(struct drm_device *dev, u32 mask, int state)
else
dev_priv->r500_disp_irq_reg &= ~mask;
- RADEON_WRITE(R500_DxMODE_INT_MASK, dev_priv->r500_disp_irq_reg);
+ if (dev->irq_enabled)
+ RADEON_WRITE(R500_DxMODE_INT_MASK, dev_priv->r500_disp_irq_reg);
}
int radeon_enable_vblank(struct drm_device *dev, int crtc)