1. 22 12月, 2020 6 次提交
  2. 19 11月, 2020 4 次提交
  3. 13 11月, 2020 1 次提交
  4. 05 11月, 2020 1 次提交
  5. 30 10月, 2020 2 次提交
  6. 21 10月, 2020 2 次提交
  7. 17 10月, 2020 2 次提交
  8. 14 10月, 2020 1 次提交
  9. 12 10月, 2020 4 次提交
    • I
      drm/i915: Switch to LTTPR non-transparent mode link training · b30edfd8
      Imre Deak 提交于
      The DP Standard's recommendation is to use the LTTPR non-transparent
      mode link training if LTTPRs are detected, so let's do this.
      
      Besides power-saving, the advantages of this are that the maximum number
      of LTTPRs can only be used in non-transparent mode (the limit is 5-8 in
      transparent mode), and it provides a way to narrow down the reason for a
      link training failure to a given link segment. Non-transparent mode is
      probably also the mode that was tested the most by the industry.
      
      The changes in this patchset:
      - Pass the DP PHY that is currently link trained to all LT helpers, so
        that these can access the correct LTTPR/DPRX DPCD registers.
      - During LT take into account the LTTPR common lane rate/count and the
        per LTTPR-PHY vswing/pre-emph limits.
      - Switch to LTTPR non-transparent LT mode and train each link segment
        according to the sequence in DP Standard v2.0 (complete CR/EQ for
        each segment before continuing with the next segment).
      
      v2:
      - Switch to non-transparent mode during connector detection, which is
        required before reading the per-PHY LTTPR capabilities.
      - Move the DP_PHY_LTTPR() macro to drm_dp_helper.h (Ville)
      - Use the new drm_dp_dpcd_read_phy_link_status() instead of adding the
        same logic to intel_dp_get_link_status(). (Ville)
      - Make intel_dp_lttpr_phy_caps() return a pointer to the whole array
        instead of a pointer to its first element. (Ville)
      - Add the intel_dp_phy_is_downstream_of_source() helper. (Ville)
      - Add a code comment about the disable->enable quirk of
        non-transparent mode.
      - Add the intel_dp_training_pattern_set_reg() helper.
      - Fix checkpatch/sparse warns.
      
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NImre Deak <imre.deak@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20201007170917.1764556-7-imre.deak@intel.com
      b30edfd8
    • I
      drm/i915: Switch to LTTPR transparent mode link training · 7b2a4ab8
      Imre Deak 提交于
      By default LTTPRs should be in transparent link training mode,
      nevertheless in this patch we switch to this default mode explicitly.
      
      The DP Standard recommends this, supposedly because an LTTPR may be left
      in the non-transparent mode (by BIOS, previous kernel, or after reset
      due to a firmware bug). I haven't seen this happening, but let's follow
      the DP Standard.
      
      v2:
      - Add a code comment about the explicit disabling of non-transparent
        mode.
      v3:
      - Move check to prevent initing LTTPRs on eDP to init_dp_lttpr_init().
      
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NImre Deak <imre.deak@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20201007170917.1764556-6-imre.deak@intel.com
      7b2a4ab8
    • I
      drm/i915: Simplify the link training functions · 0a5991f5
      Imre Deak 提交于
      Split the prepare, link training, fallback-handling steps into their own
      functions for clarity and as a preparation for the upcoming LTTPR
      changes.
      
      While at it also:
      - Unexport and inline intel_dp_set_idle_link_train(), which is used at a
        single place.
      - Add some documentation to functions that are exported or that can use
        a better description about which part of the LT sequence they
        implement.
      
      v2: (Ville)
      - Unexport/inline intel_dp_set_idle_link_train()
      - Make the documentation of
        intel_dp_prepare_link_train()/intel_dp_stop_link_train() more accurate
        wrt. HW specific details.
      
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NImre Deak <imre.deak@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20201007170917.1764556-3-imre.deak@intel.com
      0a5991f5
    • I
      drm/i915: Fix DP link training pattern mask · 6777a855
      Imre Deak 提交于
      An LTTPR can be trained with training pattern 4 even if the DPCD
      revision is < 1.4, but drm_dp_training_pattern_mask() would change
      pattern 4 to pattern 3 on those DPCD revisions.
      
      Since intel_dp_training_pattern() makes already sure that the proper
      training pattern is used, all that needs to be masked out is the
      scrambling disable flag, which is or'd to the mask later based on the
      training pattern.
      
      v2:
      - Use a helper instead of open-coding the masking. (Ville)
      
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NImre Deak <imre.deak@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20201007170917.1764556-2-imre.deak@intel.com
      6777a855
  10. 10 10月, 2020 2 次提交
  11. 08 10月, 2020 1 次提交
  12. 06 10月, 2020 3 次提交
  13. 02 10月, 2020 1 次提交
  14. 01 10月, 2020 6 次提交
  15. 25 9月, 2020 3 次提交
  16. 17 9月, 2020 1 次提交