Re: [PATCH] drm/i915: resume MST after reading back hw state

Daniel Vetter
2014-12-08T09:44:21Z

On Mon, Dec 08, 2014 at 01:23:37PM +1000, Dave Airlie wrote:
> From: Dave Airlie <airlied@redhat.com>
>
> Otherwise the MST resume paths can hit DPMS paths
> which hit state checker paths, which hit WARN_ON,
> because the state checker is inconsistent with the
> hw.
>
> This fixes a bunch of WARN_ON's on resume after
> undocking.
>
> Signed-off-by: Dave Airlie <airlied@redhat.com>

Makes sense, so Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

And Cc: stable@vger.kernel.org when Jani picks it up.

While reading around I've noticed though that we might miss dp mst changes
after resume:
- intel_dp_mst_resume checks for can_mst, so will skip if we didn't plug
in an mst thing before suspend.
- drm_helper_hpd_irq_event only does the locked detect dance and doesn't
do the unlocked mst dance we do before calling down into ->detect
callbacks.

So I think if we plug in an mst dock while suspended and then resume
we'll miss the hotplug in the kernel. Or do I miss something?
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch