[SKL] Connector states are not updated after resume
Submitted by MichaelLong
Assigned to Intel GFX Bugs mailing list
Link to original bug (#107967)
Description
Whenever I switch my work environment with my laptop between my office setup and my home setup within a suspend/resume-cycle, the connector output states are not updated.
The laptop involved, is a Lenovo Thinkpad T460p. On both sites a Lenovo ThinkPad Ultra Dock (type 40A2) is used.
Home monitor setup:
Eizo S2431W 24" in landscape mode, connected to DP3-1
Office monitor setup:
Eizo S2433W 24" in portrait mode, left, connected to DP3-1
Eizo S2431W 24" in landscape mode, right, connected to DP3-2
For details see the attached xrandr outputs.
Lately, at around kernel 4.16, when suspending the laptop in the office setup, carrying to my home and resuming it there, the connector outputs are not updated at all.
In this scenario the system shows a 90° rotated lock screen from KDE on the only connected screen. Presumably the left one of from the office setup. The xrandr tool still shows that DP3-1 and DP3-2 are connected.
The same happens vice versa, when suspend in the home setup and resuming it in the office setup, it only displays one screen (on the one that is physically rotated), probably because the are both connected to DP3-1.
I have attached two kernel outputs showing both suspend/resume cycles, one made with kernel 4.18.8 and the other one already with drm-tip.
The only known workaround to that problem is to let the laptop resume in an un-docked state before docking it again.