OSDN Git Service

drm/i915/gen9_bc: Work around DMC bug zeroing power well requests
authorImre Deak <imre.deak@intel.com>
Fri, 9 Nov 2018 14:58:20 +0000 (16:58 +0200)
committerImre Deak <imre.deak@intel.com>
Wed, 14 Nov 2018 11:45:15 +0000 (13:45 +0200)
commitcb8ef723ab812bf61553d88542b3a37f2ca75b48
treee60f5f2d8041f46f575da66b60eec8c265fdb450
parent745aa6cdee6be0dfc8196f8b848325246981d881
drm/i915/gen9_bc: Work around DMC bug zeroing power well requests

A DMC bug on GEN9 big core machines fails to restore the driver's
request bits for the PW1 and MISC_IO power wells after a DC5/6
entry->exit sequence. As a consequence the driver's subsequent check for
the enabled status of these power wells will fail, as the check
considers the power wells being enabled only if both the status and
request bits are set. To work around this borrow the request bits from
BIOS's own request register in which DMC forces on the request bits when
exiting from DC5/6.

This fixes a problem reported by Ramalingam, where HDCP init failed,
since PW1 reported itself as being disabled, while in reality it was
enabled.

Reported-by: Ramalingam C <ramalingam.c@intel.com>
Cc: Ramalingam C <ramalingam.c@intel.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20181109145822.15446-1-imre.deak@intel.com
drivers/gpu/drm/i915/intel_runtime_pm.c