From: Jani Nikula <jani.nikula@linux.intel.com>
To: Ville Syrjala <ville.syrjala@linux.intel.com>,
intel-gfx@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH 4/5] drm/i915: Extract hsw_configure_cpu_transcoder()
Date: Tue, 25 Jan 2022 07:38:01 +0200 [thread overview]
Message-ID: <87wnio1ikm.fsf@intel.com> (raw)
In-Reply-To: <20220124192638.26262-4-ville.syrjala@linux.intel.com>
On Mon, 24 Jan 2022, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Pull the transcoder specific modeset steps into a single place.
> With bigoiner we need to keep in mind wheher we're dealing with
> the transcoder or the pipe, and a slightly higher level split makes
> that easier.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_display.c | 38 ++++++++++++--------
> 1 file changed, 23 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index c23c854f212f..d2906434ab3f 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -2012,6 +2012,27 @@ static void icl_ddi_bigjoiner_pre_enable(struct intel_atomic_state *state,
> intel_uncompressed_joiner_enable(crtc_state);
> }
>
> +static void hsw_configure_cpu_transcoder(const struct intel_crtc_state *crtc_state)
> +{
> + struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> + struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
> + enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
> +
> + intel_set_transcoder_timings(crtc_state);
> +
> + if (cpu_transcoder != TRANSCODER_EDP)
> + intel_de_write(dev_priv, PIPE_MULT(cpu_transcoder),
> + crtc_state->pixel_multiplier - 1);
> +
> + if (crtc_state->has_pch_encoder)
> + intel_cpu_transcoder_set_m_n(crtc_state,
> + &crtc_state->fdi_m_n, NULL);
> +
> + hsw_set_frame_start_delay(crtc_state);
> +
> + hsw_set_transconf(crtc_state);
> +}
> +
> static void hsw_crtc_enable(struct intel_atomic_state *state,
> struct intel_crtc *crtc)
> {
> @@ -2040,21 +2061,8 @@ static void hsw_crtc_enable(struct intel_atomic_state *state,
> if (DISPLAY_VER(dev_priv) >= 9 || IS_BROADWELL(dev_priv))
> bdw_set_pipemisc(new_crtc_state);
>
> - if (!new_crtc_state->bigjoiner_slave && !transcoder_is_dsi(cpu_transcoder)) {
> - intel_set_transcoder_timings(new_crtc_state);
> -
> - if (cpu_transcoder != TRANSCODER_EDP)
> - intel_de_write(dev_priv, PIPE_MULT(cpu_transcoder),
> - new_crtc_state->pixel_multiplier - 1);
> -
> - if (new_crtc_state->has_pch_encoder)
> - intel_cpu_transcoder_set_m_n(new_crtc_state,
> - &new_crtc_state->fdi_m_n, NULL);
> -
> - hsw_set_frame_start_delay(new_crtc_state);
> -
> - hsw_set_transconf(new_crtc_state);
> - }
> + if (!new_crtc_state->bigjoiner_slave && !transcoder_is_dsi(cpu_transcoder))
> + hsw_configure_cpu_transcoder(new_crtc_state);
>
> crtc->active = true;
--
Jani Nikula, Intel Open Source Graphics Center
next prev parent reply other threads:[~2022-01-25 5:38 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-24 19:26 [Intel-gfx] [PATCH 1/5] drm/i915: Skip dsc readout if the transcoder is disabled Ville Syrjala
2022-01-24 19:26 ` [Intel-gfx] [PATCH 2/5] drm/i915: Simplify intel_dsc_source_support() Ville Syrjala
2022-01-24 19:26 ` [Intel-gfx] [PATCH 3/5] drm/i915: Use per-device debugs for bigjoiner stuff Ville Syrjala
2022-01-24 19:26 ` [Intel-gfx] [PATCH 4/5] drm/i915: Extract hsw_configure_cpu_transcoder() Ville Syrjala
2022-01-25 5:38 ` Jani Nikula [this message]
2022-01-24 19:26 ` [Intel-gfx] [PATCH 5/5] drm/i915: Move dsc/joiner enable into hsw_crtc_enable() Ville Syrjala
2022-01-25 5:40 ` Jani Nikula
2022-01-25 5:59 ` Ville Syrjälä
2022-01-25 6:39 ` [Intel-gfx] [PATCH v2 " Ville Syrjala
2022-01-25 6:50 ` Jani Nikula
2022-01-25 7:07 ` Ville Syrjälä
2022-01-24 23:59 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/5] drm/i915: Skip dsc readout if the transcoder is disabled Patchwork
2022-01-25 5:36 ` [Intel-gfx] [PATCH 1/5] " Jani Nikula
2022-01-25 5:38 ` [Intel-gfx] ✗ Fi.CI.IGT: failure for series starting with [1/5] " Patchwork
2022-01-25 8:20 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for series starting with [1/5] drm/i915: Skip dsc readout if the transcoder is disabled (rev2) Patchwork
2022-01-26 7:51 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [1/5] drm/i915: Skip dsc readout if the transcoder is disabled (rev3) Patchwork
2022-01-26 10:00 ` [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=87wnio1ikm.fsf@intel.com \
--to=jani.nikula@linux.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.