1. 27 Sep, 2023 9 commits
  2. 26 Sep, 2023 2 commits
  3. 25 Sep, 2023 2 commits
  4. 22 Sep, 2023 1 commit
  5. 21 Sep, 2023 25 commits
  6. 20 Sep, 2023 1 commit
    • Ville Syrjälä's avatar
      drm/i915: Implement transcoder LRR for TGL+ · 16a93594
      Ville Syrjälä authored
      Implement low refresh rate (LRR) where we change the vblank
      length by hand as requested, but otherwise keep the timing
      generator running in non-VRR mode (ie. fixed refresh rate).
      
      The panel itself must support VRR for this to work, and
      only TGL+ has the double buffred TRANS_VTOTAL.VTOTAL that
      we need to make the switch properly. The double buffer
      latching happens at the start of transcoders undelayed
      vblank. The other thing that we change is
      TRANS_VBLANK.VBLANK_END but the hardware entirely ignores
      that in DP mode. But I decided to keep writing it anyway
      just to avoid more special cases in readout/state check.
      
      v2: Document that TRANS_VBLANK.VBLANK_END is ignored by
          the hardware
      v3: Reconcile with VRR fastset
          Adjust update_lrr flag behaviour
          Make sure timings stay within VRR range
      v4: Fix up update_m_n vs. update_lrr rebase fail (Manasi)
          Drop DOUBLE_BUFFER_VACTIVE define as it's not needed (Manasi)
      
      TODO: Hook LRR into the automatic DRRS downclocking stuff?
      
      Cc: Manasi Navare <navaremanasi@chromium.org>
      Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230915103800.14218-1-ville.syrjala@linux.intel.comReviewed-by: default avatarManasi Navare <navaremanasi@chromium.org>
      16a93594