OSDN Git Service

drm/i915/display: Add HAS_D12_PLANE_MINIMIZATION
authorJosé Roberto de Souza <jose.souza@intel.com>
Fri, 29 Jan 2021 18:29:41 +0000 (10:29 -0800)
committerJosé Roberto de Souza <jose.souza@intel.com>
Mon, 1 Feb 2021 15:54:36 +0000 (07:54 -0800)
- As RKL and ADL-S only have 5 planes, primary and 4 sprites and
  the cursor plane, let's group the handling together under
  HAS_D12_PLANE_MINIMIZATION.
- Also use macro to select pipe irq fault error mask.

BSpec: 49251
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Aditya Swarup <aditya.swarup@intel.com>
Reviewed-by: Anusha Srivatsa <anusha.srivatsa@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210129182945.217078-5-aditya.swarup@intel.com
drivers/gpu/drm/i915/display/intel_sprite.c
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/i915_irq.c
drivers/gpu/drm/i915/intel_device_info.c

index 4ce32df..5c366dc 100644 (file)
@@ -367,7 +367,7 @@ int intel_plane_check_src_coordinates(struct intel_plane_state *plane_state)
 
 static u8 icl_nv12_y_plane_mask(struct drm_i915_private *i915)
 {
-       if (IS_ROCKETLAKE(i915))
+       if (HAS_D12_PLANE_MINIMIZATION(i915))
                return BIT(PLANE_SPRITE2) | BIT(PLANE_SPRITE3);
        else
                return BIT(PLANE_SPRITE4) | BIT(PLANE_SPRITE5);
index 3b75b5e..548344e 100644 (file)
@@ -1785,6 +1785,9 @@ tgl_stepping_get(struct drm_i915_private *dev_priv)
 #define INTEL_DISPLAY_ENABLED(dev_priv) \
        (drm_WARN_ON(&(dev_priv)->drm, !HAS_DISPLAY(dev_priv)), !(dev_priv)->params.disable_display)
 
+#define HAS_D12_PLANE_MINIMIZATION(dev_priv) (IS_ROCKETLAKE(dev_priv) || \
+                                             IS_ALDERLAKE_S(dev_priv))
+
 static inline bool intel_vtd_active(void)
 {
 #ifdef CONFIG_INTEL_IOMMU
index c6b11f6..75389f8 100644 (file)
@@ -2257,7 +2257,7 @@ static u32 gen8_de_port_aux_mask(struct drm_i915_private *dev_priv)
 
 static u32 gen8_de_pipe_fault_mask(struct drm_i915_private *dev_priv)
 {
-       if (IS_ROCKETLAKE(dev_priv))
+       if (HAS_D12_PLANE_MINIMIZATION(dev_priv))
                return RKL_DE_PIPE_IRQ_FAULT_ERRORS;
        else if (INTEL_GEN(dev_priv) >= 11)
                return GEN11_DE_PIPE_IRQ_FAULT_ERRORS;
index 699412c..7bdf447 100644 (file)
@@ -261,7 +261,7 @@ void intel_device_info_runtime_init(struct drm_i915_private *dev_priv)
 
        BUILD_BUG_ON(BITS_PER_TYPE(intel_engine_mask_t) < I915_NUM_ENGINES);
 
-       if (IS_ROCKETLAKE(dev_priv))
+       if (HAS_D12_PLANE_MINIMIZATION(dev_priv))
                for_each_pipe(dev_priv, pipe)
                        runtime->num_sprites[pipe] = 4;
        else if (INTEL_GEN(dev_priv) >= 11)