Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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=74195



Reported-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
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -376,6 +376,8 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flags)
	if (ret)
		goto fail_device;

	dev->irq_enabled = true;

	/* workaround an odd issue on nvc1 by disabling the device's
	 * nosnoop capability.  hopefully won't cause issues until a
	 * better fix is found - assuming there is one...
@@ -475,6 +477,7 @@ nouveau_drm_remove(struct pci_dev *pdev)
	struct nouveau_drm *drm = nouveau_drm(dev);
	struct nouveau_object *device;

	dev->irq_enabled = false;
	device = drm->client.base.device;
	drm_put_dev(dev);