drm/i915/gen9+: Set same power state before hibernation image save/restore
authorImre Deak <[email protected]>
Wed, 16 Aug 2017 14:46:07 +0000 (17:46 +0300)
committerImre Deak <[email protected]>
Mon, 2 Oct 2017 09:07:42 +0000 (12:07 +0300)
commitdd9f31c7a3887950cbd0d49eb9d43f7a1518a356
treeb8bf473c5a09a95bface063f4985199fb3110761
parent097a94815fb61ba4f184b3efd8f4e158116956d0
drm/i915/gen9+: Set same power state before hibernation image save/restore

Atm, on GEN9 big core platforms before saving the hibernation image we
uninitialize the display, disabling power wells manually, while before
restoring the image we keep things powered (letting HW/DMC power down
things as needed). The state mismatch will trigger the following error:

DC state mismatch (0x0 -> 0x2)

While the restore handler knows how to initialize the display from an
unknown state (due to a different loader kernel or not having i915
loaded in the loader kernel) we should still use the same state for
consistency before image saving and restoring. Do this by uniniting the
display before restoring the image too.

Bugzilla: https://bugs.freedesktop.org/attachment.cgi?id=133376
Reported-and-tested-by: Wang Wendy <[email protected]>
Reported-and-tested-by: Joonas Lahtinen <[email protected]>
Cc: Wang Wendy <[email protected]>
Cc: Joonas Lahtinen <[email protected]>
Cc: Rodrigo Vivi <[email protected]>
Cc: Ville Syrjala <[email protected]>
Signed-off-by: Imre Deak <[email protected]>
Reviewed-by: Ville Syrjälä <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
drivers/gpu/drm/i915/i915_drv.c