summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Hourihane <alanh@fairlite.demon.co.uk>2003-11-05 20:47:28 +0000
committerAlan Hourihane <alanh@fairlite.demon.co.uk>2003-11-05 20:47:28 +0000
commita41a479f74f3fadf1539d1adaefb933ba9a6112c (patch)
treec0688821780f98832d15175580119c82685d02db
parent66c9e3053f857df340a982edaa8ea57b229efeed (diff)
Changes to DRM(irq_install)...... wrap dev->dma usage with __HAVE_DMA in
irq handler, fixes kernel ooops. comment out some setting of flags that are done in DRM(setup) (not sure why both of the above is done in the irq handler)
-rw-r--r--linux-core/drm_irq.c4
-rw-r--r--linux/drm_irq.h4
2 files changed, 8 insertions, 0 deletions
diff --git a/linux-core/drm_irq.c b/linux-core/drm_irq.c
index 837e6951..6966cdb7 100644
--- a/linux-core/drm_irq.c
+++ b/linux-core/drm_irq.c
@@ -122,13 +122,17 @@ int DRM(irq_install)( drm_device_t *dev )
DRM_DEBUG( "%s: irq=%d\n", __FUNCTION__, dev->irq );
+#if 0 /* this is already done in DRM(setup) - why do it here ?? */
dev->context_flag = 0;
dev->interrupt_flag = 0;
dev->dma_flag = 0;
+#endif
+#if __HAVE_DMA
dev->dma->next_buffer = NULL;
dev->dma->next_queue = NULL;
dev->dma->this_buffer = NULL;
+#endif
#if __HAVE_IRQ_BH
#if !HAS_WORKQUEUE
diff --git a/linux/drm_irq.h b/linux/drm_irq.h
index 837e6951..6966cdb7 100644
--- a/linux/drm_irq.h
+++ b/linux/drm_irq.h
@@ -122,13 +122,17 @@ int DRM(irq_install)( drm_device_t *dev )
DRM_DEBUG( "%s: irq=%d\n", __FUNCTION__, dev->irq );
+#if 0 /* this is already done in DRM(setup) - why do it here ?? */
dev->context_flag = 0;
dev->interrupt_flag = 0;
dev->dma_flag = 0;
+#endif
+#if __HAVE_DMA
dev->dma->next_buffer = NULL;
dev->dma->next_queue = NULL;
dev->dma->this_buffer = NULL;
+#endif
#if __HAVE_IRQ_BH
#if !HAS_WORKQUEUE