> -----Original Message----- > From: Intel-xe <[email protected]> On Behalf Of Imre Deak > Sent: Tuesday, 16 June 2026 23.09 > To: [email protected]; [email protected] > Subject: [PATCH v2 20/28] drm/i915/dp_link_caps: Use max common lane count > from link_caps > > Convert all users of intel_dp_max_common_lane_count() to query the > maximum common lane count via the link capability API, in common with > the link rate queries. >
Reviewed-by: Mika Kahola <[email protected]> > Signed-off-by: Imre Deak <[email protected]> > --- > drivers/gpu/drm/i915/display/intel_display_types.h | 1 - > drivers/gpu/drm/i915/display/intel_dp.c | 9 +-------- > drivers/gpu/drm/i915/display/intel_dp.h | 1 - > drivers/gpu/drm/i915/display/intel_dp_link_caps.c | 7 ++++++- > drivers/gpu/drm/i915/display/intel_dp_link_caps.h | 1 + > drivers/gpu/drm/i915/display/intel_dp_tunnel.c | 3 ++- > 6 files changed, 10 insertions(+), 12 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h > b/drivers/gpu/drm/i915/display/intel_display_types.h > index dd43c7ee8f143..19c66b3a81509 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_types.h > +++ b/drivers/gpu/drm/i915/display/intel_display_types.h > @@ -1834,7 +1834,6 @@ struct intel_dp { > bool use_rate_select; > /* Max sink lane count as reported by DP_MAX_LANE_COUNT */ > int max_sink_lane_count; > - int max_common_lane_count; > struct { > /* TODO: move the rest of link specific fields to here */ > bool active; > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c > b/drivers/gpu/drm/i915/display/intel_dp.c > index 2873b2df29f84..0d7ec7a8898c9 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.c > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > @@ -354,11 +354,6 @@ static int intel_dp_get_max_common_lane_count(struct > intel_dp *intel_dp) > return min3(source_max, sink_max, lane_max); > } > > -int intel_dp_max_common_lane_count(struct intel_dp *intel_dp) > -{ > - return intel_dp->max_common_lane_count; > -} > - > int intel_dp_max_lane_count(struct intel_dp *intel_dp) > { > struct intel_dp_link_caps *link_caps = intel_dp->link.caps; > @@ -701,8 +696,6 @@ static bool intel_dp_set_common_link_params(struct > intel_dp *intel_dp) > int common_rates[DP_MAX_SUPPORTED_RATES]; > bool params_changed = false; > > - intel_dp->max_common_lane_count = > intel_dp_get_max_common_lane_count(intel_dp); > - > intel_dp_get_common_rates(intel_dp, common_rates, &num_common_rates); > if (intel_dp_link_caps_update(intel_dp, > common_rates, num_common_rates, > @@ -3613,7 +3606,7 @@ void intel_dp_set_link_params(struct intel_dp *intel_dp, > > void intel_dp_reset_link_params(struct intel_dp *intel_dp) > { > - intel_dp->link.max_lane_count = > intel_dp_max_common_lane_count(intel_dp); > + intel_dp->link.max_lane_count = > intel_dp_link_caps_max_common_lane_count(intel_dp->link.caps); > intel_dp->link.max_rate = intel_dp_max_common_rate(intel_dp); > intel_dp->link.mst_probed_lane_count = 0; > intel_dp->link.mst_probed_rate = 0; > diff --git a/drivers/gpu/drm/i915/display/intel_dp.h > b/drivers/gpu/drm/i915/display/intel_dp.h > index fdf9bd88859e7..f776bec7c4254 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.h > +++ b/drivers/gpu/drm/i915/display/intel_dp.h > @@ -106,7 +106,6 @@ int intel_dp_max_link_rate(struct intel_dp *intel_dp); > int intel_dp_max_lane_count(struct intel_dp *intel_dp); > int intel_dp_config_required_rate(const struct intel_crtc_state *crtc_state); > int intel_dp_rate_select(struct intel_dp *intel_dp, int rate); > -int intel_dp_max_common_lane_count(struct intel_dp *intel_dp); > int intel_dp_rate_index(const int *rates, int len, int rate); > void intel_dp_update_sink_caps(struct intel_dp *intel_dp); > void intel_dp_reset_link_params(struct intel_dp *intel_dp); > diff --git a/drivers/gpu/drm/i915/display/intel_dp_link_caps.c > b/drivers/gpu/drm/i915/display/intel_dp_link_caps.c > index bb727bcf4de18..b227c9a55f63b 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp_link_caps.c > +++ b/drivers/gpu/drm/i915/display/intel_dp_link_caps.c > @@ -102,6 +102,11 @@ void intel_dp_link_caps_print_common_rates(struct > intel_dp_link_caps *link_caps) > drm_dbg_kms(display->drm, "common rates: %s\n", seq_buf_str(&s)); > } > > +int intel_dp_link_caps_max_common_lane_count(struct intel_dp_link_caps > *link_caps) > +{ > + return link_caps->max_lane_count; > +} > + > static int forced_lane_count(struct intel_dp *intel_dp) > { > struct intel_dp_link_caps *link_caps = intel_dp->link.caps; > @@ -110,7 +115,7 @@ static int forced_lane_count(struct intel_dp *intel_dp) > return 0; > > return clamp(link_caps->forced_params.lane_count, > - 1, intel_dp_max_common_lane_count(intel_dp)); > + 1, intel_dp_link_caps_max_common_lane_count(link_caps)); > } > > static int forced_link_rate(struct intel_dp *intel_dp) > diff --git a/drivers/gpu/drm/i915/display/intel_dp_link_caps.h > b/drivers/gpu/drm/i915/display/intel_dp_link_caps.h > index e2f53eb167a8e..9218cb5de2c71 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp_link_caps.h > +++ b/drivers/gpu/drm/i915/display/intel_dp_link_caps.h > @@ -17,6 +17,7 @@ int intel_dp_common_rate(struct intel_dp *intel_dp, int > index); > int intel_dp_link_caps_common_rate_idx(struct intel_dp_link_caps *link_caps, > int rate); > int intel_dp_max_common_rate(struct intel_dp *intel_dp); > int intel_dp_link_caps_num_common_rates(struct intel_dp_link_caps > *link_caps); > +int intel_dp_link_caps_max_common_lane_count(struct intel_dp_link_caps > *link_caps); > > void intel_dp_link_caps_print_common_rates(struct intel_dp_link_caps > *link_caps); > > diff --git a/drivers/gpu/drm/i915/display/intel_dp_tunnel.c > b/drivers/gpu/drm/i915/display/intel_dp_tunnel.c > index c82adfcce01d0..9d9d8d04742bc 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp_tunnel.c > +++ b/drivers/gpu/drm/i915/display/intel_dp_tunnel.c > @@ -57,8 +57,9 @@ static int kbytes_to_mbits(int kbytes) > > static int get_current_link_bw(struct intel_dp *intel_dp) > { > + struct intel_dp_link_caps *link_caps = intel_dp->link.caps; > int rate = intel_dp_max_common_rate(intel_dp); > - int lane_count = intel_dp_max_common_lane_count(intel_dp); > + int lane_count = intel_dp_link_caps_max_common_lane_count(link_caps); > > return intel_dp_max_link_data_rate(intel_dp, rate, lane_count); > } > -- > 2.49.1
