• Imre Deak's avatar
    drm/i915/dp: Retrain SST links via a modeset commit · 2885d283
    Imre Deak authored
    Instead of direct calls of the link training functions, use a modeset
    commit to retrain a DP link in SST mode, similarly to how this is done
    in DP-MST mode. Originally the current way was chosen presumedly,
    because there wasn't a well-established way in place for the driver to
    do an internal (vs. userspace/kernel client) commit. Since then such
    internal commits became a common place (initial-, HDMI/TC link reset
    commit), so there is no reason to handle the DP-SST link-retraining case
    differently.
    
    At the end of the current sequence the HW reported a FIFO underrun -
    without other issues visible to users - because during retraining the
    link's encoder/port was disabled/re-enabled without also
    disabling/re-enabling the corresponding pipe/transcoder (as required by
    the spec); the corresponding underrun error message was suppressed as a
    known issue. Based on Ankit's test on DG2 the underrun error was still
    reported as it got detected with some (vblank) delay wrt. other
    platforms. Switching to a modeset commit resolves these underrun related
    issues.
    
    Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Reviewed-by: default avatarSuraj Kandpal <suraj.kandpal@intel.com>
    Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20240712135724.660399-1-imre.deak@intel.com
    2885d283
intel_dp.c 197 KB