Merge tag 'drm-intel-next-2021-04-01' of git://anongit.freedesktop.org/drm/drm-intel...
authorDave Airlie <airlied@redhat.com>
Thu, 8 Apr 2021 04:02:14 +0000 (14:02 +1000)
committerDave Airlie <airlied@redhat.com>
Thu, 8 Apr 2021 04:02:21 +0000 (14:02 +1000)
Features:
- Add support for FBs requiring a power-of-two stride padding (Imre)

Refactoring:
- Disassociate display version from gen (Matt)
- Refactor legacy DP and HDMI code to separate files (Ville)
- Refactor FB plane code to a separate file (Imre)
- Refactor VBT child device info parsing and usage (Jani)
- Refactor KBL/TGL/ADL-S display and gt stepping schemes (Jani)

Fixes:
- DP Link-Training Tunable PHY Repeaters (LTTPR) fixes (Imre)
- HDCP fixes (Anshuman)
- DP 2.0 HDMI 2.1 PCON Fixed Rate Link (FRL) fixes (Ankit)
- Set HDA link parameters in driver (Kai)
- Fix enabled_planes bitmask (Ville)
- Fix transposed arguments to skl_plane_wm_level() (Ville)
- Stop adding planes to the commit needlessly (Ville)

Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/87v996ml17.fsf@intel.com
15 files changed:
1  2 
drivers/gpu/drm/i915/Makefile
drivers/gpu/drm/i915/display/intel_display.c
drivers/gpu/drm/i915/display/intel_display.h
drivers/gpu/drm/i915/display/intel_display_debugfs.c
drivers/gpu/drm/i915/display/intel_overlay.c
drivers/gpu/drm/i915/gt/gen8_engine_cs.c
drivers/gpu/drm/i915/gt/intel_ggtt.c
drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c
drivers/gpu/drm/i915/gt/intel_workarounds.c
drivers/gpu/drm/i915/i915_debugfs.c
drivers/gpu/drm/i915/i915_drv.c
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/i915_pci.c
drivers/gpu/drm/i915/intel_device_info.c
drivers/gpu/drm/i915/intel_device_info.h

Simple merge
@@@ -1185,13 -1094,13 +1112,13 @@@ retry
                 * mode that matches the user configuration.
                 */
                ret = i915_vma_pin_fence(vma);
-               if (ret != 0 && INTEL_GEN(dev_priv) < 4) {
+               if (ret != 0 && DISPLAY_VER(dev_priv) < 4) {
                        i915_vma_unpin(vma);
 -                      vma = ERR_PTR(ret);
 -                      goto err;
 +                      goto err_unpin;
                }
 +              ret = 0;
  
 -              if (ret == 0 && vma->fence)
 +              if (vma->fence)
                        *out_flags |= PLANE_HAS_FENCE;
        }
  
@@@ -11363,12 -10508,20 +10536,12 @@@ int intel_plane_pin_fb(struct intel_pla
        struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
        struct drm_framebuffer *fb = plane_state->hw.fb;
        struct i915_vma *vma;
 +      bool phys_cursor =
 +              plane->id == PLANE_CURSOR &&
 +              INTEL_INFO(dev_priv)->display.cursor_needs_physical;
  
 -      if (plane->id == PLANE_CURSOR &&
 -          INTEL_INFO(dev_priv)->display.cursor_needs_physical) {
 -              struct drm_i915_gem_object *obj = intel_fb_obj(fb);
 -              const int align = intel_cursor_alignment(dev_priv);
 -              int err;
 -
 -              err = i915_gem_object_attach_phys(obj, align);
 -              if (err)
 -                      return err;
 -      }
 -
 -      vma = intel_pin_and_fence_fb_obj(fb,
 +      vma = intel_pin_and_fence_fb_obj(fb, phys_cursor,
-                                        &plane_state->view,
+                                        &plane_state->view.gtt,
                                         intel_plane_uses_fence(plane_state),
                                         &plane_state->flags);
        if (IS_ERR(vma))
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge