Re: [PATCH 2/2] drm/i915/lspcon: Add workaround for resuming in PCON mode

Imre Deak
2016-10-21T09:07:29Z

On pe, 2016-10-21 at 11:51 +0300, Jani Nikula wrote:
> On Fri, 21 Oct 2016, Imre Deak <imre.deak@intel.com> wrote:
> > I tried this now on the fi-skl-6700hq machine in the bug report and it
> > seems to be the same failure mode as the APL one. There is one
> > difference in that on the SKL machine once the firmware is in the stuck
> > state after suspend/resume, a warm reboot may not recover it, so during
> > the next boot the LSPCON probe will fail. I guess that during warm
> > reboot LSPCON may continue to be powered, so to fully reset it a power
> > cycle is needed. In any case this patch fixes resume on that machine
> > too, so I couldn't reproduce the problem with it even across multiple
> > reboots, whereas without it it's 100% reproducible.
>
> A quick thought, when we do module unload or suspend, perhaps we should
> put the LSPCON to the state in which we expect to find it on
> probe/resume? In case it doesn't get reset.

The probe and resume functions handle both PCON and LS modes, switching
only if necessary. But in any case I tried the followings without
success:
- switch to LS mode during suspend
- power down the TMDS output during suspend after switching to LS mode
(DP_DUAL_MODE_TMDS_OEN) and then back on during resume
- while in PCON mode force DP_SET_POWER(D3) during suspend and then
DP_SET_POWER(D0) during resume

--Imre