@@ -407,7 +407,6 @@ struct i915_suspend_saved_registers {
u32 saveDSPACNTR;
u32 saveDSPBCNTR;
u32 saveDSPARB;
- u32 saveHWS;
u32 savePIPEACONF;
u32 savePIPEBCONF;
u32 savePIPEASRC;
@@ -811,10 +811,6 @@ int i915_save_state(struct drm_device *dev)
mutex_lock(&dev->struct_mutex);
- /* Hardware status page */
- if (!drm_core_check_feature(dev, DRIVER_MODESET))
- dev_priv->regfile.saveHWS = I915_READ(HWS_PGA);
-
i915_save_display(dev);
if (!drm_core_check_feature(dev, DRIVER_MODESET)) {
@@ -865,10 +861,6 @@ int i915_restore_state(struct drm_device *dev)
mutex_lock(&dev->struct_mutex);
- /* Hardware status page */
- if (!drm_core_check_feature(dev, DRIVER_MODESET))
- I915_WRITE(HWS_PGA, dev_priv->regfile.saveHWS);
-
i915_restore_display(dev);
if (!drm_core_check_feature(dev, DRIVER_MODESET)) {
Now that we always restore the HWS registers (both physical and GTT virtual addresses) when re-initialising the rings, we can eliminate the superfluous save/restore of the register across suspend and resume. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- drivers/gpu/drm/i915/i915_drv.h | 1 - drivers/gpu/drm/i915/i915_suspend.c | 8 -------- 2 files changed, 9 deletions(-)