summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Heider <andreas@meetr.de>2012-05-21 00:14:51 +0100
committerBen Skeggs <bskeggs@redhat.com>2012-05-24 16:56:36 +1000
commit5c5ed6e2cd8b8f944cc7a27fb8a66b695dccf32f (patch)
tree9b89f405badd9d4fb26fbdb5e819b39eceed99ae
parent2f3787aa439ae0d34e4658400c1139a7541bec1d (diff)
downloadlinux-3.10-5c5ed6e2cd8b8f944cc7a27fb8a66b695dccf32f.tar.gz
linux-3.10-5c5ed6e2cd8b8f944cc7a27fb8a66b695dccf32f.tar.bz2
linux-3.10-5c5ed6e2cd8b8f944cc7a27fb8a66b695dccf32f.zip
drm/nouveau: Unregister switcheroo client on exit
Currently nouveau only registers as a vga_switcheroo client, but never unregisters. This patch adds the necessary unregister calls. Signed-off-by: Andreas Heider <andreas@meetr.de> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_state.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_state.c b/drivers/gpu/drm/nouveau/nouveau_state.c
index e23c05348aa..19706f0532e 100644
--- a/drivers/gpu/drm/nouveau/nouveau_state.c
+++ b/drivers/gpu/drm/nouveau/nouveau_state.c
@@ -840,6 +840,7 @@ out_bios:
out_display_early:
engine->display.late_takedown(dev);
out:
+ vga_switcheroo_unregister_client(dev->pdev);
vga_client_register(dev->pdev, NULL, NULL, NULL);
return ret;
}
@@ -895,6 +896,7 @@ static void nouveau_card_takedown(struct drm_device *dev)
nouveau_irq_fini(dev);
+ vga_switcheroo_unregister_client(dev->pdev);
vga_client_register(dev->pdev, NULL, NULL, NULL);
}