summaryrefslogtreecommitdiffstats
path: root/nv46-Change-mc-subdev-oclass-from-nv44-to-nv4c.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nv46-Change-mc-subdev-oclass-from-nv44-to-nv4c.patch')
-rw-r--r--nv46-Change-mc-subdev-oclass-from-nv44-to-nv4c.patch33
1 files changed, 33 insertions, 0 deletions
diff --git a/nv46-Change-mc-subdev-oclass-from-nv44-to-nv4c.patch b/nv46-Change-mc-subdev-oclass-from-nv44-to-nv4c.patch
new file mode 100644
index 000000000..a6996faa1
--- /dev/null
+++ b/nv46-Change-mc-subdev-oclass-from-nv44-to-nv4c.patch
@@ -0,0 +1,33 @@
+From 16f4f5f0dc33698b841bce71cbc0dd991935b7e1 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Thu, 23 Jul 2015 17:20:12 +0200
+Subject: [PATCH] nv46: Change mc subdev oclass from nv44 to nv4c
+
+MSI interrupts appear to not work for nv46 based cards. Change the mc
+subdev oclass for these cards from nv44 to nv4c, the nv4c mc code is
+identical to the nv44 mc code except that it does not use msi
+(it does not define a msi_rearm callback).
+
+BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=90435
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+---
+ drivers/gpu/drm/nouveau/nvkm/engine/device/nv40.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/device/nv40.c b/drivers/gpu/drm/nouveau/nvkm/engine/device/nv40.c
+index c6301361d14f..b4ad791b4851 100644
+--- a/drivers/gpu/drm/nouveau/nvkm/engine/device/nv40.c
++++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/nv40.c
+@@ -265,7 +265,7 @@ nv40_identify(struct nvkm_device *device)
+ device->oclass[NVDEV_SUBDEV_CLK ] = &nv40_clk_oclass;
+ device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass;
+ device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass;
+- device->oclass[NVDEV_SUBDEV_MC ] = nv44_mc_oclass;
++ device->oclass[NVDEV_SUBDEV_MC ] = nv4c_mc_oclass;
+ device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass;
+ device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass;
+ device->oclass[NVDEV_SUBDEV_FB ] = nv46_fb_oclass;
+--
+2.4.3
+