update CRTCs before enabling an output
ClosedPublic

Authored by sebas on Aug 2 2016, 12:53 PM.

Details

Summary

When connecting the docking station (Lenovo OneLink+), which has a VGA
connected monitor attached, enabling a display usually fails. It
complains about no CRTC being available (and indeed the available CRTCs
don't have our output as possible output). Updating the CRTC before
enabling an output makes this work for me.

Note: it's not a problem when connecting via HDMI, this seems to be
either unique to VGA or to the docking station. (Other dock users report
similar behaviour).

I'm being fairly liberal with update calls here, probably just doing it
in enableOutput will work as well -- but I haven't extensively tested
it. I don't know how expensive these calls are.

On boot, my setup is still not restored, but at least with this patch
manually enabling an output works reliably now.

BUG:366346

Test Plan
  • rebooted with dock disconnected, can enable an output with this patch, would reliably fail without
  • rebooted with dock connected, still works
  • connected/disconnected/connected dock with output attached, works well

Diff Detail

Repository
R110 KScreen Library
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
sebas updated this revision to Diff 5639.Aug 2 2016, 12:53 PM
sebas retitled this revision from to update CRTCs before enabling an output.
sebas updated this object.
sebas edited the test plan for this revision. (Show Details)
sebas added a reviewer: dvratil.
sebas added a subscriber: Plasma.
Restricted Application added a project: Plasma. · View Herald TranscriptAug 2 2016, 12:53 PM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
graesslin accepted this revision.Aug 2 2016, 1:34 PM
graesslin added a reviewer: graesslin.
graesslin added a subscriber: graesslin.

Looks good to me

This revision is now accepted and ready to land.Aug 2 2016, 1:34 PM
This revision was automatically updated to reflect the committed changes.