summaryrefslogtreecommitdiff
path: root/sys/dev/pci
diff options
context:
space:
mode:
authorOwain Ainsworth <oga@cvs.openbsd.org>2009-02-15 23:10:49 +0000
committerOwain Ainsworth <oga@cvs.openbsd.org>2009-02-15 23:10:49 +0000
commit60ac1dbc5b471d5cc762c7a0871d7dc2689d961c (patch)
tree09172b4733c90f1606e6bd42061f1835b869c479 /sys/dev/pci
parent26e7c8c183cbace919938f347b53c2e70c5c3c12 (diff)
The core drm code calls drm_irq_uninstall() when needed at lastclose.
Due to the fact that most of the drivers didn't keep their mmio regions mapped from attach, all irq-using drm drivers have a hook in lastclose() to remove the irq before it unmaps its registers. Since now they all keep them mapped, this isn't an issue. Remove the redundant calls.
Diffstat (limited to 'sys/dev/pci')
-rw-r--r--sys/dev/pci/drm/i915_dma.c6
-rw-r--r--sys/dev/pci/drm/mach64_dma.c7
-rw-r--r--sys/dev/pci/drm/mga_dma.c8
-rw-r--r--sys/dev/pci/drm/r128_cce.c6
-rw-r--r--sys/dev/pci/drm/radeon_cp.c7
5 files changed, 0 insertions, 34 deletions
diff --git a/sys/dev/pci/drm/i915_dma.c b/sys/dev/pci/drm/i915_dma.c
index e3da1437e7a..bd607a30413 100644
--- a/sys/dev/pci/drm/i915_dma.c
+++ b/sys/dev/pci/drm/i915_dma.c
@@ -129,12 +129,6 @@ void i915_kernel_lost_context(struct drm_device * dev)
static int i915_dma_cleanup(struct drm_device * dev)
{
drm_i915_private_t *dev_priv = dev->dev_private;
- /* Make sure interrupts are disabled here because the uninstall ioctl
- * may not have been called from userspace and after dev_private
- * is freed, it's too late.
- */
- if (dev->irq_enabled)
- drm_irq_uninstall(dev);
if (dev_priv->ring.virtual_start) {
drm_core_ioremapfree(&dev_priv->ring.map);
diff --git a/sys/dev/pci/drm/mach64_dma.c b/sys/dev/pci/drm/mach64_dma.c
index 581feb7b9e4..8ea1fcba8db 100644
--- a/sys/dev/pci/drm/mach64_dma.c
+++ b/sys/dev/pci/drm/mach64_dma.c
@@ -1344,13 +1344,6 @@ int mach64_do_cleanup_dma(struct drm_device * dev)
DRM_DEBUG("\n");
- /* Make sure interrupts are disabled here because the uninstall ioctl
- * may not have been called from userspace and after dev_private
- * is freed, it's too late.
- */
- if (dev->irq_enabled)
- drm_irq_uninstall(dev);
-
if (!dev_priv->is_pci) {
if (dev_priv->ring_map)
drm_core_ioremapfree(dev_priv->ring_map);
diff --git a/sys/dev/pci/drm/mga_dma.c b/sys/dev/pci/drm/mga_dma.c
index 5798718cb05..88a7c5b772e 100644
--- a/sys/dev/pci/drm/mga_dma.c
+++ b/sys/dev/pci/drm/mga_dma.c
@@ -875,14 +875,6 @@ static int mga_do_cleanup_dma(struct drm_device *dev, int full_cleanup)
int err = 0;
DRM_DEBUG("\n");
- /* Make sure interrupts are disabled here because the uninstall ioctl
- * may not have been called from userspace and after dev_private
- * is freed, it's too late.
- */
- if (dev->irq_enabled)
- drm_irq_uninstall(dev);
-
-
if ((dev_priv->warp != NULL)
&& (dev_priv->warp->type != _DRM_CONSISTENT))
drm_core_ioremapfree(dev_priv->warp);
diff --git a/sys/dev/pci/drm/r128_cce.c b/sys/dev/pci/drm/r128_cce.c
index 9b033000b7a..272a9fe6713 100644
--- a/sys/dev/pci/drm/r128_cce.c
+++ b/sys/dev/pci/drm/r128_cce.c
@@ -566,12 +566,6 @@ int r128_do_cleanup_cce(struct drm_device * dev)
{
drm_r128_private_t *dev_priv = dev->dev_private;
- /* Make sure interrupts are disabled here because the uninstall ioctl
- * may not have been called from userspace
- */
- if (dev->irq_enabled)
- drm_irq_uninstall(dev);
-
#if __OS_HAS_AGP
if (!dev_priv->is_pci) {
if (dev_priv->cce_ring != NULL)
diff --git a/sys/dev/pci/drm/radeon_cp.c b/sys/dev/pci/drm/radeon_cp.c
index 6d5b8800051..cfe739786b5 100644
--- a/sys/dev/pci/drm/radeon_cp.c
+++ b/sys/dev/pci/drm/radeon_cp.c
@@ -1271,13 +1271,6 @@ radeon_do_cleanup_cp(struct drm_device *dev)
drm_radeon_private_t *dev_priv = dev->dev_private;
DRM_DEBUG("\n");
- /* Make sure interrupts are disabled here because the uninstall ioctl
- * may not have been called from userspace and after dev_private
- * is freed, it's too late.
- */
- if (dev->irq_enabled)
- drm_irq_uninstall(dev);
-
#if __OS_HAS_AGP
if (dev_priv->flags & RADEON_IS_AGP) {
if (dev_priv->cp_ring != NULL)