[Intel-gfx] [PATCH 3/9] drm/i915: Clean up the {ilk, lpt}_pch_enable() calling convention
David Airlie
airlied at redhat.com
Sun Oct 17 23:58:26 UTC 2021
On Fri, Oct 15, 2021 at 5:16 PM Ville Syrjala
<ville.syrjala at linux.intel.com> wrote:
>
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Use the clean "atomic_state+crtc" approach of passing
> arguments to the top level PCH modeset code.
>
> And while at it we can also just pass the whole crtc to
> ilk_disable_pch_transcoder().
Some minor whitespace:
> + intel_atomic_get_new_crtc_state(state, crtc);
There are a few of these with two spaces after the ,
with those fixed up.
Reviewed-by: Dave Airlie <airlied at redhat.com>
>
> Cc: Dave Airlie <airlied at redhat.com>
> Cc: Jani Nikula <jani.nikula at intel.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_crt.c | 2 +-
> drivers/gpu/drm/i915/display/intel_display.c | 4 ++--
> .../gpu/drm/i915/display/intel_pch_display.c | 23 +++++++++++--------
> .../gpu/drm/i915/display/intel_pch_display.h | 12 +++++-----
> 4 files changed, 22 insertions(+), 19 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_crt.c b/drivers/gpu/drm/i915/display/intel_crt.c
> index 54540138bd1d..4038ae342ea1 100644
> --- a/drivers/gpu/drm/i915/display/intel_crt.c
> +++ b/drivers/gpu/drm/i915/display/intel_crt.c
> @@ -318,7 +318,7 @@ static void hsw_enable_crt(struct intel_atomic_state *state,
>
> intel_enable_transcoder(crtc_state);
>
> - lpt_pch_enable(crtc_state);
> + lpt_pch_enable(state, crtc);
>
> intel_crtc_vblank_on(crtc_state);
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index 69549886fe5b..2ee02c16bd1c 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -2020,7 +2020,7 @@ static void ilk_crtc_enable(struct intel_atomic_state *state,
> intel_enable_transcoder(new_crtc_state);
>
> if (new_crtc_state->has_pch_encoder)
> - ilk_pch_enable(state, new_crtc_state);
> + ilk_pch_enable(state, crtc);
>
> intel_crtc_vblank_on(new_crtc_state);
>
> @@ -2299,7 +2299,7 @@ static void ilk_crtc_disable(struct intel_atomic_state *state,
> intel_encoders_post_disable(state, crtc);
>
> if (old_crtc_state->has_pch_encoder) {
> - ilk_disable_pch_transcoder(dev_priv, pipe);
> + ilk_disable_pch_transcoder(crtc);
>
> if (HAS_PCH_CPT(dev_priv)) {
> i915_reg_t reg;
> diff --git a/drivers/gpu/drm/i915/display/intel_pch_display.c b/drivers/gpu/drm/i915/display/intel_pch_display.c
> index 0056c2fe49ec..50995c4f2aaa 100644
> --- a/drivers/gpu/drm/i915/display/intel_pch_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_pch_display.c
> @@ -179,9 +179,10 @@ static void ilk_enable_pch_transcoder(const struct intel_crtc_state *crtc_state)
> pipe_name(pipe));
> }
>
> -void ilk_disable_pch_transcoder(struct drm_i915_private *dev_priv,
> - enum pipe pipe)
> +void ilk_disable_pch_transcoder(struct intel_crtc *crtc)
> {
> + struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
> + enum pipe pipe = crtc->pipe;
> i915_reg_t reg;
> u32 val;
>
> @@ -218,12 +219,12 @@ void ilk_disable_pch_transcoder(struct drm_i915_private *dev_priv,
> * - DP transcoding bits
> * - transcoder
> */
> -void ilk_pch_enable(const struct intel_atomic_state *state,
> - const struct intel_crtc_state *crtc_state)
> +void ilk_pch_enable(struct intel_atomic_state *state,
> + struct intel_crtc *crtc)
> {
> - struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> - struct drm_device *dev = crtc->base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
> + const struct intel_crtc_state *crtc_state =
> + intel_atomic_get_new_crtc_state(state, crtc);
> enum pipe pipe = crtc->pipe;
> u32 temp;
>
> @@ -289,7 +290,7 @@ void ilk_pch_enable(const struct intel_atomic_state *state,
> temp |= TRANS_DP_VSYNC_ACTIVE_HIGH;
>
> port = intel_get_crtc_new_encoder(state, crtc_state)->port;
> - drm_WARN_ON(dev, port < PORT_B || port > PORT_D);
> + drm_WARN_ON(&dev_priv->drm, port < PORT_B || port > PORT_D);
> temp |= TRANS_DP_PORT_SEL(port);
>
> intel_de_write(dev_priv, reg, temp);
> @@ -348,10 +349,12 @@ void lpt_disable_pch_transcoder(struct drm_i915_private *dev_priv)
> intel_de_write(dev_priv, TRANS_CHICKEN2(PIPE_A), val);
> }
>
> -void lpt_pch_enable(const struct intel_crtc_state *crtc_state)
> +void lpt_pch_enable(struct intel_atomic_state *state,
> + struct intel_crtc *crtc)
> {
> - struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
> struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
> + const struct intel_crtc_state *crtc_state =
> + intel_atomic_get_new_crtc_state(state, crtc);
> enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
>
> assert_pch_transcoder_disabled(dev_priv, PIPE_A);
> diff --git a/drivers/gpu/drm/i915/display/intel_pch_display.h b/drivers/gpu/drm/i915/display/intel_pch_display.h
> index 6eba1fd667ea..7f9df2c13cf3 100644
> --- a/drivers/gpu/drm/i915/display/intel_pch_display.h
> +++ b/drivers/gpu/drm/i915/display/intel_pch_display.h
> @@ -6,17 +6,17 @@
> #ifndef _INTEL_PCH_DISPLAY_H_
> #define _INTEL_PCH_DISPLAY_H_
>
> -enum pipe;
> struct drm_i915_private;
> struct intel_atomic_state;
> +struct intel_crtc;
> struct intel_crtc_state;
>
> -void ilk_disable_pch_transcoder(struct drm_i915_private *dev_priv,
> - enum pipe pipe);
> -void ilk_pch_enable(const struct intel_atomic_state *state,
> - const struct intel_crtc_state *crtc_state);
> +void ilk_disable_pch_transcoder(struct intel_crtc *crtc);
> +void ilk_pch_enable(struct intel_atomic_state *state,
> + struct intel_crtc *crtc);
>
> void lpt_disable_pch_transcoder(struct drm_i915_private *dev_priv);
> -void lpt_pch_enable(const struct intel_crtc_state *crtc_state);
> +void lpt_pch_enable(struct intel_atomic_state *state,
> + struct intel_crtc *crtc);
>
> #endif
> --
> 2.32.0
>
More information about the Intel-gfx
mailing list