Re: [RFC] hwmon: pwm_enable clarification

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Oct 27, 2024 at 11:16 AM Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
>
> On 10/27/24 10:48, Derek J. Clark wrote:
> > Greetings all,
> >
> > I am working with Cryolita to fix up the GPD driver she submitted recently:
> > https://lore.kernel.org/all/20240718-gpd_fan-v4-0-116e5431a9fe@xxxxxxxxx/
> >
> > We are currently having a discussion about the meaning of this part of the
> > documentation and are seeking some guidance from upstream.
> >  >> pwm[1-*]_enable
> >>              Fan speed control method:
> >>              0: no fan speed control (i.e. fan at full speed)
> >>              1: manual fan speed control enabled (using pwm[1-*])
> >>              2+: automatic fan speed control enabled
> >>              Check individual chip documentation files for automatic mode
> >>              details.
> >>              RW
> >
> > In oxp-sensors we took 0 to mean "no kernel control" so a setting of 0 is
> > technically "automatic" but fully controlled by the hardware with no
> > interaction from the driver. In her original driver draft she had taken this
>
> That is wrong. It should be (or have been) 2 or higher. Ah yes, I can see that
> the code sets fan control to automatic when oxp_pwm_disable() is called.
> Again, that is wrong. Congratulations to the submitters, you sneaked that by
> my review. That doesn't make it better. It is still wrong, and I call it "sneaky"
> because the function is not called "oxp_pwm_automatic()" or similar, it is
> called "oxp_pwm_disable(). Setting fan control to automatic does not disable
> fan control.
>
> My bad, I should have paid closer attention, and/or maybe not have trusted
> the submitters as much as I did. I guess I'll have to pay closer attention
> in the future.
>
> > literally to have the driver set the fan speed to 100% on this setting rather
> > then give back control to the hardware. My question is simply what is the
> > correct interpretation here? Ideally I would like to see this interface match
>
> It seems to me that the above text is well defined.
>
> > as existing userspace software is expecting 0 as hardware controlled and 1 as
> > manually controlled, but we also want to ensure this is correct before we
> > submit a v5.
> >
>
> Any such userspace expectations are simply wrong. The ABI definition is above
> and, again, it is well defined.
>
>         0: no fan speed control (i.e. fan at full speed)
>
> I don't really see any ambiguity in this text. This isn't about kernel control,
> it is an absolute statement. There is no "kernel" in "no fan speed control".
> "fan at full speed" should make this even more obvious.
>
> Guenter

Guenter,

I'll keep this in mind in the future, and I will send a patch soon to fix the
oxp_sensors driver. One final question, is a "0" setting mandatory?

Thanks for the quick reply.

Derek





[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux