On Wed, 28 Aug 2024, "Govindapillai, Vinod" <vinod.govindapillai@xxxxxxxxx> wrote: > Hi, > > Do we need this? There is this patch already https://patchwork.freedesktop.org/patch/592161/ mtl_rates doesn't have 1350000. BR, Jani. > > 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; > -- Jani Nikula, Intel