• Manasi Navare's avatar
    drm/i915/icl: Implement voltage swing programming sequence for Combo PHY DDI · fb5c8e9d
    Manasi Navare authored
    This is an important part of the DDI initalization as well as
    for changing the voltage during DisplayPort link training.
    
    The Voltage swing seqeuence is similar to Cannonlake.
    However it has different register definitions and hence
    it makes sense to create a separate vswing sequence and
    program functions for ICL to leave room for more changes
    in case the Bspec changes later and deviates from CNL sequence.
    
    v2:
    Use ~TAP3_DISABLE for enbaling that bit (Jani Nikula)
    
    v3:
    * Use dw4_scaling column for PORT_TX_DW4 values (Rodrigo)
    
    v4:
    * Call it combo_vswing, use switch statement (Paulo)
    
    v5 (from Paulo):
    * Fix a typo.
    * s/rate < 600000/rate <= 600000/.
    * Don't remove blank lines that should be there.
    
    v6:
    * Rebased by Rodrigo on top of Cannonlake changes
      where non vswing sequences are not aligned with iboost
      anymore.
    
    v7: Another rebase after an upstream rework.
    
    v8 (from Paulo):
    * Adjust the code to the upstream output type changes.
    * Squash the patch that moved some functions up.
    * Merge both get_combo_buf_trans functions in order to simplify the
      code.
    * Change the changelog format.
    
    v9 (from Paulo):
    * Use RTERM_SELECT instead of SCALING_MODE_SEL.
    * Adjust the output type handling according to how the other platforms
      do it now.
    
    v10 (from Paulo):
    * Fix comment left out from v9 changes (Rodrigo).
    
    Cc: Jani Nikula <jani.nikula@linux.intel.com>
    Cc: James Ausmus <james.ausmus@intel.com>
    Reviewed-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
    Signed-off-by: default avatarManasi Navare <manasi.d.navare@intel.com>
    Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
    Signed-off-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20180328215803.13835-8-paulo.r.zanoni@intel.com
    fb5c8e9d
intel_ddi.c 104 KB