https://bugs.freedesktop.org/show_bug.cgi?id=91871
Bug ID: 91871 Summary: link retraining for DP not possible with current design of Atomic modeset framework Product: DRI Version: XOrg git Hardware: All OS: All Status: NEW Severity: normal Priority: medium Component: General Assignee: dri-devel@lists.freedesktop.org Reporter: sivakumar.thulasimani@intel.com
DP spec requires Link training from highest link rate supported by panel to lowest link rate supported by panel.
It is not possible to implement this in the current atomic modeset logic since it splits modeset into two half atomic_check and atomic_commit, where it is expected all values to be calculated in atomic_check and programmed in atomic_commit.
link training being a negotiation phase of DP modeset it is not possible to predict if a training at certain link rate will succeed or not. if it does fail it will require us to disable, calculate new values and enable pll. this is not possible in current DRM Atomic modeset framework.
https://bugs.freedesktop.org/show_bug.cgi?id=91871
rtshiva sivakumar.thulasimani@intel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|XOrg git |unspecified
https://bugs.freedesktop.org/show_bug.cgi?id=91871
Jani Nikula jani.nikula@intel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |conselvan2@gmail.com, | |intel-gfx-bugs@lists.freede | |sktop.org Component|General |DRM/Intel Assignee|dri-devel@lists.freedesktop |intel-gfx-bugs@lists.freede |.org |sktop.org QA Contact| |intel-gfx-bugs@lists.freede | |sktop.org
--- Comment #1 from Jani Nikula jani.nikula@intel.com --- To be fair, the same limitation was there before atomic.
Part of the problem is our modeset sequence, which we can't easily backtrack if the modeset fails at link training phase. Another part is that even if our modeset sequence supported that, we couldn't just reduce the mode to accommodate the lower link rate behind userspace's back. (We already pick the lowest rate that can support the mode; there's no margin to reduce.) We'd have to involve userspace somehow.
Drivers are free to use the drm dp helpers or use their own hooks for modeset. I think we should look at this from drm/i915 perspective, at least at first, so resassigning to DRM/Intel. If we come up with a way to negotiate this with userspace, that should be a generic solution.
dri-devel@lists.freedesktop.org