Module Name:    src
Committed By:   joerg
Date:           Fri Apr 17 19:02:33 UTC 2009

Modified Files:
        src/sys/dev/drm: drm_drv.c drm_irq.c

Log Message:
Move initialisation of the irq spinlock into the device handling code,
at least the Intel driver depends on it whether the IRQ is currently
enabled or not.


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/dev/drm/drm_drv.c
cvs rdiff -u -r1.16 -r1.17 src/sys/dev/drm/drm_irq.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/drm/drm_drv.c
diff -u src/sys/dev/drm/drm_drv.c:1.22 src/sys/dev/drm/drm_drv.c:1.23
--- src/sys/dev/drm/drm_drv.c:1.22	Sat Jan 31 13:49:29 2009
+++ src/sys/dev/drm/drm_drv.c	Fri Apr 17 19:02:33 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_drv.c,v 1.22 2009/01/31 13:49:29 bouyer Exp $ */
+/* $NetBSD: drm_drv.c,v 1.23 2009/04/17 19:02:33 joerg Exp $ */
 
 /* drm_drv.h -- Generic driver template -*- linux-c -*-
  * Created: Thu Nov 23 03:10:50 2000 by [email protected]
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_drv.c,v 1.22 2009/01/31 13:49:29 bouyer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_drv.c,v 1.23 2009/04/17 19:02:33 joerg Exp $");
 /*
 __FBSDID("$FreeBSD: src/sys/dev/drm/drm_drv.c,v 1.6 2006/09/07 23:04:47 anholt Exp $");
 */
@@ -302,6 +302,7 @@
 	int i;
 
 	DRM_SPINLOCK_ASSERT(&dev->dev_lock);
+	DRM_SPININIT(&dev->irq_lock, "DRM IRQ lock");
 
 	/* prebuild the SAREA */
 	i = drm_addmap(dev, 0, SAREA_MAX, _DRM_SHM,
@@ -436,6 +437,8 @@
 		free(filep, M_DRM);
 	}
 
+	DRM_SPINUNINIT(&dev->irq_lock);
+
 	return 0;
 }
 

Index: src/sys/dev/drm/drm_irq.c
diff -u src/sys/dev/drm/drm_irq.c:1.16 src/sys/dev/drm/drm_irq.c:1.17
--- src/sys/dev/drm/drm_irq.c:1.16	Mon Jul  7 00:33:23 2008
+++ src/sys/dev/drm/drm_irq.c	Fri Apr 17 19:02:33 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_irq.c,v 1.16 2008/07/07 00:33:23 mrg Exp $ */
+/* $NetBSD: drm_irq.c,v 1.17 2009/04/17 19:02:33 joerg Exp $ */
 
 /* drm_irq.c -- IRQ IOCTL and function support
  * Created: Fri Oct 18 2003 by [email protected]
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_irq.c,v 1.16 2008/07/07 00:33:23 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_irq.c,v 1.17 2009/04/17 19:02:33 joerg Exp $");
 /*
 __FBSDID("$FreeBSD: src/sys/dev/drm/drm_irq.c,v 1.2 2005/11/28 23:13:52 anholt Exp $");
 */
@@ -94,8 +94,6 @@
 
 	dev->context_flag = 0;
 
-	DRM_SPININIT(&dev->irq_lock, "DRM IRQ lock");
-
 				/* Before installing handler */
 
 	dev->driver.irq_preinstall(dev);
@@ -141,7 +139,6 @@
 	dev->driver.irq_uninstall(dev);
 
 	pci_intr_disestablish(dev->pa.pa_pc, dev->irqh);
-	DRM_SPINUNINIT(&dev->irq_lock);
 
 	return 0;
 }

Reply via email to