All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Lisovskiy, Stanislav" <stanislav.lisovskiy@intel.com>
To: Ville Syrjala <ville.syrjala@linux.intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH 1/4] drm/i915: Remove locks around skl+ scaler programming
Date: Tue, 29 Mar 2022 12:28:17 +0300	[thread overview]
Message-ID: <20220329092817.GA1336@intel.com> (raw)
In-Reply-To: <20220224165103.15682-2-ville.syrjala@linux.intel.com>

On Thu, Feb 24, 2022 at 06:51:00PM +0200, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> All the skl+ scaler registers are suitably confined to their own
> cachelines so we don't need the uncore.lock to globally serialize
> access to these registers. We actually already dropped some of this
> in commit 14ad15296d1f ("drm/i915: Make skl+ universal plane
> registers unlocked") as the plane scaler enabling/reconfiguration
> became lockless. So let's complete that and remove the rest of
> the locks from the scaler programming as well.
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>

> ---
>  drivers/gpu/drm/i915/display/skl_scaler.c | 10 ----------
>  1 file changed, 10 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/skl_scaler.c b/drivers/gpu/drm/i915/display/skl_scaler.c
> index c2e94118566b..ac67e9fbb713 100644
> --- a/drivers/gpu/drm/i915/display/skl_scaler.c
> +++ b/drivers/gpu/drm/i915/display/skl_scaler.c
> @@ -412,7 +412,6 @@ void skl_pfit_enable(const struct intel_crtc_state *crtc_state)
>  	int x = dst->x1;
>  	int y = dst->y1;
>  	int hscale, vscale;
> -	unsigned long irqflags;
>  	int id;
>  	u32 ps_ctrl;
>  
> @@ -434,8 +433,6 @@ void skl_pfit_enable(const struct intel_crtc_state *crtc_state)
>  	ps_ctrl = skl_scaler_get_filter_select(crtc_state->hw.scaling_filter, 0);
>  	ps_ctrl |=  PS_SCALER_EN | scaler_state->scalers[id].mode;
>  
> -	spin_lock_irqsave(&dev_priv->uncore.lock, irqflags);
> -
>  	skl_scaler_setup_filter(dev_priv, pipe, id, 0,
>  				crtc_state->hw.scaling_filter);
>  
> @@ -449,8 +446,6 @@ void skl_pfit_enable(const struct intel_crtc_state *crtc_state)
>  			  x << 16 | y);
>  	intel_de_write_fw(dev_priv, SKL_PS_WIN_SZ(pipe, id),
>  			  width << 16 | height);
> -
> -	spin_unlock_irqrestore(&dev_priv->uncore.lock, irqflags);
>  }
>  
>  void
> @@ -519,15 +514,10 @@ static void skl_detach_scaler(struct intel_crtc *crtc, int id)
>  {
>  	struct drm_device *dev = crtc->base.dev;
>  	struct drm_i915_private *dev_priv = to_i915(dev);
> -	unsigned long irqflags;
> -
> -	spin_lock_irqsave(&dev_priv->uncore.lock, irqflags);
>  
>  	intel_de_write_fw(dev_priv, SKL_PS_CTRL(crtc->pipe, id), 0);
>  	intel_de_write_fw(dev_priv, SKL_PS_WIN_POS(crtc->pipe, id), 0);
>  	intel_de_write_fw(dev_priv, SKL_PS_WIN_SZ(crtc->pipe, id), 0);
> -
> -	spin_unlock_irqrestore(&dev_priv->uncore.lock, irqflags);
>  }
>  
>  /*
> -- 
> 2.34.1
> 

  reply	other threads:[~2022-03-29  9:27 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-24 16:50 [Intel-gfx] [PATCH 0/4] drm/i915: Optimize CSC updates for ilk+ Ville Syrjala
2022-02-24 16:51 ` [Intel-gfx] [PATCH 1/4] drm/i915: Remove locks around skl+ scaler programming Ville Syrjala
2022-03-29  9:28   ` Lisovskiy, Stanislav [this message]
2022-02-24 16:51 ` [Intel-gfx] [PATCH 2/4] drm/i915: Make ilk+ pfit regiser unlocked Ville Syrjala
2022-03-29  9:28   ` Lisovskiy, Stanislav
2022-02-24 16:51 ` [Intel-gfx] [PATCH 3/4] drm/i915: Split color_commit() into noarm+arm pair Ville Syrjala
2022-03-29  9:29   ` Lisovskiy, Stanislav
2022-02-24 16:51 ` [Intel-gfx] [PATCH 4/4] drm/i915: Split pipe+output CSC programming to " Ville Syrjala
2022-03-29  9:29   ` Lisovskiy, Stanislav
2022-02-25  3:34 ` [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Optimize CSC updates for ilk+ Patchwork
2022-02-25 19:27 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220329092817.GA1336@intel.com \
    --to=stanislav.lisovskiy@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=ville.syrjala@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.