[PATCH] drm/amd/pm: fix the wrong fan speed in fan1_input

Alex Deucher alexdeucher at gmail.com
Thu Oct 22 02:18:17 UTC 2020


On Wed, Oct 21, 2020 at 9:30 PM Feng, Kenneth <Kenneth.Feng at amd.com> wrote:
>
> [AMD Official Use Only - Internal Distribution Only]
>
> Hi Alex,
> Navi10 also has this problem as below.
> # cat devices/pci0000:00/0000:00:01.1/0000:02:00.0/0000:03:00.0/0000:04:00.0/hwmon/hwmon3/fan1_input
> 1217
> # cat devices/pci0000:00/0000:00:01.1/0000:02:00.0/0000:03:00.0/0000:04:00.0/hwmon/hwmon3/fan1_enable
> 0
> # echo 1 > devices/pci0000:00/0000:00:01.1/0000:02:00.0/0000:03:00.0/0000:04:00.0/hwmon/hwmon3/fan1_enable
> # cat devices/pci0000:00/0000:00:01.1/0000:02:00.0/0000:03:00.0/0000:04:00.0/hwmon/hwmon3/fan1_enable
> 1
> s# cat devices/pci0000:00/0000:00:01.1/0000:02:00.0/0000:03:00.0/0000:04:00.0/hwmon/hwmon3/fan1_input
> 183105
>
> In AGM, the rpm is 1800.

Does it read back correctly if you manually set the fan rpm first
before reading it back?

Alex


>
>
>
> -----Original Message-----
> From: Feng, Kenneth
> Sent: Thursday, October 22, 2020 9:11 AM
> To: Alex Deucher <alexdeucher at gmail.com>
> Cc: amd-gfx list <amd-gfx at lists.freedesktop.org>; Gao, Likun <Likun.Gao at amd.com>
> Subject: RE: [PATCH] drm/amd/pm: fix the wrong fan speed in fan1_input
>
> [AMD Official Use Only - Internal Distribution Only]
>
> Hi Alex,
> Right, smu_v11_0_get_fan_speed_rpm() is not correct for sienna cichlid when it's in manual mode.
> An example is that in my system, the rpm is about 1800 in manual mode, confirmed with AGM and the internal smu fw scoreboard.
> But the fan1_input shows about 180000, which is way more than the real value.
> If you see the value from the metrics table is 0 on navi10, maybe it's the real rpm since we still have 0 rpm feature.
> I can double check the navi10.
> Thanks.
>
>
> -----Original Message-----
> From: Alex Deucher <alexdeucher at gmail.com>
> Sent: Thursday, October 22, 2020 2:47 AM
> To: Feng, Kenneth <Kenneth.Feng at amd.com>
> Cc: amd-gfx list <amd-gfx at lists.freedesktop.org>; Gao, Likun <Likun.Gao at amd.com>
> Subject: Re: [PATCH] drm/amd/pm: fix the wrong fan speed in fan1_input
>
> [CAUTION: External Email]
>
> On Wed, Oct 21, 2020 at 9:40 AM Alex Deucher <alexdeucher at gmail.com> wrote:
> >
> > On Wed, Oct 21, 2020 at 9:01 AM Alex Deucher <alexdeucher at gmail.com> wrote:
> > >
> > > On Wed, Oct 21, 2020 at 2:45 AM Kenneth Feng <kenneth.feng at amd.com> wrote:
> > > >
> > > > fix the wrong fan speed in fan1_input when the fan control mode is manual.
> > > > the fan speed value is not correct when we set manual mode to fan1_enalbe - 1.
> > > > since the fan speed in the metrics table always reflects the real
> > > > fan speed,we can fetch the fan speed for both auto and manual mode.
> > > >
> > > > Signed-off-by: Kenneth Feng <kenneth.feng at amd.com>
> > >
> > > NACK.  At least on the navi boards I have, the metrics table fan
> > > speed reads back 0 when the fan is in manual mode.  That's why I
> > > changed this in the first place.
> >
> > Nevermind, I was thinking about navi1x.  If this is working correctly
> > on sienna cichlid, please ignore me.
>
> That said, I don't see why the current code should not work.  Maybe a bug elsewhere?  Is smu_v11_0_get_fan_speed_rpm() incorrect for sienna cichlid?
>
> Alex
>
> >
> > Alex
> >
> >
> > >
> > > Alex
> > >
> > >
> > > > ---
> > > >  .../gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c   | 11 +++--------
> > > >  1 file changed, 3 insertions(+), 8 deletions(-)
> > > >
> > > > diff --git
> > > > a/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c
> > > > b/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c
> > > > index 496abc31b07e..27b6cade9ade 100644
> > > > --- a/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c
> > > > +++ b/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c
> > > > @@ -1171,14 +1171,9 @@ static int sienna_cichlid_get_fan_speed_rpm(struct smu_context *smu,
> > > >         if (!speed)
> > > >                 return -EINVAL;
> > > >
> > > > -       switch (smu_v11_0_get_fan_control_mode(smu)) {
> > > > -       case AMD_FAN_CTRL_AUTO:
> > > > -               return sienna_cichlid_get_smu_metrics_data(smu,
> > > > -                                                          METRICS_CURR_FANSPEED,
> > > > -                                                          speed);
> > > > -       default:
> > > > -               return smu_v11_0_get_fan_speed_rpm(smu, speed);
> > > > -       }
> > > > +       return sienna_cichlid_get_smu_metrics_data(smu,
> > > > +                                               METRICS_CURR_FANSPEED,
> > > > +                                               speed);
> > > >  }
> > > >
> > > >  static int sienna_cichlid_get_fan_parameters(struct smu_context
> > > > *smu)
> > > > --
> > > > 2.17.1
> > > >
> > > > _______________________________________________
> > > > amd-gfx mailing list
> > > > amd-gfx at lists.freedesktop.org
> > > > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2F
> > > > lists.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfx&data=04%7
> > > > C01%7Ckenneth.feng%40amd.com%7Cd8e969f4b63e4897a3df08d875f1b050%7C
> > > > 3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637389028190609906%7CUn
> > > > known%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik
> > > > 1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=KomP2H%2FadKJChDbNvNPQlTotmE
> > > > WrhutsQCHfiRIjNUY%3D&reserved=0


More information about the amd-gfx mailing list