summaryrefslogtreecommitdiff
path: root/linux-core
diff options
context:
space:
mode:
Diffstat (limited to 'linux-core')
-rw-r--r--linux-core/drm_irq.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/linux-core/drm_irq.c b/linux-core/drm_irq.c
index 7dddbe19..6b740b18 100644
--- a/linux-core/drm_irq.c
+++ b/linux-core/drm_irq.c
@@ -261,9 +261,6 @@ int drm_irq_uninstall(struct drm_device * dev)
if (!drm_core_check_feature(dev, DRIVER_HAVE_IRQ))
return -EINVAL;
- if (drm_core_check_feature(dev, DRIVER_MODESET))
- return 0;
-
mutex_lock(&dev->struct_mutex);
irq_enabled = dev->irq_enabled;
dev->irq_enabled = 0;
@@ -318,6 +315,8 @@ int drm_control(struct drm_device *dev, void *data,
case DRM_UNINST_HANDLER:
if (!drm_core_check_feature(dev, DRIVER_HAVE_IRQ))
return 0;
+ if (drm_core_check_feature(dev, DRIVER_MODESET))
+ return 0;
return drm_irq_uninstall(dev);
default:
return -EINVAL;