* [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support
@ 2025-11-21 16:13 Dmitry Baryshkov
2025-11-21 16:13 ` [PATCH 1/2] drm/msm/a2xx: fix pixel shader start on A225 Dmitry Baryshkov
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Dmitry Baryshkov @ 2025-11-21 16:13 UTC (permalink / raw)
To: Rob Clark, Sean Paul, Konrad Dybcio, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Marijn Suijten, David Airlie,
Simona Vetter, Jordan Crouse, Jonathan Marek
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel
Add two remaining bits necessary to enable Adreno A225 support.
Note, this wasn't tested on the actual hardware and is purely based on
the old KGSL driver from msm-3.0. For example, running on MSM8960 might
require adjusting PM_OVERRIDE[12] registers.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
Dmitry Baryshkov (2):
drm/msm/a2xx: fix pixel shader start on A225
drm/msm/a2xx: add A225 entry to catalog
drivers/gpu/drm/msm/adreno/a2xx_catalog.c | 12 ++++++++++++
drivers/gpu/drm/msm/adreno/a2xx_gpu.c | 5 ++++-
2 files changed, 16 insertions(+), 1 deletion(-)
---
base-commit: b179ce312bafcb8c68dc718e015aee79b7939ff0
change-id: 20251121-a225-196020e562c2
Best regards,
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/2] drm/msm/a2xx: fix pixel shader start on A225
2025-11-21 16:13 [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support Dmitry Baryshkov
@ 2025-11-21 16:13 ` Dmitry Baryshkov
2025-11-22 13:26 ` Konrad Dybcio
2025-11-21 16:13 ` [PATCH 2/2] drm/msm/a2xx: add A225 entry to catalog Dmitry Baryshkov
2025-11-21 19:36 ` [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support Konrad Dybcio
2 siblings, 1 reply; 8+ messages in thread
From: Dmitry Baryshkov @ 2025-11-21 16:13 UTC (permalink / raw)
To: Rob Clark, Sean Paul, Konrad Dybcio, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Marijn Suijten, David Airlie,
Simona Vetter, Jordan Crouse, Jonathan Marek
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel
A225 has a different PixelShader start address, write correct address
while initializing GPU.
Fixes: 21af872cd8c6 ("drm/msm/adreno: add a2xx")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
drivers/gpu/drm/msm/adreno/a2xx_gpu.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/msm/adreno/a2xx_gpu.c b/drivers/gpu/drm/msm/adreno/a2xx_gpu.c
index ec38db45d8a366e75acddbacd4810d7b7a80926f..cdc24b3b7b81cce6b01aa14a74bd8e512cd8be90 100644
--- a/drivers/gpu/drm/msm/adreno/a2xx_gpu.c
+++ b/drivers/gpu/drm/msm/adreno/a2xx_gpu.c
@@ -77,7 +77,10 @@ static bool a2xx_me_init(struct msm_gpu *gpu)
/* Vertex and Pixel Shader Start Addresses in instructions
* (3 DWORDS per instruction) */
- OUT_RING(ring, 0x80000180);
+ if (adreno_is_a225(adreno_gpu))
+ OUT_RING(ring, 0x80000300);
+ else
+ OUT_RING(ring, 0x80000180);
/* Maximum Contexts */
OUT_RING(ring, 0x00000001);
/* Write Confirm Interval and The CP will wait the
--
2.47.3
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/2] drm/msm/a2xx: add A225 entry to catalog
2025-11-21 16:13 [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support Dmitry Baryshkov
2025-11-21 16:13 ` [PATCH 1/2] drm/msm/a2xx: fix pixel shader start on A225 Dmitry Baryshkov
@ 2025-11-21 16:13 ` Dmitry Baryshkov
2025-11-21 19:37 ` Konrad Dybcio
2025-11-21 19:36 ` [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support Konrad Dybcio
2 siblings, 1 reply; 8+ messages in thread
From: Dmitry Baryshkov @ 2025-11-21 16:13 UTC (permalink / raw)
To: Rob Clark, Sean Paul, Konrad Dybcio, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Marijn Suijten, David Airlie,
Simona Vetter, Jordan Crouse, Jonathan Marek
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel
Add catalog entry for Adreno A225.6 as present on MSM8960v3. Most of the
pieces were already contributed by Jonathan Marek in commit 21af872cd8c6
("drm/msm/adreno: add a2xx"), but weren't enabled because there was no
GPU entry.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
drivers/gpu/drm/msm/adreno/a2xx_catalog.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/gpu/drm/msm/adreno/a2xx_catalog.c b/drivers/gpu/drm/msm/adreno/a2xx_catalog.c
index 5ddd015f930d9a7dd04e2d2035daa0b2f5ff3f27..9ee4c9c4dcf7575a4fdfe24a14cd6acc99f5de1c 100644
--- a/drivers/gpu/drm/msm/adreno/a2xx_catalog.c
+++ b/drivers/gpu/drm/msm/adreno/a2xx_catalog.c
@@ -42,6 +42,18 @@ static const struct adreno_info a2xx_gpus[] = {
.gmem = SZ_512K,
.inactive_period = DRM_MSM_INACTIVE_PERIOD,
.init = a2xx_gpu_init,
+ }, {
+ /* Only for msm8960v3, v2 required a special firmware */
+ .chip_ids = ADRENO_CHIP_IDS(0x02020506),
+ .family = ADRENO_2XX_GEN2,
+ .revn = 225,
+ .fw = {
+ [ADRENO_FW_PM4] = "a225_pm4.fw",
+ [ADRENO_FW_PFP] = "a225_pfp.fw",
+ },
+ .gmem = SZ_512K,
+ .inactive_period = DRM_MSM_INACTIVE_PERIOD,
+ .init = a2xx_gpu_init,
}
};
DECLARE_ADRENO_GPULIST(a2xx);
--
2.47.3
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support
2025-11-21 16:13 [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support Dmitry Baryshkov
2025-11-21 16:13 ` [PATCH 1/2] drm/msm/a2xx: fix pixel shader start on A225 Dmitry Baryshkov
2025-11-21 16:13 ` [PATCH 2/2] drm/msm/a2xx: add A225 entry to catalog Dmitry Baryshkov
@ 2025-11-21 19:36 ` Konrad Dybcio
2025-11-21 20:38 ` Dmitry Baryshkov
2 siblings, 1 reply; 8+ messages in thread
From: Konrad Dybcio @ 2025-11-21 19:36 UTC (permalink / raw)
To: Dmitry Baryshkov, Rob Clark, Sean Paul, Konrad Dybcio,
Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang, Marijn Suijten,
David Airlie, Simona Vetter, Jordan Crouse, Jonathan Marek
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel
On 11/21/25 5:13 PM, Dmitry Baryshkov wrote:
> Add two remaining bits necessary to enable Adreno A225 support.
> Note, this wasn't tested on the actual hardware and is purely based on
> the old KGSL driver from msm-3.0. For example, running on MSM8960 might
> require adjusting PM_OVERRIDE[12] registers.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
> ---
> Dmitry Baryshkov (2):
> drm/msm/a2xx: fix pixel shader start on A225
> drm/msm/a2xx: add A225 entry to catalog
Not sure that's enough, a2xx_drawctxt_draw_workaround looks scary
https://github.com/AdrianDC/android_kernel_sony_msm8960t/blob/lineage-18.1/drivers/gpu/msm/adreno_a2xx.c
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 2/2] drm/msm/a2xx: add A225 entry to catalog
2025-11-21 16:13 ` [PATCH 2/2] drm/msm/a2xx: add A225 entry to catalog Dmitry Baryshkov
@ 2025-11-21 19:37 ` Konrad Dybcio
0 siblings, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2025-11-21 19:37 UTC (permalink / raw)
To: Dmitry Baryshkov, Rob Clark, Sean Paul, Konrad Dybcio,
Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang, Marijn Suijten,
David Airlie, Simona Vetter, Jordan Crouse, Jonathan Marek
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel
On 11/21/25 5:13 PM, Dmitry Baryshkov wrote:
> Add catalog entry for Adreno A225.6 as present on MSM8960v3. Most of the
> pieces were already contributed by Jonathan Marek in commit 21af872cd8c6
> ("drm/msm/adreno: add a2xx"), but weren't enabled because there was no
> GPU entry.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support
2025-11-21 19:36 ` [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support Konrad Dybcio
@ 2025-11-21 20:38 ` Dmitry Baryshkov
2025-11-22 13:26 ` Konrad Dybcio
0 siblings, 1 reply; 8+ messages in thread
From: Dmitry Baryshkov @ 2025-11-21 20:38 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Rob Clark, Sean Paul, Konrad Dybcio, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Marijn Suijten, David Airlie,
Simona Vetter, Jordan Crouse, Jonathan Marek, linux-arm-msm,
dri-devel, freedreno, linux-kernel
On Fri, Nov 21, 2025 at 08:36:08PM +0100, Konrad Dybcio wrote:
> On 11/21/25 5:13 PM, Dmitry Baryshkov wrote:
> > Add two remaining bits necessary to enable Adreno A225 support.
> > Note, this wasn't tested on the actual hardware and is purely based on
> > the old KGSL driver from msm-3.0. For example, running on MSM8960 might
> > require adjusting PM_OVERRIDE[12] registers.
> >
> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
> > ---
> > Dmitry Baryshkov (2):
> > drm/msm/a2xx: fix pixel shader start on A225
> > drm/msm/a2xx: add A225 entry to catalog
>
> Not sure that's enough, a2xx_drawctxt_draw_workaround looks scary
>
> https://github.com/AdrianDC/android_kernel_sony_msm8960t/blob/lineage-18.1/drivers/gpu/msm/adreno_a2xx.c
Yep. msm-3.0 does some other things for a200 / a220, which we don't
perform. I don't know which parts actually apply to our stack and which
don't.
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/2] drm/msm/a2xx: fix pixel shader start on A225
2025-11-21 16:13 ` [PATCH 1/2] drm/msm/a2xx: fix pixel shader start on A225 Dmitry Baryshkov
@ 2025-11-22 13:26 ` Konrad Dybcio
0 siblings, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2025-11-22 13:26 UTC (permalink / raw)
To: Dmitry Baryshkov, Rob Clark, Sean Paul, Konrad Dybcio,
Dmitry Baryshkov, Abhinav Kumar, Jessica Zhang, Marijn Suijten,
David Airlie, Simona Vetter, Jordan Crouse, Jonathan Marek
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel
On 11/21/25 5:13 PM, Dmitry Baryshkov wrote:
> A225 has a different PixelShader start address, write correct address
> while initializing GPU.
>
> Fixes: 21af872cd8c6 ("drm/msm/adreno: add a2xx")
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support
2025-11-21 20:38 ` Dmitry Baryshkov
@ 2025-11-22 13:26 ` Konrad Dybcio
0 siblings, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2025-11-22 13:26 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Rob Clark, Sean Paul, Konrad Dybcio, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Marijn Suijten, David Airlie,
Simona Vetter, Jordan Crouse, Jonathan Marek, linux-arm-msm,
dri-devel, freedreno, linux-kernel
On 11/21/25 9:38 PM, Dmitry Baryshkov wrote:
> On Fri, Nov 21, 2025 at 08:36:08PM +0100, Konrad Dybcio wrote:
>> On 11/21/25 5:13 PM, Dmitry Baryshkov wrote:
>>> Add two remaining bits necessary to enable Adreno A225 support.
>>> Note, this wasn't tested on the actual hardware and is purely based on
>>> the old KGSL driver from msm-3.0. For example, running on MSM8960 might
>>> require adjusting PM_OVERRIDE[12] registers.
>>>
>>> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
>>> ---
>>> Dmitry Baryshkov (2):
>>> drm/msm/a2xx: fix pixel shader start on A225
>>> drm/msm/a2xx: add A225 entry to catalog
>>
>> Not sure that's enough, a2xx_drawctxt_draw_workaround looks scary
>>
>> https://github.com/AdrianDC/android_kernel_sony_msm8960t/blob/lineage-18.1/drivers/gpu/msm/adreno_a2xx.c
>
> Yep. msm-3.0 does some other things for a200 / a220, which we don't
> perform. I don't know which parts actually apply to our stack and which
> don't.
Right, this patchset at least fixes up the obvious errors and those
interested can poke at it more
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2025-11-22 13:26 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-21 16:13 [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support Dmitry Baryshkov
2025-11-21 16:13 ` [PATCH 1/2] drm/msm/a2xx: fix pixel shader start on A225 Dmitry Baryshkov
2025-11-22 13:26 ` Konrad Dybcio
2025-11-21 16:13 ` [PATCH 2/2] drm/msm/a2xx: add A225 entry to catalog Dmitry Baryshkov
2025-11-21 19:37 ` Konrad Dybcio
2025-11-21 19:36 ` [PATCH 0/2] drm/msm/a2xx: enable Adreno A225 support Konrad Dybcio
2025-11-21 20:38 ` Dmitry Baryshkov
2025-11-22 13:26 ` Konrad Dybcio
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®