diff mbox series

drm/msm/a690: Switch to a660_gmu.bin

Message ID 20230811160505.174574-1-robdclark@gmail.com (mailing list archive)
State New, archived
Headers show
Series drm/msm/a690: Switch to a660_gmu.bin | expand

Commit Message

Rob Clark Aug. 11, 2023, 4:05 p.m. UTC
From: Rob Clark <robdclark@chromium.org>

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 <robdclark@chromium.org>
---
 drivers/gpu/drm/msm/adreno/adreno_device.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Rob Clark Aug. 11, 2023, 4:09 p.m. UTC | #1
On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <robdclark@gmail.com> wrote:
>
> From: Rob Clark <robdclark@chromium.org>
>
> 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 <robdclark@chromium.org>
> ---
>  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
>
Konrad Dybcio Aug. 11, 2023, 4:11 p.m. UTC | #2
On 11.08.2023 18:09, Rob Clark wrote:
> On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <robdclark@gmail.com> wrote:
>>
>> From: Rob Clark <robdclark@chromium.org>
>>
>> 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 <konrad.dybcio@linaro.org>

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 <robdclark@chromium.org>
>> ---
>>  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
>>
Rob Clark Aug. 11, 2023, 4:21 p.m. UTC | #3
On Fri, Aug 11, 2023 at 9:11 AM Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
>
> On 11.08.2023 18:09, Rob Clark wrote:
> > On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <robdclark@gmail.com> wrote:
> >>
> >> From: Rob Clark <robdclark@chromium.org>
> >>
> >> 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 <konrad.dybcio@linaro.org>
>
> 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 <robdclark@chromium.org>
> >> ---
> >>  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
> >>
Konrad Dybcio Aug. 11, 2023, 4:31 p.m. UTC | #4
On 11.08.2023 18:21, Rob Clark wrote:
> On Fri, Aug 11, 2023 at 9:11 AM Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
>>
>> On 11.08.2023 18:09, Rob Clark wrote:
>>> On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <robdclark@gmail.com> wrote:
>>>>
>>>> From: Rob Clark <robdclark@chromium.org>
>>>>
>>>> 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 <konrad.dybcio@linaro.org>
>>
>> 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
Rob Clark Aug. 11, 2023, 4:37 p.m. UTC | #5
On Fri, Aug 11, 2023 at 9:31 AM Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
>
> On 11.08.2023 18:21, Rob Clark wrote:
> > On Fri, Aug 11, 2023 at 9:11 AM Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
> >>
> >> On 11.08.2023 18:09, Rob Clark wrote:
> >>> On Fri, Aug 11, 2023 at 9:05 AM Rob Clark <robdclark@gmail.com> wrote:
> >>>>
> >>>> From: Rob Clark <robdclark@chromium.org>
> >>>>
> >>>> 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 <konrad.dybcio@linaro.org>
> >>
> >> 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
diff mbox series

Patch

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,