From: Greg Kroah-Hartman Date: Fri, 25 May 2012 04:39:06 +0000 (+0900) Subject: 3.3-stable patches X-Git-Tag: v3.0.33~20 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=57ebbb2c8ddaf3e804f17d2a1d846e2da48a36f9;p=thirdparty%2Fkernel%2Fstable-queue.git 3.3-stable patches added patches: b43legacy-fix-error-due-to-mmio-access-with-ssb-unpowered.patch drm-i915-avoid-a-double-read-of-pch_iir-during-interrupt-handling.patch gma500-fix-poulsbo-suspend-resume-crash-on-devices-with-sdvo-ports.patch --- diff --git a/queue-3.3/b43legacy-fix-error-due-to-mmio-access-with-ssb-unpowered.patch b/queue-3.3/b43legacy-fix-error-due-to-mmio-access-with-ssb-unpowered.patch new file mode 100644 index 00000000000..8c73f52f683 --- /dev/null +++ b/queue-3.3/b43legacy-fix-error-due-to-mmio-access-with-ssb-unpowered.patch @@ -0,0 +1,32 @@ +From 8f4b20388fa77226a3605627a33a23f90d559e50 Mon Sep 17 00:00:00 2001 +From: Larry Finger +Date: Sun, 6 May 2012 16:01:05 -0500 +Subject: b43legacy: Fix error due to MMIO access with SSB unpowered + +From: Larry Finger + +commit 8f4b20388fa77226a3605627a33a23f90d559e50 upstream. + +There is a dummy read of a PCI MMIO register that occurs before the SSB bus +has been powered, which is an error. This bug has not been seen earlier, +but was apparently exposed when udev was updated to version 182. + +Signed-off-by: Larry Finger +Signed-off-by: John W. Linville +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/net/wireless/b43legacy/main.c | 2 -- + 1 file changed, 2 deletions(-) + +--- a/drivers/net/wireless/b43legacy/main.c ++++ b/drivers/net/wireless/b43legacy/main.c +@@ -1564,8 +1564,6 @@ static int b43legacy_request_firmware(st + const char *filename; + int err; + +- /* do dummy read */ +- ssb_read32(dev->dev, SSB_TMSHIGH); + if (!fw->ucode) { + if (rev == 2) + filename = "ucode2"; diff --git a/queue-3.3/drm-i915-avoid-a-double-read-of-pch_iir-during-interrupt-handling.patch b/queue-3.3/drm-i915-avoid-a-double-read-of-pch_iir-during-interrupt-handling.patch new file mode 100644 index 00000000000..2347280e6ca --- /dev/null +++ b/queue-3.3/drm-i915-avoid-a-double-read-of-pch_iir-during-interrupt-handling.patch @@ -0,0 +1,60 @@ +From 9adab8b5a7fde248504f484e197589f3e3c922e2 Mon Sep 17 00:00:00 2001 +From: Chris Wilson +Date: Wed, 9 May 2012 21:45:43 +0100 +Subject: drm/i915: Avoid a double-read of PCH_IIR during interrupt handling + +From: Chris Wilson + +commit 9adab8b5a7fde248504f484e197589f3e3c922e2 upstream. + +Currently the code re-reads PCH_IIR during the hotplug interrupt +processing. Not only is this a wasted read, but introduces a potential +for handling a spurious interrupt as we then may not clear all the +interrupts processed (since the re-read IIR may contains more interrupts +asserted than we clear using the result of the original read). + +Signed-off-by: Chris Wilson +Cc: Jesse Barnes +Signed-off-by: Daniel Vetter +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/i915/i915_irq.c | 9 +++------ + 1 file changed, 3 insertions(+), 6 deletions(-) + +--- a/drivers/gpu/drm/i915/i915_irq.c ++++ b/drivers/gpu/drm/i915/i915_irq.c +@@ -424,14 +424,11 @@ static void gen6_pm_rps_work(struct work + mutex_unlock(&dev_priv->dev->struct_mutex); + } + +-static void pch_irq_handler(struct drm_device *dev) ++static void pch_irq_handler(struct drm_device *dev, u32 pch_iir) + { + drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private; +- u32 pch_iir; + int pipe; + +- pch_iir = I915_READ(SDEIIR); +- + if (pch_iir & SDE_AUDIO_POWER_MASK) + DRM_DEBUG_DRIVER("PCH audio power change on port %d\n", + (pch_iir & SDE_AUDIO_POWER_MASK) >> +@@ -529,7 +526,7 @@ static irqreturn_t ivybridge_irq_handler + if (de_iir & DE_PCH_EVENT_IVB) { + if (pch_iir & SDE_HOTPLUG_MASK_CPT) + queue_work(dev_priv->wq, &dev_priv->hotplug_work); +- pch_irq_handler(dev); ++ pch_irq_handler(dev, pch_iir); + } + + if (pm_iir & GEN6_PM_DEFERRED_EVENTS) { +@@ -629,7 +626,7 @@ static irqreturn_t ironlake_irq_handler( + if (de_iir & DE_PCH_EVENT) { + if (pch_iir & hotplug_mask) + queue_work(dev_priv->wq, &dev_priv->hotplug_work); +- pch_irq_handler(dev); ++ pch_irq_handler(dev, pch_iir); + } + + if (de_iir & DE_PCU_EVENT) { diff --git a/queue-3.3/gma500-fix-poulsbo-suspend-resume-crash-on-devices-with-sdvo-ports.patch b/queue-3.3/gma500-fix-poulsbo-suspend-resume-crash-on-devices-with-sdvo-ports.patch new file mode 100644 index 00000000000..088b349b2c0 --- /dev/null +++ b/queue-3.3/gma500-fix-poulsbo-suspend-resume-crash-on-devices-with-sdvo-ports.patch @@ -0,0 +1,43 @@ +From 7beff62ee39d3ccf088bb77f61a63037f714d235 Mon Sep 17 00:00:00 2001 +From: Alan Cox +Date: Mon, 21 May 2012 15:27:44 +0100 +Subject: gma500: Fix Poulsbo suspend/resume crash on devices with SDVO ports +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Alan Cox + +commit 7beff62ee39d3ccf088bb77f61a63037f714d235 upstream. + +Reported-by: Guillaume Clément +Signed-off-by: Alan Cox +Signed-off-by: Dave Airlie +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/gma500/psb_device.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +--- a/drivers/gpu/drm/gma500/psb_device.c ++++ b/drivers/gpu/drm/gma500/psb_device.c +@@ -196,7 +196,8 @@ static int psb_save_display_registers(st + } + + list_for_each_entry(connector, &dev->mode_config.connector_list, head) +- connector->funcs->save(connector); ++ if (connector->funcs->save) ++ connector->funcs->save(connector); + + mutex_unlock(&dev->mode_config.mutex); + return 0; +@@ -233,7 +234,8 @@ static int psb_restore_display_registers + crtc->funcs->restore(crtc); + + list_for_each_entry(connector, &dev->mode_config.connector_list, head) +- connector->funcs->restore(connector); ++ if (connector->funcs->restore) ++ connector->funcs->restore(connector); + + mutex_unlock(&dev->mode_config.mutex); + return 0; diff --git a/queue-3.3/series b/queue-3.3/series index 7de8d7bcc0a..ec843743602 100644 --- a/queue-3.3/series +++ b/queue-3.3/series @@ -62,3 +62,6 @@ xhci-reset-reserved-command-ring-trbs-on-cleanup.patch xhci-add-new-short-tx-quirk-for-fresco-logic-host.patch usb-fix-resource-leak-in-xhci-power-loss-path.patch usbcore-enable-usb2-lpm-if-port-suspend-fails.patch +gma500-fix-poulsbo-suspend-resume-crash-on-devices-with-sdvo-ports.patch +b43legacy-fix-error-due-to-mmio-access-with-ssb-unpowered.patch +drm-i915-avoid-a-double-read-of-pch_iir-during-interrupt-handling.patch