On Thu, Jan 05, 2023 at 02:10:38PM +0100, Andrzej Hajda wrote:
> The helper makes the code more compact and readable.
> 
> Signed-off-by: Andrzej Hajda <andrzej.ha...@intel.com>

Reviewed-by: Rodrigo Vivi <rodrigo.v...@intel.com>

> ---
>  drivers/gpu/drm/i915/display/intel_display.c  | 22 ++++++++-----------
>  .../drm/i915/display/intel_modeset_setup.c    | 17 ++++++--------
>  2 files changed, 16 insertions(+), 23 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c 
> b/drivers/gpu/drm/i915/display/intel_display.c
> index e75b9b2a0e015a..ce506c9fd6ab9f 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -293,11 +293,11 @@ static void
>  skl_wa_827(struct drm_i915_private *dev_priv, enum pipe pipe, bool enable)
>  {
>       if (enable)
> -             intel_de_write(dev_priv, CLKGATE_DIS_PSL(pipe),
> -                            intel_de_read(dev_priv, CLKGATE_DIS_PSL(pipe)) | 
> DUPS1_GATING_DIS | DUPS2_GATING_DIS);
> +             intel_de_rmw(dev_priv, CLKGATE_DIS_PSL(pipe),
> +                          0, DUPS1_GATING_DIS | DUPS2_GATING_DIS);
>       else
> -             intel_de_write(dev_priv, CLKGATE_DIS_PSL(pipe),
> -                            intel_de_read(dev_priv, CLKGATE_DIS_PSL(pipe)) & 
> ~(DUPS1_GATING_DIS | DUPS2_GATING_DIS));
> +             intel_de_rmw(dev_priv, CLKGATE_DIS_PSL(pipe),
> +                          DUPS1_GATING_DIS | DUPS2_GATING_DIS, 0);
>  }
>  
>  /* Wa_2006604312:icl,ehl */
> @@ -306,11 +306,9 @@ icl_wa_scalerclkgating(struct drm_i915_private 
> *dev_priv, enum pipe pipe,
>                      bool enable)
>  {
>       if (enable)
> -             intel_de_write(dev_priv, CLKGATE_DIS_PSL(pipe),
> -                            intel_de_read(dev_priv, CLKGATE_DIS_PSL(pipe)) | 
> DPFR_GATING_DIS);
> +             intel_de_rmw(dev_priv, CLKGATE_DIS_PSL(pipe), 0, 
> DPFR_GATING_DIS);
>       else
> -             intel_de_write(dev_priv, CLKGATE_DIS_PSL(pipe),
> -                            intel_de_read(dev_priv, CLKGATE_DIS_PSL(pipe)) & 
> ~DPFR_GATING_DIS);
> +             intel_de_rmw(dev_priv, CLKGATE_DIS_PSL(pipe), DPFR_GATING_DIS, 
> 0);
>  }
>  
>  /* Wa_1604331009:icl,jsl,ehl */
> @@ -1852,12 +1850,10 @@ static void hsw_set_frame_start_delay(const struct 
> intel_crtc_state *crtc_state)
>       enum transcoder transcoder = crtc_state->cpu_transcoder;
>       i915_reg_t reg = DISPLAY_VER(dev_priv) >= 14 ? 
> MTL_CHICKEN_TRANS(transcoder) :
>                        CHICKEN_TRANS(transcoder);
> -     u32 val;
>  
> -     val = intel_de_read(dev_priv, reg);
> -     val &= ~HSW_FRAME_START_DELAY_MASK;
> -     val |= HSW_FRAME_START_DELAY(crtc_state->framestart_delay - 1);
> -     intel_de_write(dev_priv, reg, val);
> +     intel_de_rmw(dev_priv, reg,
> +                  HSW_FRAME_START_DELAY_MASK,
> +                  HSW_FRAME_START_DELAY(crtc_state->framestart_delay - 1));
>  }
>  
>  static void icl_ddi_bigjoiner_pre_enable(struct intel_atomic_state *state,
> diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c 
> b/drivers/gpu/drm/i915/display/intel_modeset_setup.c
> index 96395bfbd41dfb..6f6dc7c6b88b0c 100644
> --- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c
> +++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c
> @@ -647,17 +647,14 @@ static void intel_early_display_was(struct 
> drm_i915_private *i915)
>        * Also known as Wa_14010480278.
>        */
>       if (IS_DISPLAY_VER(i915, 10, 12))
> -             intel_de_write(i915, GEN9_CLKGATE_DIS_0,
> -                            intel_de_read(i915, GEN9_CLKGATE_DIS_0) | 
> DARBF_GATING_DIS);
> +             intel_de_rmw(i915, GEN9_CLKGATE_DIS_0, 0, DARBF_GATING_DIS);
>  
> -     if (IS_HASWELL(i915)) {
> -             /*
> -              * WaRsPkgCStateDisplayPMReq:hsw
> -              * System hang if this isn't done before disabling all planes!
> -              */
> -             intel_de_write(i915, CHICKEN_PAR1_1,
> -                            intel_de_read(i915, CHICKEN_PAR1_1) | 
> FORCE_ARB_IDLE_PLANES);
> -     }
> +     /*
> +      * WaRsPkgCStateDisplayPMReq:hsw
> +      * System hang if this isn't done before disabling all planes!
> +      */
> +     if (IS_HASWELL(i915))
> +             intel_de_rmw(i915, CHICKEN_PAR1_1, 0, FORCE_ARB_IDLE_PLANES);
>  
>       if (IS_KABYLAKE(i915) || IS_COFFEELAKE(i915) || IS_COMETLAKE(i915)) {
>               /* Display WA #1142:kbl,cfl,cml */
> -- 
> 2.34.1
> 

Reply via email to