Message ID | 20240827081205.136569-1-arun.r.murthy@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [PATCHv2] drm/i915/display: BMG supports UHBR13.5 | expand |
> -----Original Message----- > From: Intel-xe <intel-xe-bounces@lists.freedesktop.org> On Behalf Of Arun R Murthy > Sent: Tuesday, August 27, 2024 11:12 AM > To: intel-xe@lists.freedesktop.org; intel-gfx@lists.freedesktop.org > Cc: Murthy, Arun R <arun.r.murthy@intel.com> > Subject: [PATCHv2] drm/i915/display: BMG supports UHBR13.5 > > 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 Looks ok to me. Reviewed-by: Mika Kahola <mika.kahola@intel.com> > Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com> > --- > 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; > -- > 2.25.1
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@intel.com> > --- > 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;
On Wed, 28 Aug 2024, "Govindapillai, Vinod" <vinod.govindapillai@intel.com> 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@intel.com> >> --- >> 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; >
On Tue, 27 Aug 2024, Arun R Murthy <arun.r.murthy@intel.com> 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@intel.com> Also, Fixes: 98b1c87a5e51 ("drm/i915/xe2hpd: Set maximum DP rate to UHBR13.5") because that one doesn't DTRT. BR, Jani. > --- > 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;
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;
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@intel.com> --- drivers/gpu/drm/i915/display/intel_dp.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-)