From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Imre Deak <imre.deak@intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH v2 04/12] drm/i915: Separate intel_crtc_disable_noatomic_begin/complete()
Date: Thu, 4 May 2023 20:15:13 +0300 [thread overview]
Message-ID: <ZFPoIcXn1A+MK2oL@intel.com> (raw)
In-Reply-To: <20230503231048.432368-5-imre.deak@intel.com>
On Thu, May 04, 2023 at 02:10:40AM +0300, Imre Deak wrote:
> Split calling the CRTC/encoder disabling hooks and updating the CRTC and
> DPLL object states from updating the CRTC and atomic state and other
> global state (BW, CDCLK, DBUF) into separate functions. When disabling a
> bigjoiner configuration the latter step can be done only after all the
> linked pipes are disabled, so this change prepares for that.
>
> No functional changes.
>
> Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> .../drm/i915/display/intel_modeset_setup.c | 33 ++++++++++++++-----
> 1 file changed, 24 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c b/drivers/gpu/drm/i915/display/intel_modeset_setup.c
> index c1a4a7bcc56ae..922ea5ddd0c5b 100644
> --- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c
> +++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c
> @@ -30,17 +30,10 @@
> #include "intel_wm.h"
> #include "skl_watermark.h"
>
> -static void intel_crtc_disable_noatomic(struct intel_crtc *crtc,
> - struct drm_modeset_acquire_ctx *ctx)
> +static void intel_crtc_disable_noatomic_begin(struct intel_crtc *crtc,
> + struct drm_modeset_acquire_ctx *ctx)
> {
> - struct intel_encoder *encoder;
> struct drm_i915_private *i915 = to_i915(crtc->base.dev);
> - struct intel_bw_state *bw_state =
> - to_intel_bw_state(i915->display.bw.obj.state);
> - struct intel_cdclk_state *cdclk_state =
> - to_intel_cdclk_state(i915->display.cdclk.obj.state);
> - struct intel_dbuf_state *dbuf_state =
> - to_intel_dbuf_state(i915->display.dbuf.obj.state);
> struct intel_crtc_state *crtc_state =
> to_intel_crtc_state(crtc->base.state);
> struct intel_plane *plane;
> @@ -92,6 +85,21 @@ static void intel_crtc_disable_noatomic(struct intel_crtc *crtc,
> crtc_state->shared_dpll->state.pipe_mask &= ~BIT(pipe);
> crtc_state->shared_dpll->active_mask &= ~BIT(pipe);
> }
> +}
> +
> +static void intel_crtc_disable_noatomic_complete(struct intel_crtc *crtc)
> +{
> + struct intel_encoder *encoder;
> + struct drm_i915_private *i915 = to_i915(crtc->base.dev);
> + struct intel_bw_state *bw_state =
> + to_intel_bw_state(i915->display.bw.obj.state);
> + struct intel_cdclk_state *cdclk_state =
> + to_intel_cdclk_state(i915->display.cdclk.obj.state);
> + struct intel_dbuf_state *dbuf_state =
> + to_intel_dbuf_state(i915->display.dbuf.obj.state);
> + struct intel_crtc_state *crtc_state =
> + to_intel_crtc_state(crtc->base.state);
> + enum pipe pipe = crtc->pipe;
>
> __drm_atomic_helper_crtc_destroy_state(&crtc_state->uapi);
> intel_crtc_free_hw_state(crtc_state);
> @@ -115,6 +123,13 @@ static void intel_crtc_disable_noatomic(struct intel_crtc *crtc,
> bw_state->num_active_planes[pipe] = 0;
> }
>
> +static void intel_crtc_disable_noatomic(struct intel_crtc *crtc,
> + struct drm_modeset_acquire_ctx *ctx)
> +{
> + intel_crtc_disable_noatomic_begin(crtc, ctx);
> + intel_crtc_disable_noatomic_complete(crtc);
> +}
> +
> static void intel_modeset_update_connector_atomic_state(struct drm_i915_private *i915)
> {
> struct intel_connector *connector;
> --
> 2.37.2
--
Ville Syrjälä
Intel
next prev parent reply other threads:[~2023-05-04 17:19 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-03 23:10 [Intel-gfx] [PATCH v2 00/12] drm/i915/tc: Add a workaround for an IOM/TCSS firmware hang issue Imre Deak
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 01/12] drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration Imre Deak
2023-05-04 14:39 ` Ville Syrjälä
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 02/12] drm/i915: Make the CRTC state consistent during sanitize-disabling Imre Deak
2023-05-04 14:38 ` Ville Syrjälä
2023-05-04 17:08 ` Imre Deak
2023-05-05 20:46 ` [Intel-gfx] [PATCH v3 " Imre Deak
2023-05-09 14:45 ` Ville Syrjälä
2023-05-09 18:28 ` Imre Deak
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 03/12] drm/i915: Update connector atomic state before crtc sanitize-disabling Imre Deak
2023-05-04 14:42 ` Ville Syrjälä
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 04/12] drm/i915: Separate intel_crtc_disable_noatomic_begin/complete() Imre Deak
2023-05-04 17:15 ` Ville Syrjälä [this message]
2023-05-05 20:46 ` [Intel-gfx] [PATCH v3 " Imre Deak
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 05/12] drm/i915: Factor out set_encoder_for_connector() Imre Deak
2023-05-04 14:48 ` Ville Syrjälä
2023-05-05 20:46 ` [Intel-gfx] [PATCH v3 " Imre Deak
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 06/12] drm/i915: Add support for disabling any CRTCs during HW readout/sanitization Imre Deak
2023-05-04 17:15 ` Ville Syrjälä
2023-05-04 20:29 ` Imre Deak
2023-05-05 20:46 ` [Intel-gfx] [PATCH v3 " Imre Deak
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 07/12] drm/i915/dp: Add link training debug and error printing helpers Imre Deak
2023-05-04 14:53 ` Ville Syrjälä
2023-05-05 8:51 ` Jani Nikula
2023-05-05 12:07 ` Imre Deak
2023-05-05 20:46 ` [Intel-gfx] [PATCH v3 " Imre Deak
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 08/12] drm/i915/dp: Convert link training error to debug message on disconnected sink Imre Deak
2023-05-04 14:54 ` Ville Syrjälä
2023-05-05 8:22 ` Govindapillai, Vinod
2023-05-05 12:12 ` Imre Deak
2023-05-05 20:46 ` [Intel-gfx] [PATCH v3 " Imre Deak
2023-05-09 12:26 ` Govindapillai, Vinod
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 09/12] drm/i915/dp: Prevent link training fallback on disconnected port Imre Deak
2023-05-04 14:54 ` Ville Syrjälä
2023-05-05 20:46 ` [Intel-gfx] [PATCH v3 " Imre Deak
2023-05-09 12:26 ` Govindapillai, Vinod
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 10/12] drm/i915/dp: Factor out intel_dp_get_active_pipes() Imre Deak
2023-05-04 14:55 ` Ville Syrjälä
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 11/12] drm/i915: Factor out a helper for handling atomic modeset locks/state Imre Deak
2023-05-04 15:00 ` Ville Syrjälä
2023-05-03 23:10 ` [Intel-gfx] [PATCH v2 12/12] drm/i915/tc: Reset TypeC PHYs left enabled in DP-alt mode after the sink disconnects Imre Deak
2023-05-04 17:41 ` Ville Syrjälä
2023-05-04 20:12 ` Imre Deak
2023-05-05 20:46 ` [Intel-gfx] [PATCH v3 " Imre Deak
2023-05-05 22:12 ` Imre Deak
2023-05-04 0:21 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915/tc: Add a workaround for an IOM/TCSS firmware hang issue (rev2) Patchwork
2023-05-04 0:21 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2023-05-04 0:32 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-05-04 2:54 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2023-05-05 21:59 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915/tc: Add a workaround for an IOM/TCSS firmware hang issue (rev10) Patchwork
2023-05-05 21:59 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2023-05-05 22:13 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-05-06 16:34 ` [Intel-gfx] ✗ Fi.CI.IGT: 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=ZFPoIcXn1A+MK2oL@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=imre.deak@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
/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