Commit 7d3428cd authored by Ilia Mirkin's avatar Ilia Mirkin Committed by Ben Skeggs

drm/nouveau: set irq_enabled manually

Since commit 0fa9061a ("drm/nouveau/mc: handle irq-related setup
ourselves"), drm_device->irq_enabled remained unset. This is needed in
order to properly wait for a vblank event in the generic drm code.

See https://bugs.freedesktop.org/show_bug.cgi?id=74195Reported-by: default avatarJan Janecek <janjanjanx@gmail.com>
Signed-off-by: default avatarIlia Mirkin <imirkin@alum.mit.edu>
Cc: stable@vger.kernel.org # 3.10+
Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent f3980dc5
...@@ -376,6 +376,8 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flags) ...@@ -376,6 +376,8 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flags)
if (ret) if (ret)
goto fail_device; goto fail_device;
dev->irq_enabled = true;
/* workaround an odd issue on nvc1 by disabling the device's /* workaround an odd issue on nvc1 by disabling the device's
* nosnoop capability. hopefully won't cause issues until a * nosnoop capability. hopefully won't cause issues until a
* better fix is found - assuming there is one... * better fix is found - assuming there is one...
...@@ -475,6 +477,7 @@ nouveau_drm_remove(struct pci_dev *pdev) ...@@ -475,6 +477,7 @@ nouveau_drm_remove(struct pci_dev *pdev)
struct nouveau_drm *drm = nouveau_drm(dev); struct nouveau_drm *drm = nouveau_drm(dev);
struct nouveau_object *device; struct nouveau_object *device;
dev->irq_enabled = false;
device = drm->client.base.device; device = drm->client.base.device;
drm_put_dev(dev); drm_put_dev(dev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment