summaryrefslogtreecommitdiffstats
path: root/revert-drm-kms-toggle-poll-around-switcheroo.patch
diff options
context:
space:
mode:
Diffstat (limited to 'revert-drm-kms-toggle-poll-around-switcheroo.patch')
-rw-r--r--revert-drm-kms-toggle-poll-around-switcheroo.patch65
1 files changed, 65 insertions, 0 deletions
diff --git a/revert-drm-kms-toggle-poll-around-switcheroo.patch b/revert-drm-kms-toggle-poll-around-switcheroo.patch
new file mode 100644
index 000000000..f83fc2fdf
--- /dev/null
+++ b/revert-drm-kms-toggle-poll-around-switcheroo.patch
@@ -0,0 +1,65 @@
+From 69b711c0c5e3d9cb3a5b9f741fb4cdc96b5739cb Mon Sep 17 00:00:00 2001
+From: Kyle McMartin <kyle@dreadnought.i.jkkm.org>
+Subject: Revert "drm/kms: disable/enable poll around switcheroo on/off"
+
+This reverts commit fbf81762e385d3d45acad057b654d56972acf58c, mostly.
+---
+ drivers/gpu/drm/i915/i915_dma.c | 4 +---
+ drivers/gpu/drm/nouveau/nouveau_state.c | 3 ---
+ drivers/gpu/drm/radeon/radeon_device.c | 2 --
+
+diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
+index 59a2bf8..2df3286 100644
+--- a/drivers/gpu/drm/i915/i915_dma.c
++++ b/drivers/gpu/drm/i915/i915_dma.c
+@@ -1320,14 +1320,12 @@ static void i915_switcheroo_set_state(struct pci_dev *pdev, enum vga_switcheroo_
+ struct drm_device *dev = pci_get_drvdata(pdev);
+ pm_message_t pmm = { .event = PM_EVENT_SUSPEND };
+ if (state == VGA_SWITCHEROO_ON) {
+- printk(KERN_INFO "i915: switched on\n");
++ printk(KERN_INFO "i915: switched off\n");
+ /* i915 resume handler doesn't set to D0 */
+ pci_set_power_state(dev->pdev, PCI_D0);
+ i915_resume(dev);
+- drm_kms_helper_poll_enable(dev);
+ } else {
+ printk(KERN_ERR "i915: switched off\n");
+- drm_kms_helper_poll_disable(dev);
+ i915_suspend(dev, pmm);
+ }
+ }
+diff --git a/drivers/gpu/drm/nouveau/nouveau_state.c b/drivers/gpu/drm/nouveau/nouveau_state.c
+index b02a231..0c28266 100644
+--- a/drivers/gpu/drm/nouveau/nouveau_state.c
++++ b/drivers/gpu/drm/nouveau/nouveau_state.c
+@@ -376,15 +376,12 @@ out_err:
+ static void nouveau_switcheroo_set_state(struct pci_dev *pdev,
+ enum vga_switcheroo_state state)
+ {
+- struct drm_device *dev = pci_get_drvdata(pdev);
+ pm_message_t pmm = { .event = PM_EVENT_SUSPEND };
+ if (state == VGA_SWITCHEROO_ON) {
+ printk(KERN_ERR "VGA switcheroo: switched nouveau on\n");
+ nouveau_pci_resume(pdev);
+- drm_kms_helper_poll_enable(dev);
+ } else {
+ printk(KERN_ERR "VGA switcheroo: switched nouveau off\n");
+- drm_kms_helper_poll_disable(dev);
+ nouveau_pci_suspend(pdev, pmm);
+ }
+ }
+diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
+index f10faed..225a9f2 100644
+--- a/drivers/gpu/drm/radeon/radeon_device.c
++++ b/drivers/gpu/drm/radeon/radeon_device.c
+@@ -546,10 +546,8 @@ static void radeon_switcheroo_set_state(struct pci_dev *pdev, enum vga_switchero
+ /* don't suspend or resume card normally */
+ rdev->powered_down = false;
+ radeon_resume_kms(dev);
+- drm_kms_helper_poll_enable(dev);
+ } else {
+ printk(KERN_INFO "radeon: switched off\n");
+- drm_kms_helper_poll_disable(dev);
+ radeon_suspend_kms(dev, pmm);
+ /* don't suspend or resume card normally */
+ rdev->powered_down = true;