[PATCH v3 08/11] drm/panfrost: Add the MT8192 GPU ID
Steven Price
steven.price at arm.com
Fri Feb 24 05:53:02 PST 2023
On 24/02/2023 13:08, AngeloGioacchino Del Regno wrote:
> Il 24/02/23 11:06, Chen-Yu Tsai ha scritto:
>> On Thu, Feb 23, 2023 at 9:35 PM AngeloGioacchino Del Regno
>> <angelogioacchino.delregno at collabora.com> wrote:
>>>
>>> From: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
>>>
>>> MediaTek MT8192 has a Mali-G57 with a special GPU ID. Add its GPU ID,
>>> but treat it as otherwise identical to a standard Mali-G57.
>>>
>>> We do _not_ fix up the GPU ID here -- userspace needs to be aware of the
>>> special GPU ID, in case we find functional differences between
>>> MediaTek's implementation and the standard Mali-G57 down the line.
>>>
>>> Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
>>> Signed-off-by: AngeloGioacchino Del Regno
>>> <angelogioacchino.delregno at collabora.com>
>>> Reviewed-by: Steven Price <steven.price at arm.com>
>>
>> Reviewed-by: Chen-Yu Tsai <wenst at chromium.org>
>>
>> As previously mentioned, MT8195 Mali G57 has minor revision number 1.
>> Do we need to handle that?
>>
>
> Maybe something went wrong while sending the reply to the same question
> on v2?
>
> Anyway, from what I can see on my MT8195 machine, it works fine without
> adding
> any particular handling...
>
> Alyssa, Steven,
> are you aware of anything that we should consider?
The minor revision means that the set of HW workarounds might be
different. Specifically it appears that "BASE_HW_ISSUE_TTRX_3485"
applies to G57 ('Natt') r0p0 but not r0p1.
That particular workaround is a horrendous "dummy job" in kbase and we
don't have an implementation in Panfrost. However Panfrost also doesn't
(yet[1]) proactively SOFT_STOP jobs so is also unlikely to be affected.
TLDR; Minor revision 1 has a HW bug fixed, Panfrost isn't affected by
the bug anyway.
Steve
[1] It's been on my todo list for a while to look at improving job
scheduling, but to be honest I doubt I'm going to get round to it with
Panfrost, and PanCSF obviously changes the job scheduling anyway.
> Regards,
> Angelo
>
>>> ---
>>> drivers/gpu/drm/panfrost/panfrost_gpu.c | 8 ++++++++
>>> 1 file changed, 8 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/panfrost/panfrost_gpu.c
>>> b/drivers/gpu/drm/panfrost/panfrost_gpu.c
>>> index 6452e4e900dd..d28b99732dde 100644
>>> --- a/drivers/gpu/drm/panfrost/panfrost_gpu.c
>>> +++ b/drivers/gpu/drm/panfrost/panfrost_gpu.c
>>> @@ -204,6 +204,14 @@ static const struct panfrost_model gpu_models[] = {
>>>
>>> GPU_MODEL(g57, 0x9001,
>>> GPU_REV(g57, 0, 0)),
>>> +
>>> + /* MediaTek MT8192 has a Mali-G57 with a different GPU ID
>>> from the
>>> + * standard. Arm's driver does not appear to handle this model.
>>> + * ChromeOS has a hack downstream for it. Treat it as
>>> equivalent to
>>> + * standard Mali-G57 for now.
>>> + */
>>> + GPU_MODEL(g57, 0x9003,
>>> + GPU_REV(g57, 0, 0)),
>>> };
>>>
>>> static void panfrost_gpu_init_features(struct panfrost_device *pfdev)
>>> --
>>> 2.39.2
>>>
>
>
More information about the Linux-mediatek
mailing list