1. 11 Jun, 2020 3 commits
    • Imre Deak's avatar
      drm/i915/dp_mst: Fix disabling MST on a port · 8d712a7e
      Imre Deak authored
      Currently MST on a port can get enabled/disabled from the hotplug work
      and get disabled from the short pulse work in a racy way. Fix this by
      relying on the MST state checking in the hotplug work and just schedule
      a hotplug work from the short pulse handler if some problem happened
      during the MST interrupt handling.
      
      This removes the explicit MST disabling in case of an AUX failure, but
      if AUX fails, then probably the detection will also fail during the
      scheduled hotplug work and it's not guaranteed that we'll see
      intermittent errors anyway.
      
      While at it also simplify the error checking of the MST interrupt
      handler.
      
      v2:
      - Convert intel_dp_check_mst_status() to return bool. (Ville)
      - Change the intel_dp->is_mst check to an assert, since after this patch
        the condition can't change after we checked it previously.
      - Document the return value from intel_dp_check_mst_status().
      v3:
      - Remove the intel_dp->is_mst check from intel_dp_check_mst_status().
        There is no point in checking the same condition twice, even though
        there is a chance that the hotplug work running concurrently changes
        it.
      
      Cc: José Roberto de Souza <jose.souza@intel.com>
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
      Reviewed-by: default avatarJosé Roberto de Souza <jose.souza@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200605094801.17709-1-imre.deak@intel.com
      8d712a7e
    • Imre Deak's avatar
      drm/i915: Fix the i915_dsc_fec_support debugfs file for DP MST connectors · f99fb309
      Imre Deak authored
      DSC is not supported on DP MST streams so just don't add this entry for
      MST connectors.
      
      This also fixes an OOPS, caused by the encoder->digport cast, which is
      not valid for MST encoders.
      
      v2:
      - Check encoder, which is unset for an MST connector, before it gets
        enabled.
      v3:
      - Just don't add this debugfs file for MST connectors. (Ville)
      
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
      Reviewed-by: default avatarManasi Navare <manasi.d.navare@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200609184140.4937-1-imre.deak@intel.com
      f99fb309
    • Imre Deak's avatar
      drm/i915/icl: Disable DIP on MST ports with the transcoder clock still on · c980216d
      Imre Deak authored
      According to BSpec the Data Island Packet should be disabled after
      disabling the transcoder, but before the transcoder clock select is set
      to none. On an ICL RVP, daisy-chained MST config not following this
      leads to a hang with the following MCE when disabling the output:
      
      [  870.948739] mce: [Hardware Error]: CPU 0: Machine Check Exception: 5 Bank 6: ba00000011000402
      [  871.019212] mce: [Hardware Error]: RIP !INEXACT! 10:<ffffffff81aca652> {poll_idle+0x92/0xb0}
      [  871.019212] mce: [Hardware Error]: TSC 135a261fe61
      [  871.019212] mce: [Hardware Error]: PROCESSOR 0:706e5 TIME 1591739604 SOCKET 0 APIC 0 microcode 20
      [  871.019212] mce: [Hardware Error]: Run the above through 'mcelog --ascii'
      [  871.019212] mce: [Hardware Error]: Machine check: Processor context corrupt
      [  871.019212] Kernel panic - not syncing: Fatal machine check
      [  871.019212] Kernel Offset: disabled
      
      Bspec: 4287
      
      Fixes: fa37a213 ("drm/i915: Stop sending DP SDPs on ddi disable")
      Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
      Cc: Uma Shankar <uma.shankar@intel.com>
      Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
      Reviewed-by: default avatarUma Shankar <uma.shankar@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200609220616.6015-1-imre.deak@intel.com
      c980216d
  2. 10 Jun, 2020 4 commits
  3. 09 Jun, 2020 3 commits
  4. 08 Jun, 2020 3 commits
  5. 07 Jun, 2020 1 commit
  6. 06 Jun, 2020 1 commit
  7. 05 Jun, 2020 9 commits
  8. 04 Jun, 2020 15 commits
  9. 03 Jun, 2020 1 commit