[Intel-gfx] [PATCH 06/15] drm/i915: Extract intel_edp_backlight_setup()
Jani Nikula
jani.nikula at linux.intel.com
Mon Sep 12 11:57:38 UTC 2022
On Mon, 12 Sep 2022, Ville Syrjala <ville.syrjala at linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Pull the eDP backlight setup ino its own function. No
*into
> reason to pollute intel_edp_init_connector() with all
> the mundane details.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_dp.c | 51 +++++++++++++++----------
> 1 file changed, 30 insertions(+), 21 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
> index a5eca5396fed..de5a4d2df78e 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -5217,6 +5217,35 @@ intel_edp_add_properties(struct intel_dp *intel_dp)
> fixed_mode->vdisplay);
> }
>
> +static void intel_edp_backlight_setup(struct intel_dp *intel_dp,
> + struct intel_connector *connector)
> +{
> + struct drm_i915_private *i915 = dp_to_i915(intel_dp);
> + enum pipe pipe = INVALID_PIPE;
> +
> + if (IS_VALLEYVIEW(i915) || IS_CHERRYVIEW(i915)) {
> + /*
> + * Figure out the current pipe for the initial backlight setup.
> + * If the current pipe isn't valid, try the PPS pipe, and if that
> + * fails just assume pipe A.
> + */
> + pipe = vlv_active_pipe(intel_dp);
> +
> + if (pipe != PIPE_A && pipe != PIPE_B)
> + pipe = intel_dp->pps.pps_pipe;
> +
> + if (pipe != PIPE_A && pipe != PIPE_B)
> + pipe = PIPE_A;
> +
> + drm_dbg_kms(&i915->drm,
> + "[CONNECTOR:%d:%s] using pipe %c for initial backlight setup\n",
> + connector->base.base.id, connector->base.name,
> + pipe_name(pipe));
> + }
> +
> + intel_backlight_setup(connector, pipe);
> +}
> +
> static bool intel_edp_init_connector(struct intel_dp *intel_dp,
> struct intel_connector *intel_connector)
> {
> @@ -5226,7 +5255,6 @@ static bool intel_edp_init_connector(struct intel_dp *intel_dp,
> struct drm_display_mode *fixed_mode;
> struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
> bool has_dpcd;
> - enum pipe pipe = INVALID_PIPE;
> struct edid *edid;
>
> if (!intel_dp_is_edp(intel_dp))
> @@ -5301,28 +5329,9 @@ static bool intel_edp_init_connector(struct intel_dp *intel_dp,
>
> mutex_unlock(&dev->mode_config.mutex);
>
> - if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) {
> - /*
> - * Figure out the current pipe for the initial backlight setup.
> - * If the current pipe isn't valid, try the PPS pipe, and if that
> - * fails just assume pipe A.
> - */
> - pipe = vlv_active_pipe(intel_dp);
> -
> - if (pipe != PIPE_A && pipe != PIPE_B)
> - pipe = intel_dp->pps.pps_pipe;
> -
> - if (pipe != PIPE_A && pipe != PIPE_B)
> - pipe = PIPE_A;
> -
> - drm_dbg_kms(&dev_priv->drm,
> - "using pipe %c for initial backlight setup\n",
> - pipe_name(pipe));
> - }
> -
> intel_panel_init(intel_connector);
>
> - intel_backlight_setup(intel_connector, pipe);
> + intel_edp_backlight_setup(intel_dp, intel_connector);
>
> intel_edp_add_properties(intel_dp);
--
Jani Nikula, Intel Open Source Graphics Center
More information about the Intel-gfx
mailing list