mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] drm/msm: Fix GMEM_BASE for A650
@ 2026-03-14  4:14 Alexander Koskovich
  2026-03-16  9:22 ` Konrad Dybcio
  2026-03-16 20:55 ` Akhil P Oommen
  0 siblings, 2 replies; 10+ messages in thread
From: Alexander Koskovich @ 2026-03-14  4:14 UTC (permalink / raw)
  To: Rob Clark, Sean Paul, Konrad Dybcio, Akhil P Oommen,
	Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang, Marijn Suijten,
	David Airlie, Simona Vetter
  Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, Alexander Koskovich

Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
to family >= ADRENO_6XX_GEN4.

This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
an incorrect GMEM_BASE which results in severe rendering corruption.

Update check to also include ADRENO_6XX_GEN3 to fix A650.

Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")
Signed-off-by: Alexander Koskovich <akoskovich@pm.me>
---
 drivers/gpu/drm/msm/adreno/adreno_gpu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.c b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
index d5fe6f6f0dec..0ac3fba5c277 100644
--- a/drivers/gpu/drm/msm/adreno/adreno_gpu.c
+++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
@@ -376,7 +376,7 @@ int adreno_get_param(struct msm_gpu *gpu, struct msm_context *ctx,
 		*value = adreno_gpu->info->gmem;
 		return 0;
 	case MSM_PARAM_GMEM_BASE:
-		if (adreno_gpu->info->family >= ADRENO_6XX_GEN4)
+		if (adreno_gpu->info->family >= ADRENO_6XX_GEN3)
 			*value = 0;
 		else
 			*value = 0x100000;

---
base-commit: 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681
change-id: 20260314-fix-gmem-base-a650-cfd9bfcea425

Best regards,
-- 
Alexander Koskovich <akoskovich@pm.me>



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] drm/msm: Fix GMEM_BASE for A650
  2026-03-14  4:14 [PATCH] drm/msm: Fix GMEM_BASE for A650 Alexander Koskovich
@ 2026-03-16  9:22 ` Konrad Dybcio
  2026-03-16 14:28   ` Dmitry Baryshkov
  2026-03-16 14:31   ` Rob Clark
  2026-03-16 20:55 ` Akhil P Oommen
  1 sibling, 2 replies; 10+ messages in thread
From: Konrad Dybcio @ 2026-03-16  9:22 UTC (permalink / raw)
  To: Alexander Koskovich, Rob Clark, Sean Paul, Konrad Dybcio,
	Akhil P Oommen, Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang,
	Marijn Suijten, David Airlie, Simona Vetter
  Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel

On 3/14/26 5:14 AM, Alexander Koskovich wrote:
> Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
> GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
> to family >= ADRENO_6XX_GEN4.
> 
> This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
> an incorrect GMEM_BASE which results in severe rendering corruption.
> 
> Update check to also include ADRENO_6XX_GEN3 to fix A650.
> 
> Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")

Hm, that commit also changed the value for A730 - Akhil/Rob, should
that be changed back?

Konrad

> Signed-off-by: Alexander Koskovich <akoskovich@pm.me>
> ---
>  drivers/gpu/drm/msm/adreno/adreno_gpu.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.c b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> index d5fe6f6f0dec..0ac3fba5c277 100644
> --- a/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> @@ -376,7 +376,7 @@ int adreno_get_param(struct msm_gpu *gpu, struct msm_context *ctx,
>  		*value = adreno_gpu->info->gmem;
>  		return 0;
>  	case MSM_PARAM_GMEM_BASE:
> -		if (adreno_gpu->info->family >= ADRENO_6XX_GEN4)
> +		if (adreno_gpu->info->family >= ADRENO_6XX_GEN3)
>  			*value = 0;
>  		else
>  			*value = 0x100000;
> 
> ---
> base-commit: 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681
> change-id: 20260314-fix-gmem-base-a650-cfd9bfcea425
> 
> Best regards,

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] drm/msm: Fix GMEM_BASE for A650
  2026-03-16  9:22 ` Konrad Dybcio
@ 2026-03-16 14:28   ` Dmitry Baryshkov
  2026-03-16 14:34     ` Rob Clark
  2026-03-16 14:35     ` Konrad Dybcio
  2026-03-16 14:31   ` Rob Clark
  1 sibling, 2 replies; 10+ messages in thread
From: Dmitry Baryshkov @ 2026-03-16 14:28 UTC (permalink / raw)
  To: Konrad Dybcio
  Cc: Alexander Koskovich, Rob Clark, Sean Paul, Konrad Dybcio,
	Akhil P Oommen, Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang,
	Marijn Suijten, David Airlie, Simona Vetter, linux-arm-msm,
	dri-devel, freedreno, linux-kernel

On Mon, Mar 16, 2026 at 10:22:44AM +0100, Konrad Dybcio wrote:
> On 3/14/26 5:14 AM, Alexander Koskovich wrote:
> > Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
> > GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
> > to family >= ADRENO_6XX_GEN4.
> > 
> > This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
> > an incorrect GMEM_BASE which results in severe rendering corruption.
> > 
> > Update check to also include ADRENO_6XX_GEN3 to fix A650.
> > 
> > Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")
> 
> Hm, that commit also changed the value for A730 - Akhil/Rob, should
> that be changed back?

I'd say, I'm also surprised about something being broken for A650. Which
path / stack uses this value?

> 
> Konrad
> 
> > Signed-off-by: Alexander Koskovich <akoskovich@pm.me>
> > ---
> >  drivers/gpu/drm/msm/adreno/adreno_gpu.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.c b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> > index d5fe6f6f0dec..0ac3fba5c277 100644
> > --- a/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> > +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> > @@ -376,7 +376,7 @@ int adreno_get_param(struct msm_gpu *gpu, struct msm_context *ctx,
> >  		*value = adreno_gpu->info->gmem;
> >  		return 0;
> >  	case MSM_PARAM_GMEM_BASE:
> > -		if (adreno_gpu->info->family >= ADRENO_6XX_GEN4)
> > +		if (adreno_gpu->info->family >= ADRENO_6XX_GEN3)
> >  			*value = 0;
> >  		else
> >  			*value = 0x100000;
> > 
> > ---
> > base-commit: 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681
> > change-id: 20260314-fix-gmem-base-a650-cfd9bfcea425
> > 
> > Best regards,

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] drm/msm: Fix GMEM_BASE for A650
  2026-03-16  9:22 ` Konrad Dybcio
  2026-03-16 14:28   ` Dmitry Baryshkov
@ 2026-03-16 14:31   ` Rob Clark
  2026-03-16 14:34     ` Konrad Dybcio
  2026-03-16 20:54     ` Akhil P Oommen
  1 sibling, 2 replies; 10+ messages in thread
From: Rob Clark @ 2026-03-16 14:31 UTC (permalink / raw)
  To: Konrad Dybcio
  Cc: Alexander Koskovich, Sean Paul, Konrad Dybcio, Akhil P Oommen,
	Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang, Marijn Suijten,
	David Airlie, Simona Vetter, linux-arm-msm, dri-devel, freedreno,
	linux-kernel

On Mon, Mar 16, 2026 at 2:22 AM Konrad Dybcio
<konrad.dybcio@oss.qualcomm.com> wrote:
>
> On 3/14/26 5:14 AM, Alexander Koskovich wrote:
> > Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
> > GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
> > to family >= ADRENO_6XX_GEN4.
> >
> > This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
> > an incorrect GMEM_BASE which results in severe rendering corruption.
> >
> > Update check to also include ADRENO_6XX_GEN3 to fix A650.
> >
> > Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")
>
> Hm, that commit also changed the value for A730 - Akhil/Rob, should
> that be changed back?

No, it was incorrect before my patch.  The only problem was the change
happened in a6xx_gen3, not a6xx_gen4.  So this patch is correct.

BR,
-R

> Konrad
>
> > Signed-off-by: Alexander Koskovich <akoskovich@pm.me>
> > ---
> >  drivers/gpu/drm/msm/adreno/adreno_gpu.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.c b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> > index d5fe6f6f0dec..0ac3fba5c277 100644
> > --- a/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> > +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> > @@ -376,7 +376,7 @@ int adreno_get_param(struct msm_gpu *gpu, struct msm_context *ctx,
> >               *value = adreno_gpu->info->gmem;
> >               return 0;
> >       case MSM_PARAM_GMEM_BASE:
> > -             if (adreno_gpu->info->family >= ADRENO_6XX_GEN4)
> > +             if (adreno_gpu->info->family >= ADRENO_6XX_GEN3)
> >                       *value = 0;
> >               else
> >                       *value = 0x100000;
> >
> > ---
> > base-commit: 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681
> > change-id: 20260314-fix-gmem-base-a650-cfd9bfcea425
> >
> > Best regards,

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] drm/msm: Fix GMEM_BASE for A650
  2026-03-16 14:28   ` Dmitry Baryshkov
@ 2026-03-16 14:34     ` Rob Clark
  2026-03-16 17:13       ` Dmitry Baryshkov
  2026-03-16 14:35     ` Konrad Dybcio
  1 sibling, 1 reply; 10+ messages in thread
