From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: "Govindapillai, Vinod" <vinod.govindapillai@intel.com>
Cc: "intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH 15/19] drm/i915: Simplify cdclk_disable_noatomic()
Date: Thu, 6 Mar 2025 18:10:09 +0200 [thread overview]
Message-ID: <Z8nI4amyO227YuQZ@intel.com> (raw)
In-Reply-To: <ea61c60a6b473c5e76a151fefa273cd50ddedcb4.camel@intel.com>
On Tue, Mar 04, 2025 at 03:04:07PM +0000, Govindapillai, Vinod wrote:
> On Tue, 2025-02-18 at 23:19 +0200, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >
> > Instead of hand rolling the cdclk state disabling for a
> > pipe in noatomic() let's just recompute the whole thing
> > from scratch. Less code we have to remember to keep in sync.
> >
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> > drivers/gpu/drm/i915/display/intel_cdclk.c | 7 +------
> > 1 file changed, 1 insertion(+), 6 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c
> > b/drivers/gpu/drm/i915/display/intel_cdclk.c
> > index 62caee4a8b64..2a8749a0213e 100644
> > --- a/drivers/gpu/drm/i915/display/intel_cdclk.c
> > +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c
> > @@ -3364,13 +3364,8 @@ void intel_cdclk_update_hw_state(struct intel_display *display)
> > void intel_cdclk_crtc_disable_noatomic(struct intel_crtc *crtc)
> > {
> > struct intel_display *display = to_intel_display(crtc);
> > - struct intel_cdclk_state *cdclk_state =
> > - to_intel_cdclk_state(display->cdclk.obj.state);
> > - enum pipe pipe = crtc->pipe;
> >
> > - cdclk_state->min_cdclk[pipe] = 0;
> > - cdclk_state->min_voltage_level[pipe] = 0;
> > - cdclk_state->active_pipes &= ~BIT(pipe);
> > + intel_cdclk_update_hw_state(display);
> > }
> >
>
> Okay! Now I see that passing active_pipes to intel_cdclk_update_hw_state() as I commented in one of
> the earlier patch wont work!
>
> But isnt this bit efficient, as we will be calling, intel_cdclk_crtc_disable_noatomic() (and
> intel_cdclk_update_hw_state()) for_each_intel_crtc_in_pipe_mask(), we end up executing
> intel_cdclk_update_hw_state() redundantly?
>
> Instead should we extract intel_cdclk_update_crtc_hw_state() from intel_cdclk_update_hw_state()
> and use that here?
We'll just do these once during driver for the typical case, and
only if have to sanitize off some pipes then we'll potentially
do them extra times. Performance doesn't matter at that point,
so the simpler it all is the better.
--
Ville Syrjälä
Intel
next prev parent reply other threads:[~2025-03-06 16:10 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-18 21:18 [PATCH 00/19] drm/i915: cdclk/bw/dbuf readout/sanitation cleanup Ville Syrjala
2025-02-18 21:18 ` [PATCH 01/19] drm/i915/cdclk: Do cdclk post plane programming later Ville Syrjala
2025-02-25 21:19 ` Govindapillai, Vinod
2025-02-18 21:18 ` [PATCH 02/19] drm/i915: Drop redundant shared_dpll=NULL assignments Ville Syrjala
2025-02-25 21:32 ` Govindapillai, Vinod
2025-02-18 21:18 ` [PATCH 03/19] drm/i915: Don't clobber crtc_state->cpu_transcoder for inactive crtcs Ville Syrjala
2025-03-02 17:28 ` Govindapillai, Vinod
2025-02-18 21:18 ` [PATCH 04/19] drm/i915: Use intel_plane_set_invisible() in intel_plane_disable_noatomic() Ville Syrjala
2025-03-02 17:57 ` Govindapillai, Vinod
2025-02-18 21:18 ` [PATCH 05/19] drm/i915: Extract intel_cdclk_crtc_disable_noatomic() Ville Syrjala
2025-03-02 18:00 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 06/19] drm/i915: Extract skl_wm_crtc_disable_noatomic() Ville Syrjala
2025-03-02 18:06 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 07/19] drm/i915: clean up pipe's ddb usage in intel_crtc_disable_noatomic() Ville Syrjala
2025-03-02 18:19 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 08/19] drm/i915: Add skl_wm_plane_disable_noatomic() Ville Syrjala
2025-03-04 13:47 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 09/19] drm/i915: Extract intel_bw_crtc_disable_noatomic() Ville Syrjala
2025-03-04 13:49 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 10/19] drm/i915: Extract intel_cdclk_update_hw_state() Ville Syrjala
2025-03-04 14:04 ` Govindapillai, Vinod
2025-03-06 15:46 ` Ville Syrjälä
2025-02-18 21:19 ` [PATCH 11/19] drm/i915: Extract intel_bw_update_hw_state() Ville Syrjala
2025-03-04 14:08 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 12/19] drm/i915: Update bw_state->active_pipes during readout Ville Syrjala
2025-03-04 14:10 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 13/19] drm/i915: Skip some bw_state readout on pre-icl Ville Syrjala
2025-03-04 14:20 ` Govindapillai, Vinod
2025-03-06 16:01 ` Ville Syrjälä
2025-02-18 21:19 ` [PATCH 14/19] sem/i915: Simplify intel_cdclk_update_hw_state() Ville Syrjala
2025-03-04 14:25 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 15/19] drm/i915: Simplify cdclk_disable_noatomic() Ville Syrjala
2025-03-04 15:04 ` Govindapillai, Vinod
2025-03-04 15:22 ` Govindapillai, Vinod
2025-03-06 16:10 ` Ville Syrjälä [this message]
2025-02-18 21:19 ` [PATCH 16/19] drm/i915: Split wm sanitize from readout Ville Syrjala
2025-03-04 15:10 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 17/19] drm/i915: Do wm readout ealier for skl+ Ville Syrjala
2025-03-04 15:10 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 18/19] drm/i915: Move dbuf_state->active_piepes into skl_wm_get_hw_state() Ville Syrjala
2025-03-04 15:12 ` Govindapillai, Vinod
2025-02-18 21:19 ` [PATCH 19/19] drm/i915: Relocate intel_bw_crtc_update() Ville Syrjala
2025-03-04 15:12 ` Govindapillai, Vinod
2025-02-18 22:51 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: cdclk/bw/dbuf readout/sanitation cleanup Patchwork
2025-02-18 22:51 ` ✗ Fi.CI.SPARSE: " Patchwork
2025-02-18 23:04 ` ✓ i915.CI.BAT: success " Patchwork
2025-02-19 1:24 ` ✗ i915.CI.Full: failure " 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=Z8nI4amyO227YuQZ@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=vinod.govindapillai@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox