]> git.karo-electronics.de Git - karo-tx-linux.git/commit
drm/i915/vlv: assert and de-assert sideband reset at boot and resume v3
authorJesse Barnes <jbarnes@virtuousgeek.org>
Fri, 23 May 2014 20:16:40 +0000 (13:16 -0700)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 27 May 2014 20:17:08 +0000 (22:17 +0200)
commitc2cab901dfe5c53cd412a288450b2f97333a96e5
tree54ca4ccd458eb25440aceb3f1e34b945d3a6740b
parent4768d5c5882e2745eccc05151d143f0db0711ffe
drm/i915/vlv: assert and de-assert sideband reset at boot and resume v3

This is a bit like the CMN reset de-assert we do in DPIO_CTL, except
that it resets the whole common lane section of the PHY.  This is
required on machines where the BIOS doesn't do this for us on boot or
resume to properly re-calibrate and get the PHY ready to transmit data.

Without this patch, such machines won't resume correctly much of the time,
with the symptom being a 'port ready' timeout and/or a link training
failure.

Note that simply asserting reset at suspend and de-asserting at resume
is not sufficient, nor is simply de-asserting at boot.  Both of these
cases have been tested and have still been found to have failures on
some configurations.

v2: extract simpler set_power_well function for use in reset_dpio (Imre)
    move to reset_dpio (Daniel & Ville)
v3: don't reset if DPIO reset is already de-asserted (Imre)

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_display.c
drivers/gpu/drm/i915/intel_drv.h
drivers/gpu/drm/i915/intel_pm.c