From: Rob Clark @ 2026-03-16 14:34 UTC (permalink / raw)
  To: Dmitry Baryshkov
  Cc: Konrad Dybcio, Alexander Koskovich, Sean Paul, Konrad Dybcio,
	Akhil P Oommen, Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang,
	Marijn Suijten, David Airlie, Simona Vetter, linux-arm-msm,
	dri-devel, freedreno, linux-kernel

On Mon, Mar 16, 2026 at 7:28 AM Dmitry Baryshkov
<dmitry.baryshkov@oss.qualcomm.com> wrote:
>
> On Mon, Mar 16, 2026 at 10:22:44AM +0100, Konrad Dybcio wrote:
> > On 3/14/26 5:14 AM, Alexander Koskovich wrote:
> > > Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
> > > GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
> > > to family >= ADRENO_6XX_GEN4.
> > >
> > > This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
> > > an incorrect GMEM_BASE which results in severe rendering corruption.
> > >
> > > Update check to also include ADRENO_6XX_GEN3 to fix A650.
> > >
> > > Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")
> >
> > Hm, that commit also changed the value for A730 - Akhil/Rob, should
> > that be changed back?
>
> I'd say, I'm also surprised about something being broken for A650. Which
> path / stack uses this value?

Anything that samples from GMEM (gl or vk).. which could include
blend_equation_advanced, custom resolve, etc.

It's maybe not common enough to immediately notice something wrong, it
depends on your DE.

BR,
-R

> >
> > Konrad
> >
> > > Signed-off-by: Alexander Koskovich <akoskovich@pm.me>
> > > ---
> > >  drivers/gpu/drm/msm/adreno/adreno_gpu.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.c b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> > > index d5fe6f6f0dec..0ac3fba5c277 100644
> > > --- a/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> > > +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> > > @@ -376,7 +376,7 @@ int adreno_get_param(struct msm_gpu *gpu, struct msm_context *ctx,
> > >             *value = adreno_gpu->info->gmem;
> > >             return 0;
> > >     case MSM_PARAM_GMEM_BASE:
> > > -           if (adreno_gpu->info->family >= ADRENO_6XX_GEN4)
> > > +           if (adreno_gpu->info->family >= ADRENO_6XX_GEN3)
> > >                     *value = 0;
> > >             else
> > >                     *value = 0x100000;
> > >
> > > ---
> > > base-commit: 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681
> > > change-id: 20260314-fix-gmem-base-a650-cfd9bfcea425
> > >
> > > Best regards,
>
> --
> With best wishes
> Dmitry

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] drm/msm: Fix GMEM_BASE for A650
  2026-03-16 14:31   ` Rob Clark
@ 2026-03-16 14:34     ` Konrad Dybcio
  2026-03-16 20:54     ` Akhil P Oommen
  1 sibling, 0 replies; 10+ messages in thread
From: Konrad Dybcio @ 2026-03-16 14:34 UTC (permalink / raw)
  To: rob.clark
  Cc: Alexander Koskovich, Sean Paul, Konrad Dybcio, Akhil P Oommen,
	Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang, Marijn Suijten,
	David Airlie, Simona Vetter, linux-arm-msm, dri-devel, freedreno,
	linux-kernel

On 3/16/26 3:31 PM, Rob Clark wrote:
> On Mon, Mar 16, 2026 at 2:22 AM Konrad Dybcio
> <konrad.dybcio@oss.qualcomm.com> wrote:
>>
>> On 3/14/26 5:14 AM, Alexander Koskovich wrote:
>>> Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
>>> GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
>>> to family >= ADRENO_6XX_GEN4.
>>>
>>> This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
>>> an incorrect GMEM_BASE which results in severe rendering corruption.
>>>
>>> Update check to also include ADRENO_6XX_GEN3 to fix A650.
>>>
>>> Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")
>>
>> Hm, that commit also changed the value for A730 - Akhil/Rob, should
>> that be changed back?
> 
> No, it was incorrect before my patch.  The only problem was the change
> happened in a6xx_gen3, not a6xx_gen4.  So this patch is correct.

OK, thanks

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] drm/msm: Fix GMEM_BASE for A650
  2026-03-16 14:28   ` Dmitry Baryshkov
  2026-03-16 14:34     ` Rob Clark
@ 2026-03-16 14:35     ` Konrad Dybcio
  1 sibling, 0 replies; 10+ messages in thread
