diff options
| -rw-r--r-- | drivers/gpu/drm/i915/i915_drv.h | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/i915/i915_suspend.c | 6 | 
2 files changed, 7 insertions, 0 deletions
| diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 449650545bb4..5004724ea57e 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -383,6 +383,7 @@ typedef struct drm_i915_private {  	u32 saveDSPACNTR;  	u32 saveDSPBCNTR;  	u32 saveDSPARB; +	u32 saveHWS;  	u32 savePIPEACONF;  	u32 savePIPEBCONF;  	u32 savePIPEASRC; diff --git a/drivers/gpu/drm/i915/i915_suspend.c b/drivers/gpu/drm/i915/i915_suspend.c index 7e992a8e9098..da474153a0a2 100644 --- a/drivers/gpu/drm/i915/i915_suspend.c +++ b/drivers/gpu/drm/i915/i915_suspend.c @@ -796,6 +796,9 @@ int i915_save_state(struct drm_device *dev)  	pci_read_config_byte(dev->pdev, LBB, &dev_priv->saveLBB); +	/* Hardware status page */ +	dev_priv->saveHWS = I915_READ(HWS_PGA); +  	i915_save_display(dev);  	/* Interrupt state */ @@ -842,6 +845,9 @@ int i915_restore_state(struct drm_device *dev)  	pci_write_config_byte(dev->pdev, LBB, dev_priv->saveLBB); +	/* Hardware status page */ +	I915_WRITE(HWS_PGA, dev_priv->saveHWS); +  	i915_restore_display(dev);  	/* Interrupt state */ | 
