diff options
author | Egbert Eich <eich@suse.de> | 2013-04-16 07:36:56 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-04-18 03:43:29 -0400 |
commit | 995e6b3dcfa25e5837f103ae6e732fbca1790dd9 (patch) | |
tree | f38ed7ecb7e9a1c9be4fed9f4d1dba268ad72261 | |
parent | 821450c6938d9228d8569d54d5c369985b1cc8dd (diff) |
drm/i915: Mask out the HPD irq bits before setting them individually.
To disable previously enabled HPD IRQs we need to reset them and
set the enabled ones individually.
Signed-off-by: Egbert Eich <eich@suse.de>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r-- | drivers/gpu/drm/i915/i915_irq.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 2b4967014dc6..b59df6e989cb 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c | |||
@@ -2128,9 +2128,11 @@ static void ibx_hpd_irq_setup(struct drm_device *dev) | |||
2128 | u32 hotplug; | 2128 | u32 hotplug; |
2129 | 2129 | ||
2130 | if (HAS_PCH_IBX(dev)) { | 2130 | if (HAS_PCH_IBX(dev)) { |
2131 | mask &= ~SDE_HOTPLUG_MASK; | ||
2131 | list_for_each_entry(intel_encoder, &mode_config->encoder_list, base.head) | 2132 | list_for_each_entry(intel_encoder, &mode_config->encoder_list, base.head) |
2132 | mask |= hpd_ibx[intel_encoder->hpd_pin]; | 2133 | mask |= hpd_ibx[intel_encoder->hpd_pin]; |
2133 | } else { | 2134 | } else { |
2135 | mask &= ~SDE_HOTPLUG_MASK_CPT; | ||
2134 | list_for_each_entry(intel_encoder, &mode_config->encoder_list, base.head) | 2136 | list_for_each_entry(intel_encoder, &mode_config->encoder_list, base.head) |
2135 | mask |= hpd_cpt[intel_encoder->hpd_pin]; | 2137 | mask |= hpd_cpt[intel_encoder->hpd_pin]; |
2136 | } | 2138 | } |