1. 30 Jul, 2021 25 commits
  2. 29 Jul, 2021 10 commits
  3. 28 Jul, 2021 3 commits
  4. 27 Jul, 2021 2 commits
    • José Roberto de Souza's avatar
      drm/i915/display: Disable audio, DRRS and PSR before planes · 84030adb
      José Roberto de Souza authored
      HDMI and DisplayPort sequences states that audio and PSR should be
      disabled before planes are disabled.
      Not following it did not caused any problems up to Alderlake-P but
      for this platform it causes underruns during the PSR2 disable
      sequence.
      
      Specification don't mention that DRRS should be disabled before planes
      but it looks safer to switch back to the default refresh rate before
      following with the rest of the pipe disable sequence.
      
      BSpec: 49191
      BSpec: 49190
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
      Signed-off-by: default avatarJosé Roberto de Souza <jose.souza@intel.com>
      Reviewed-by: default avatarGwan-gyeong Mun <gwan-gyeong.mun@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210726181559.80855-1-jose.souza@intel.com
      84030adb
    • Stanislav Lisovskiy's avatar
      drm/i915: Implement PSF GV point support · 192fbfb7
      Stanislav Lisovskiy authored
      PSF GV points are an additional factor that can limit the
      bandwidth available to display, separate from the traditional
      QGV points.  Whereas traditional QGV points represent possible
      memory clock frequencies, PSF GV points reflect possible
      frequencies of the memory fabric.
      
      Switching between PSF GV points has the advantage of incurring
      almost no memory access block time and thus does not need to be
      accounted for in watermark calculations.
      
      This patch adds support for those on top of regular QGV points.
      Those are supposed to be used simultaneously, i.e we are always
      at some QGV and some PSF GV point, based on the current video
      mode requirements.
      Bspec: 64631, 53998
      
      v2: Seems that initial assumption made during ml conversation
          was wrong, PCode rejects any masks containing points beyond
          the ones returned, so even though BSpec says we have around
          8 points theoretically, we can mask/unmask only those which
          are returned, trying to manipulate those beyond causes a
          failure from PCode. So switched back to generating mask
          from 1 - num_qgv_points, where num_qgv_points is the actual
          amount of points, advertised by PCode.
      
      v3: - Extended restricted qgv point mask to 0xf, as we have now
            3:2 bits for PSF GV points(Matt Roper)
          - Replaced val2 with NULL from PCode request, since its not being
            used(Matt Roper)
          - Replaced %d to 0x%x for better readability(thanks for spotting)
      Signed-off-by: default avatarStanislav Lisovskiy <stanislav.lisovskiy@intel.com>
      Cc: Matt Roper <matthew.d.roper@intel.com>
      Reviewed-by: default avatarMatt Roper <matthew.d.roper@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20210531064845.4389-2-stanislav.lisovskiy@intel.com
      192fbfb7