Commit 5876fa0d authored by Daniel Vetter's avatar Daniel Vetter

drm/i915: fold the queue_work into intel_hpd_irq_handler

Everywhere the same.

Note that this patch leaves unnecessary braces behind, but the next
patch will kill those all anyway (including the if itself) so I've
figured I can keep the diff a bit smaller.

v2: Rebase on top of the i965g/gm sdvo hpd fix.

Cc: Egbert Eich <eich@suse.de>
Reviewed-by: default avatarEgbert Eich <eich@suse.de>
Reviewed-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 10a504de
...@@ -909,6 +909,9 @@ static inline void intel_hpd_irq_handler(struct drm_device *dev, ...@@ -909,6 +909,9 @@ static inline void intel_hpd_irq_handler(struct drm_device *dev,
if (storm_detected) if (storm_detected)
dev_priv->display.hpd_irq_setup(dev); dev_priv->display.hpd_irq_setup(dev);
queue_work(dev_priv->wq,
&dev_priv->hotplug_work);
} }
static void gmbus_irq_handler(struct drm_device *dev) static void gmbus_irq_handler(struct drm_device *dev)
...@@ -1017,8 +1020,6 @@ static irqreturn_t valleyview_irq_handler(int irq, void *arg) ...@@ -1017,8 +1020,6 @@ static irqreturn_t valleyview_irq_handler(int irq, void *arg)
hotplug_status); hotplug_status);
if (hotplug_trigger) { if (hotplug_trigger) {
intel_hpd_irq_handler(dev, hotplug_trigger, hpd_status_i915); intel_hpd_irq_handler(dev, hotplug_trigger, hpd_status_i915);
queue_work(dev_priv->wq,
&dev_priv->hotplug_work);
} }
I915_WRITE(PORT_HOTPLUG_STAT, hotplug_status); I915_WRITE(PORT_HOTPLUG_STAT, hotplug_status);
I915_READ(PORT_HOTPLUG_STAT); I915_READ(PORT_HOTPLUG_STAT);
...@@ -1047,7 +1048,6 @@ static void ibx_irq_handler(struct drm_device *dev, u32 pch_iir) ...@@ -1047,7 +1048,6 @@ static void ibx_irq_handler(struct drm_device *dev, u32 pch_iir)
if (hotplug_trigger) { if (hotplug_trigger) {
intel_hpd_irq_handler(dev, hotplug_trigger, hpd_ibx); intel_hpd_irq_handler(dev, hotplug_trigger, hpd_ibx);
queue_work(dev_priv->wq, &dev_priv->hotplug_work);
} }
if (pch_iir & SDE_AUDIO_POWER_MASK) { if (pch_iir & SDE_AUDIO_POWER_MASK) {
int port = ffs((pch_iir & SDE_AUDIO_POWER_MASK) >> int port = ffs((pch_iir & SDE_AUDIO_POWER_MASK) >>
...@@ -1151,7 +1151,6 @@ static void cpt_irq_handler(struct drm_device *dev, u32 pch_iir) ...@@ -1151,7 +1151,6 @@ static void cpt_irq_handler(struct drm_device *dev, u32 pch_iir)
if (hotplug_trigger) { if (hotplug_trigger) {
intel_hpd_irq_handler(dev, hotplug_trigger, hpd_cpt); intel_hpd_irq_handler(dev, hotplug_trigger, hpd_cpt);
queue_work(dev_priv->wq, &dev_priv->hotplug_work);
} }
if (pch_iir & SDE_AUDIO_POWER_MASK_CPT) { if (pch_iir & SDE_AUDIO_POWER_MASK_CPT) {
int port = ffs((pch_iir & SDE_AUDIO_POWER_MASK_CPT) >> int port = ffs((pch_iir & SDE_AUDIO_POWER_MASK_CPT) >>
...@@ -3228,8 +3227,6 @@ static irqreturn_t i915_irq_handler(int irq, void *arg) ...@@ -3228,8 +3227,6 @@ static irqreturn_t i915_irq_handler(int irq, void *arg)
hotplug_status); hotplug_status);
if (hotplug_trigger) { if (hotplug_trigger) {
intel_hpd_irq_handler(dev, hotplug_trigger, hpd_status_i915); intel_hpd_irq_handler(dev, hotplug_trigger, hpd_status_i915);
queue_work(dev_priv->wq,
&dev_priv->hotplug_work);
} }
I915_WRITE(PORT_HOTPLUG_STAT, hotplug_status); I915_WRITE(PORT_HOTPLUG_STAT, hotplug_status);
POSTING_READ(PORT_HOTPLUG_STAT); POSTING_READ(PORT_HOTPLUG_STAT);
...@@ -3469,8 +3466,6 @@ static irqreturn_t i965_irq_handler(int irq, void *arg) ...@@ -3469,8 +3466,6 @@ static irqreturn_t i965_irq_handler(int irq, void *arg)
if (hotplug_trigger) { if (hotplug_trigger) {
intel_hpd_irq_handler(dev, hotplug_trigger, intel_hpd_irq_handler(dev, hotplug_trigger,
IS_G4X(dev) ? hpd_status_gen4 : hpd_status_i915); IS_G4X(dev) ? hpd_status_gen4 : hpd_status_i915);
queue_work(dev_priv->wq,
&dev_priv->hotplug_work);
} }
I915_WRITE(PORT_HOTPLUG_STAT, hotplug_status); I915_WRITE(PORT_HOTPLUG_STAT, hotplug_status);
I915_READ(PORT_HOTPLUG_STAT); I915_READ(PORT_HOTPLUG_STAT);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment