2023-08-11 16:34:29

by Rob Clark

[permalink] [raw]
Subject: [PATCH] drm/msm/a690: Switch to a660_gmu.bin

From: Rob Clark <[email protected]>

There isn't actually a a690_gmu.bin. But it appears that the normal
a660_gmu.bin works fine. Normally all the devices within a sub-
generation (or "family") will use the same fw, and a690 is in the a660
family.

Signed-off-by: Rob Clark <[email protected]>
---
drivers/gpu/drm/msm/adreno/adreno_device.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
index 1ed270dae148..756a9cfe1cbf 100644
--- a/drivers/gpu/drm/msm/adreno/adreno_device.c
+++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
@@ -478,7 +478,7 @@ static const struct adreno_info gpulist[] = {
.family = ADRENO_6XX_GEN4,
.fw = {
[ADRENO_FW_SQE] = "a660_sqe.fw",
- [ADRENO_FW_GMU] = "a690_gmu.bin",
+ [ADRENO_FW_GMU] = "a660_gmu.bin",
},
.gmem = SZ_4M,
.inactive_period = DRM_MSM_INACTIVE_PERIOD,
--
2.41.0



2023-08-11 16:45:51

by Konrad Dybcio

[permalink] [raw]
Subject: Re: [PATCH] drm/msm/a690: Switch to a660_gmu.bin

On 11.08.2023 18:21, Rob Clark wrote:
> On Fri, Aug 11, 2023 at 9:11 AM Konrad Dybcio <[email protected]> wrote:
>>
>> On 11.08.2023 18:09, Rob Clark wrote:
>>> On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <[email protected]> wrote:
>>>>
>>>> From: Rob Clark <[email protected]>
>>>>
>>>> There isn't actually a a690_gmu.bin. But it appears that the normal
>>>> a660_gmu.bin works fine. Normally all the devices within a sub-
>>>> generation (or "family") will use the same fw, and a690 is in the a660
>>>> family.
>>>>
>>>
>>> possibly this could be considered as:
>>>
>>> Fixes: 5e7665b5e484 ("drm/msm/adreno: Add Adreno A690 support")
>> For a lack of a better response, "meh"
>
> It would help route the change back to 6.4.y so we can stop explaining
> to folks that they should create a symlink ;-)
Ok fair!

>
>> Other than that:
>>
>> Reviewed-by: Konrad Dybcio <[email protected]>
>>
>> Perhaps we could take this further and do something like
>>
>> if (failed to load gmu fw)
>> try loading "gmu.bin"
>
> that (loading random fw) sounds like a bad idea.. plus gmu.bin doesn't exist
I guess we still should hear from Qualcomm on this one, but I
do believe that "aXYZ_gmu.bin" is really "gmu firmware, tagged
at aXYZ release". They're even versioned and adreno-gpulist.h
downstream contains the minimum version for each SKU.

Konrad

2023-08-11 16:46:41

by Rob Clark

[permalink] [raw]
Subject: Re: [PATCH] drm/msm/a690: Switch to a660_gmu.bin

On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <[email protected]> wrote:
>
> From: Rob Clark <[email protected]>
>
> There isn't actually a a690_gmu.bin. But it appears that the normal
> a660_gmu.bin works fine. Normally all the devices within a sub-
> generation (or "family") will use the same fw, and a690 is in the a660
> family.
>

possibly this could be considered as:

Fixes: 5e7665b5e484 ("drm/msm/adreno: Add Adreno A690 support")

> Signed-off-by: Rob Clark <[email protected]>
> ---
> drivers/gpu/drm/msm/adreno/adreno_device.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
> index 1ed270dae148..756a9cfe1cbf 100644
> --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
> +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
> @@ -478,7 +478,7 @@ static const struct adreno_info gpulist[] = {
> .family = ADRENO_6XX_GEN4,
> .fw = {
> [ADRENO_FW_SQE] = "a660_sqe.fw",
> - [ADRENO_FW_GMU] = "a690_gmu.bin",
> + [ADRENO_FW_GMU] = "a660_gmu.bin",
> },
> .gmem = SZ_4M,
> .inactive_period = DRM_MSM_INACTIVE_PERIOD,
> --
> 2.41.0
>

2023-08-11 16:58:24

by Konrad Dybcio

[permalink] [raw]
Subject: Re: [PATCH] drm/msm/a690: Switch to a660_gmu.bin

On 11.08.2023 18:09, Rob Clark wrote:
> On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <[email protected]> wrote:
>>
>> From: Rob Clark <[email protected]>
>>
>> There isn't actually a a690_gmu.bin. But it appears that the normal
>> a660_gmu.bin works fine. Normally all the devices within a sub-
>> generation (or "family") will use the same fw, and a690 is in the a660
>> family.
>>
>
> possibly this could be considered as:
>
> Fixes: 5e7665b5e484 ("drm/msm/adreno: Add Adreno A690 support")
For a lack of a better response, "meh"

Other than that:

Reviewed-by: Konrad Dybcio <[email protected]>

Perhaps we could take this further and do something like

if (failed to load gmu fw)
try loading "gmu.bin"


Konrad
>
>> Signed-off-by: Rob Clark <[email protected]>
>> ---
>> drivers/gpu/drm/msm/adreno/adreno_device.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
>> index 1ed270dae148..756a9cfe1cbf 100644
>> --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
>> +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
>> @@ -478,7 +478,7 @@ static const struct adreno_info gpulist[] = {
>> .family = ADRENO_6XX_GEN4,
>> .fw = {
>> [ADRENO_FW_SQE] = "a660_sqe.fw",
>> - [ADRENO_FW_GMU] = "a690_gmu.bin",
>> + [ADRENO_FW_GMU] = "a660_gmu.bin",
>> },
>> .gmem = SZ_4M,
>> .inactive_period = DRM_MSM_INACTIVE_PERIOD,
>> --
>> 2.41.0
>>

2023-08-11 16:59:05

by Rob Clark

[permalink] [raw]
Subject: Re: [PATCH] drm/msm/a690: Switch to a660_gmu.bin

On Fri, Aug 11, 2023 at 9:11 AM Konrad Dybcio <[email protected]> wrote:
>
> On 11.08.2023 18:09, Rob Clark wrote:
> > On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <[email protected]> wrote:
> >>
> >> From: Rob Clark <[email protected]>
> >>
> >> There isn't actually a a690_gmu.bin. But it appears that the normal
> >> a660_gmu.bin works fine. Normally all the devices within a sub-
> >> generation (or "family") will use the same fw, and a690 is in the a660
> >> family.
> >>
> >
> > possibly this could be considered as:
> >
> > Fixes: 5e7665b5e484 ("drm/msm/adreno: Add Adreno A690 support")
> For a lack of a better response, "meh"

It would help route the change back to 6.4.y so we can stop explaining
to folks that they should create a symlink ;-)

> Other than that:
>
> Reviewed-by: Konrad Dybcio <[email protected]>
>
> Perhaps we could take this further and do something like
>
> if (failed to load gmu fw)
> try loading "gmu.bin"

that (loading random fw) sounds like a bad idea.. plus gmu.bin doesn't exist

BR,
-R

>
> Konrad
> >
> >> Signed-off-by: Rob Clark <[email protected]>
> >> ---
> >> drivers/gpu/drm/msm/adreno/adreno_device.c | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
> >> index 1ed270dae148..756a9cfe1cbf 100644
> >> --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
> >> +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
> >> @@ -478,7 +478,7 @@ static const struct adreno_info gpulist[] = {
> >> .family = ADRENO_6XX_GEN4,
> >> .fw = {
> >> [ADRENO_FW_SQE] = "a660_sqe.fw",
> >> - [ADRENO_FW_GMU] = "a690_gmu.bin",
> >> + [ADRENO_FW_GMU] = "a660_gmu.bin",
> >> },
> >> .gmem = SZ_4M,
> >> .inactive_period = DRM_MSM_INACTIVE_PERIOD,
> >> --
> >> 2.41.0
> >>

2023-08-11 18:37:03

by Rob Clark

[permalink] [raw]
Subject: Re: [PATCH] drm/msm/a690: Switch to a660_gmu.bin

On Fri, Aug 11, 2023 at 9:31 AM Konrad Dybcio <[email protected]> wrote:
>
> On 11.08.2023 18:21, Rob Clark wrote:
> > On Fri, Aug 11, 2023 at 9:11 AM Konrad Dybcio <[email protected]> wrote:
> >>
> >> On 11.08.2023 18:09, Rob Clark wrote:
> >>> On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <[email protected]> wrote:
> >>>>
> >>>> From: Rob Clark <[email protected]>
> >>>>
> >>>> There isn't actually a a690_gmu.bin. But it appears that the normal
> >>>> a660_gmu.bin works fine. Normally all the devices within a sub-
> >>>> generation (or "family") will use the same fw, and a690 is in the a660
> >>>> family.
> >>>>
> >>>
> >>> possibly this could be considered as:
> >>>
> >>> Fixes: 5e7665b5e484 ("drm/msm/adreno: Add Adreno A690 support")
> >> For a lack of a better response, "meh"
> >
> > It would help route the change back to 6.4.y so we can stop explaining
> > to folks that they should create a symlink ;-)
> Ok fair!
>
> >
> >> Other than that:
> >>
> >> Reviewed-by: Konrad Dybcio <[email protected]>
> >>
> >> Perhaps we could take this further and do something like
> >>
> >> if (failed to load gmu fw)
> >> try loading "gmu.bin"
> >
> > that (loading random fw) sounds like a bad idea.. plus gmu.bin doesn't exist
> I guess we still should hear from Qualcomm on this one, but I
> do believe that "aXYZ_gmu.bin" is really "gmu firmware, tagged
> at aXYZ release". They're even versioned and adreno-gpulist.h
> downstream contains the minimum version for each SKU.

We definitely can't use a660_gmu.bin as is on a630 family devices, for
example. Maybe that is just down to sw <-> fw interface changes but
it means linux-firmware would still need to keep separate a630_gmu.bin
and a660_gmu.bin, otherwise new l-f with old kernel would explode.

That doesn't mean they are unrelated.. I think they probably just
branch the fw for each family.

BR,
-R

> Konrad