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