On Fri, Oct 06, 2023 at 04:37:15PM +0300, Imre Deak wrote:
> Use the connector's DSC DPCD capabilities in intel_dp_supports_fec().
> 
> Signed-off-by: Imre Deak <[email protected]>

Reviewed-by: Stanislav Lisovskiy <[email protected]>

> ---
>  drivers/gpu/drm/i915/display/intel_dp.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index 00f5fecdbf386..8450856e5618d 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -1370,10 +1370,11 @@ static bool intel_dp_source_supports_fec(struct 
> intel_dp *intel_dp,
>  }
>  
>  static bool intel_dp_supports_fec(struct intel_dp *intel_dp,
> +                               const struct intel_connector *connector,
>                                 const struct intel_crtc_state *pipe_config)
>  {
>       return intel_dp_source_supports_fec(intel_dp, pipe_config) &&
> -             drm_dp_sink_supports_fec(intel_dp->fec_capable);
> +             drm_dp_sink_supports_fec(connector->dp.fec_capability);
>  }
>  
>  static bool intel_dp_supports_dsc(struct intel_dp *intel_dp,
> @@ -2110,12 +2111,14 @@ int intel_dp_dsc_compute_config(struct intel_dp 
> *intel_dp,
>  {
>       struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
>       struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev);
> +     const struct intel_connector *connector =
> +             to_intel_connector(conn_state->connector);
>       const struct drm_display_mode *adjusted_mode =
>               &pipe_config->hw.adjusted_mode;
>       int ret;
>  
>       pipe_config->fec_enable = !intel_dp_is_edp(intel_dp) &&
> -             intel_dp_supports_fec(intel_dp, pipe_config);
> +             intel_dp_supports_fec(intel_dp, connector, pipe_config);
>  
>       if (!intel_dp_supports_dsc(intel_dp, pipe_config))
>               return -EINVAL;
> -- 
> 2.39.2
> 

Reply via email to