From: Konrad Dybcio @ 2026-03-16 14:35 UTC (permalink / raw)
  To: Dmitry Baryshkov
  Cc: Alexander Koskovich, Rob Clark, Sean Paul, Konrad Dybcio,
	Akhil P Oommen, Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang,
	Marijn Suijten, David Airlie, Simona Vetter, linux-arm-msm,
	dri-devel, freedreno, linux-kernel

On 3/16/26 3:28 PM, Dmitry Baryshkov wrote:
> On Mon, Mar 16, 2026 at 10:22:44AM +0100, Konrad Dybcio wrote:
>> On 3/14/26 5:14 AM, Alexander Koskovich wrote:
>>> Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
>>> GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
>>> to family >= ADRENO_6XX_GEN4.
>>>
>>> This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
>>> an incorrect GMEM_BASE which results in severe rendering corruption.
>>>
>>> Update check to also include ADRENO_6XX_GEN3 to fix A650.
>>>
>>> Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")
>>
>> Hm, that commit also changed the value for A730 - Akhil/Rob, should
>> that be changed back?
> 
> I'd say, I'm also surprised about something being broken for A650. Which
> path / stack uses this value?

mesa

Konrad

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] drm/msm: Fix GMEM_BASE for A650
  2026-03-16 14:34     ` Rob Clark
@ 2026-03-16 17:13       ` Dmitry Baryshkov
  0 siblings, 0 replies; 10+ messages in thread
From: Dmitry Baryshkov @ 2026-03-16 17:13 UTC (permalink / raw)
  To: Rob Clark
  Cc: Konrad Dybcio, Alexander Koskovich, Sean Paul, Konrad Dybcio,
	Akhil P Oommen, Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang,
	Marijn Suijten, David Airlie, Simona Vetter, linux-arm-msm,
	dri-devel, freedreno, linux-kernel

On Mon, Mar 16, 2026 at 07:34:42AM -0700, Rob Clark wrote:
> On Mon, Mar 16, 2026 at 7:28 AM Dmitry Baryshkov
> <dmitry.baryshkov@oss.qualcomm.com> wrote:
> >
> > On Mon, Mar 16, 2026 at 10:22:44AM +0100, Konrad Dybcio wrote:
> > > On 3/14/26 5:14 AM, Alexander Koskovich wrote:
> > > > Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
> > > > GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
> > > > to family >= ADRENO_6XX_GEN4.
> > > >
> > > > This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
> > > > an incorrect GMEM_BASE which results in severe rendering corruption.
> > > >
> > > > Update check to also include ADRENO_6XX_GEN3 to fix A650.
> > > >
> > > > Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")
> > >
> > > Hm, that commit also changed the value for A730 - Akhil/Rob, should
> > > that be changed back?
> >
> > I'd say, I'm also surprised about something being broken for A650. Which
> > path / stack uses this value?
> 
> Anything that samples from GMEM (gl or vk).. which could include
> blend_equation_advanced, custom resolve, etc.
> 
> It's maybe not common enough to immediately notice something wrong, it
> depends on your DE.
> 

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>


-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] drm/msm: Fix GMEM_BASE for A650
  2026-03-16 14:31   ` Rob Clark
  2026-03-16 14:34     ` Konrad Dybcio
