[PATCH -fixes RESEND] drm/vmwgfx: Fix hibernation device reset

Thomas Hellstrom thellstrom at vmware.com
Fri Nov 9 01:05:57 PST 2012


The device would not reset properly when resuming from hibernation.

Signed-off-by: Thomas Hellstrom <thellstrom at vmware.com>
Reviewed-by: Brian Paul <brianp at vmware.com>
Reviewed-by: Dmitry Torokhov <dtor at vmware.com>
Cc: stable at vger.kernel.org
Cc: linux-graphics-maintainer at vmware.com
---
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
index f8b590c..f233473 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
@@ -1084,6 +1084,11 @@ static void vmw_pm_complete(struct device *kdev)
 	struct drm_device *dev = pci_get_drvdata(pdev);
 	struct vmw_private *dev_priv = vmw_priv(dev);
 
+	mutex_lock(&dev_priv->hw_mutex);
+	vmw_write(dev_priv, SVGA_REG_ID, SVGA_ID_2);
+	(void) vmw_read(dev_priv, SVGA_REG_ID);
+	mutex_unlock(&dev_priv->hw_mutex);
+
 	/**
 	 * Reclaim 3d reference held by fbdev and potentially
 	 * start fifo.
-- 
1.7.4.4



More information about the dri-devel mailing list