Hi, Do we need this? There is this patch already https://patchwork.freedesktop.org/patch/592161/ Looks like we are supposed to iterate source_rates using "intel_dp->num_source_rates" If you are keeping this, then may be we need a separate max_rate call for bmg for better clarity? Now there is a separate source_rates for bmg but a max_rate using mtl_max_rate()! BR Vinod On Tue, 2024-08-27 at 13:42 +0530, Arun R Murthy wrote: > UHBR20 is not supported by battlemage and the maximum link rate > supported is UHBR13.5 > > v2: Replace IS_DGFX with IS_BATTLEMAGE (Jani) > > HSD: 16023263677 > Signed-off-by: Arun R Murthy <arun.r.murthy@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_dp.c | 13 +++++++++++-- > 1 file changed, 11 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c > index 789c2f78826d..99a365a945ae 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.c > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > @@ -528,6 +528,10 @@ static void > intel_dp_set_source_rates(struct intel_dp *intel_dp) > { > /* The values must be in increasing order */ > + static const int bmg_rates[] = { > + 162000, 216000, 243000, 270000, 324000, 432000, 540000, 675000, > + 810000, 1000000, 1350000, > + }; > static const int mtl_rates[] = { > 162000, 216000, 243000, 270000, 324000, 432000, 540000, 675000, > 810000, 1000000, 2000000, > @@ -558,8 +562,13 @@ intel_dp_set_source_rates(struct intel_dp *intel_dp) > intel_dp->source_rates || intel_dp->num_source_rates); > > if (DISPLAY_VER(dev_priv) >= 14) { > - source_rates = mtl_rates; > - size = ARRAY_SIZE(mtl_rates); > + if (IS_BATTLEMAGE(dev_priv)) { > + source_rates = bmg_rates; > + size = ARRAY_SIZE(bmg_rates); > + } else { > + source_rates = mtl_rates; > + size = ARRAY_SIZE(mtl_rates); > + } > max_rate = mtl_max_source_rate(intel_dp); > } else if (DISPLAY_VER(dev_priv) >= 11) { > source_rates = icl_rates;