@ 2026-03-16 20:54     ` Akhil P Oommen
  1 sibling, 0 replies; 10+ messages in thread
From: Akhil P Oommen @ 2026-03-16 20:54 UTC (permalink / raw)
  To: rob.clark
  Cc: Alexander Koskovich, Sean Paul, Konrad Dybcio, Dmitry Baryshkov,
	Abhinav Kumar, Jessica Zhang, Marijn Suijten, David Airlie,
	Simona Vetter, linux-arm-msm, dri-devel, freedreno, linux-kernel,
	Konrad Dybcio

On 3/16/2026 8:01 PM, Rob Clark wrote:
> On Mon, Mar 16, 2026 at 2:22 AM Konrad Dybcio
> <konrad.dybcio@oss.qualcomm.com> wrote:
>>
>> On 3/14/26 5:14 AM, Alexander Koskovich wrote:
>>> Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
>>> GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
>>> to family >= ADRENO_6XX_GEN4.
>>>
>>> This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
>>> an incorrect GMEM_BASE which results in severe rendering corruption.
>>>
>>> Update check to also include ADRENO_6XX_GEN3 to fix A650.
>>>
>>> Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")
>>
>> Hm, that commit also changed the value for A730 - Akhil/Rob, should
>> that be changed back?
> 
> No, it was incorrect before my patch.  The only problem was the change
> happened in a6xx_gen3, not a6xx_gen4.  So this patch is correct.

<< a little unrelated to this patch >>

Rob, on A740 and A8x GPU, KMD is mapping GMEM at 16MB and 64MB offsets
respectively. So returning 0 here to userspace for those GPUs doesn't
seem right for those GPUs.

I believe userspace is interested in the aperture base address
configured in UCHE_GMEM_RANGE/UCHE_CCHE_GC_GMEM_RANGE registers so that
it can compute the IOVA to read GMEM via UCHE.

-Akhil.

> 
> BR,
> -R
> 
>> Konrad
>>
>>> Signed-off-by: Alexander Koskovich <akoskovich@pm.me>
>>> ---
>>>  drivers/gpu/drm/msm/adreno/adreno_gpu.c | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.c b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
>>> index d5fe6f6f0dec..0ac3fba5c277 100644
>>> --- a/drivers/gpu/drm/msm/adreno/adreno_gpu.c
>>> +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
>>> @@ -376,7 +376,7 @@ int adreno_get_param(struct msm_gpu *gpu, struct msm_context *ctx,
>>>               *value = adreno_gpu->info->gmem;
>>>               return 0;
>>>       case MSM_PARAM_GMEM_BASE:
>>> -             if (adreno_gpu->info->family >= ADRENO_6XX_GEN4)
>>> +             if (adreno_gpu->info->family >= ADRENO_6XX_GEN3)
>>>                       *value = 0;
>>>               else
>>>                       *value = 0x100000;
>>>
>>> ---
>>> base-commit: 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681
>>> change-id: 20260314-fix-gmem-base-a650-cfd9bfcea425
>>>
>>> Best regards,


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] drm/msm: Fix GMEM_BASE for A650
  2026-03-14  4:14 [PATCH] drm/msm: Fix GMEM_BASE for A650 Alexander Koskovich
  2026-03-16  9:22 ` Konrad Dybcio
@ 2026-03-16 20:55 ` Akhil P Oommen
  1 sibling, 0 replies; 10+ messages in thread
From: Akhil P Oommen @ 2026-03-16 20:55 UTC (permalink / raw)
  To: Alexander Koskovich
  Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, Rob Clark,
	Sean Paul, Konrad Dybcio, Dmitry Baryshkov, Abhinav Kumar,
	Jessica Zhang, Marijn Suijten, David Airlie, Simona Vetter

On 3/14/2026 9:44 AM, Alexander Koskovich wrote:
> Commit dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8") changed the
> GMEM_BASE check from adreno_is_a650_family() & adreno_is_a740_family()
> to family >= ADRENO_6XX_GEN4.
> 
> This inadvertently excluded A650 (ADRENO_6XX_GEN3), causing it to report
> an incorrect GMEM_BASE which results in severe rendering corruption.
> 
> Update check to also include ADRENO_6XX_GEN3 to fix A650.
> 
> Fixes: dc220915ddb2 ("drm/msm: Fix GMEM_BASE for gen8")
> Signed-off-by: Alexander Koskovich <akoskovich@pm.me>

Reviewed-by: Akhil P Oommen <akhilpo@oss.qualcomm.com>

-Akhil
> ---
>  drivers/gpu/drm/msm/adreno/adreno_gpu.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.c b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> index d5fe6f6f0dec..0ac3fba5c277 100644
> --- a/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c
> @@ -376,7 +376,7 @@ int adreno_get_param(struct msm_gpu *gpu, struct msm_context *ctx,
>  		*value = adreno_gpu->info->gmem;
>  		return 0;
>  	case MSM_PARAM_GMEM_BASE:
> -		if (adreno_gpu->info->family >= ADRENO_6XX_GEN4)
> +		if (adreno_gpu->info->family >= ADRENO_6XX_GEN3)
>  			*value = 0;
>  		else
>  			*value = 0x100000;
> 
> ---
> base-commit: 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681
> change-id: 20260314-fix-gmem-base-a650-cfd9bfcea425
> 
> Best regards,


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2026-03-16 20:55 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-03-14  4:14 [PATCH] drm/msm: Fix GMEM_BASE for A650 Alexander Koskovich
2026-03-16  9:22 ` Konrad Dybcio
2026-03-16 14:28   ` Dmitry Baryshkov
2026-03-16 14:34     ` Rob Clark
2026-03-16 17:13       ` Dmitry Baryshkov
2026-03-16 14:35     ` Konrad Dybcio
2026-03-16 14:31   ` Rob Clark
2026-03-16 14:34     ` Konrad Dybcio
2026-03-16 20:54     ` Akhil P Oommen
2026-03-16 20:55 ` Akhil P Oommen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®