aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_tv.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/i915/intel_tv.c')
-rw-r--r--drivers/gpu/drm/i915/intel_tv.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
index c14341ca3ef9..6f5f59b880f5 100644
--- a/drivers/gpu/drm/i915/intel_tv.c
+++ b/drivers/gpu/drm/i915/intel_tv.c
@@ -1182,18 +1182,17 @@ intel_tv_detect_type(struct intel_tv *intel_tv,
1182 struct intel_crtc *intel_crtc = to_intel_crtc(crtc); 1182 struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
1183 struct drm_device *dev = encoder->dev; 1183 struct drm_device *dev = encoder->dev;
1184 struct drm_i915_private *dev_priv = dev->dev_private; 1184 struct drm_i915_private *dev_priv = dev->dev_private;
1185 unsigned long irqflags;
1186 u32 tv_ctl, save_tv_ctl; 1185 u32 tv_ctl, save_tv_ctl;
1187 u32 tv_dac, save_tv_dac; 1186 u32 tv_dac, save_tv_dac;
1188 int type; 1187 int type;
1189 1188
1190 /* Disable TV interrupts around load detect or we'll recurse */ 1189 /* Disable TV interrupts around load detect or we'll recurse */
1191 if (connector->polled & DRM_CONNECTOR_POLL_HPD) { 1190 if (connector->polled & DRM_CONNECTOR_POLL_HPD) {
1192 spin_lock_irqsave(&dev_priv->irq_lock, irqflags); 1191 spin_lock_irq(&dev_priv->irq_lock);
1193 i915_disable_pipestat(dev_priv, 0, 1192 i915_disable_pipestat(dev_priv, 0,
1194 PIPE_HOTPLUG_INTERRUPT_STATUS | 1193 PIPE_HOTPLUG_INTERRUPT_STATUS |
1195 PIPE_HOTPLUG_TV_INTERRUPT_STATUS); 1194 PIPE_HOTPLUG_TV_INTERRUPT_STATUS);
1196 spin_unlock_irqrestore(&dev_priv->irq_lock, irqflags); 1195 spin_unlock_irq(&dev_priv->irq_lock);
1197 } 1196 }
1198 1197
1199 save_tv_dac = tv_dac = I915_READ(TV_DAC); 1198 save_tv_dac = tv_dac = I915_READ(TV_DAC);
@@ -1266,11 +1265,11 @@ intel_tv_detect_type(struct intel_tv *intel_tv,
1266 1265
1267 /* Restore interrupt config */ 1266 /* Restore interrupt config */
1268 if (connector->polled & DRM_CONNECTOR_POLL_HPD) { 1267 if (connector->polled & DRM_CONNECTOR_POLL_HPD) {
1269 spin_lock_irqsave(&dev_priv->irq_lock, irqflags); 1268 spin_lock_irq(&dev_priv->irq_lock);
1270 i915_enable_pipestat(dev_priv, 0, 1269 i915_enable_pipestat(dev_priv, 0,
1271 PIPE_HOTPLUG_INTERRUPT_STATUS | 1270 PIPE_HOTPLUG_INTERRUPT_STATUS |
1272 PIPE_HOTPLUG_TV_INTERRUPT_STATUS); 1271 PIPE_HOTPLUG_TV_INTERRUPT_STATUS);
1273 spin_unlock_irqrestore(&dev_priv->irq_lock, irqflags); 1272 spin_unlock_irq(&dev_priv->irq_lock);
1274 } 1273 }
1275 1274
1276 return type; 1275 return type;