rpms/kernel/devel drm-intel-fix-irqs.patch, NONE, 1.1 kernel.spec, 1.949, 1.950

Dave Airlie airlied at fedoraproject.org
Mon Sep 15 14:02:44 UTC 2008


Author: airlied

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv19871

Modified Files:
	kernel.spec 
Added Files:
	drm-intel-fix-irqs.patch 
Log Message:
* Tue Sep 16 2008 Dave Airlie <airlied at redhat.com>
- fix from Intel for irqs hopefully


drm-intel-fix-irqs.patch:

--- NEW FILE drm-intel-fix-irqs.patch ---
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index a0be952..c63c162 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -259,12 +259,9 @@ irqreturn_t i915_driver_irq_handler(DRM_IRQ_ARGS)
 	struct drm_device *dev = (struct drm_device *) arg;
 	drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private;
 	struct drm_i915_master_private *master_priv;
-	u32 pipea_stats, pipeb_stats;
+	u32 pipea_stats = 0, pipeb_stats = 0;
 	u32 iir;
 
-	pipea_stats = I915_READ(PIPEASTAT);
-	pipeb_stats = I915_READ(PIPEBSTAT);
-
 	if (dev->pdev->msi_enabled)
 		I915_WRITE(IMR, ~0);
 	iir = I915_READ(IIR);
@@ -278,8 +275,14 @@ irqreturn_t i915_driver_irq_handler(DRM_IRQ_ARGS)
 		return IRQ_NONE;
 	}
 
-	I915_WRITE(PIPEASTAT, pipea_stats);
-	I915_WRITE(PIPEBSTAT, pipeb_stats);
+	if (iir & I915_DISPLAY_PIPE_A_EVENT_INTERRUPT) {
+		pipea_stats = I915_READ(PIPEASTAT);
+		I915_WRITE(PIPEASTAT, pipea_stats);
+	}
+	if (iir & I915_DISPLAY_PIPE_B_EVENT_INTERRUPT) {
+		pipeb_stats = I915_READ(PIPEBSTAT);
+		I915_WRITE(PIPEBSTAT, pipeb_stats);
+	}
 
 	I915_WRITE(IIR, iir);
 	if (dev->pdev->msi_enabled)


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.949
retrieving revision 1.950
diff -u -r1.949 -r1.950
--- kernel.spec	13 Sep 2008 04:14:26 -0000	1.949
+++ kernel.spec	15 Sep 2008 14:02:14 -0000	1.950
@@ -609,6 +609,7 @@
 Patch1811: drm-modesetting-radeon.patch
 Patch1812: drm-modesetting-i915.patch
 Patch1813: drm-nouveau.patch
+Patch1814: drm-intel-fix-irqs.patch
 
 # kludge to make ich9 e1000 work
 Patch2000: linux-2.6-e1000-ich9.patch
@@ -1167,6 +1168,7 @@
 ApplyPatch drm-modesetting-radeon.patch
 ApplyPatch drm-modesetting-i915.patch
 ApplyPatch drm-nouveau.patch
+ApplyPatch drm-intel-fix-irqs.patch
 
 # linux1394 git patches
 ApplyPatch linux-2.6-firewire-git-update.patch
@@ -1758,6 +1760,9 @@
 %kernel_variant_files -k vmlinux %{with_kdump} kdump
 
 %changelog
+* Tue Sep 16 2008 Dave Airlie <airlied at redhat.com>
+- fix from Intel for irqs hopefully
+
 * Sat Sep 13 2008 Chuck Ebbert <cebbert at redhat.com>
 - Fix hang in installer on PS3. (#458910)
 




More information about the fedora-extras-commits mailing list