Re: [PATCH v4 1/3] dt-bindings: hwmon: Add adt7475 fan/pwm properties

From: Conor Dooley
Date: Tue Jun 25 2024 - 12:22:32 EST


Uwe,

On Wed, May 29, 2024 at 08:58:41AM +0100, Conor Dooley wrote:
> On Wed, May 29, 2024 at 10:56:36AM +1200, Chris Packham wrote:
> > Add fan child nodes that allow describing the connections for the
> > ADT7475 to the fans it controls. This also allows setting some
> > initial values for the pwm duty cycle and frequency.
> >
> > Signed-off-by: Chris Packham <chris.packham@xxxxxxxxxxxxxxxxxxx>
> > ---
> >
> > Notes:
> > I realise there is still some discussion about how to express the
> > frequency and duty cycle. I have a personal preference for using hertz
> > for the frequency and 0-255 for the duty cycle but if the consensus is
> > to express these things some other way I'm fine with doing some math.
>
> Probably worth carrying a link to it here:
> https://lore.kernel.org/all/4de798f3-069e-4028-a5b5-5e6a639277e3@xxxxxxxxxxxxxxxxxxx/
>
> I asked Uwe to take a look & it's on his todo list.

This is an attempt to bump this up on your todo list a bit!

Thanks,
Conor.

> >
> > Changes in v4:
> > - 0 is not a valid frequency value
> > Changes in v3:
> > - Use the pwm provider/consumer bindings
> > Changes in v2:
> > - Document 0 as a valid value (leaves hardware as-is)
> >
> > .../devicetree/bindings/hwmon/adt7475.yaml | 25 ++++++++++++++++++-
> > 1 file changed, 24 insertions(+), 1 deletion(-)
> >
> > diff --git a/Documentation/devicetree/bindings/hwmon/adt7475.yaml b/Documentation/devicetree/bindings/hwmon/adt7475.yaml
> > index 051c976ab711..bfef4c803bf7 100644
> > --- a/Documentation/devicetree/bindings/hwmon/adt7475.yaml
> > +++ b/Documentation/devicetree/bindings/hwmon/adt7475.yaml
> > @@ -51,6 +51,15 @@ properties:
> > enum: [0, 1]
> > default: 1
> >
> > + "#pwm-cells":
> > + const: 4
> > + description: |
> > + Number of cells in a PWM specifier.
> > + - 0: The pwm channel
> > + - 1: The pwm frequency in hertz - 11, 14, 22, 29, 35, 44, 58, 88, 22500
> > + - 2: PWM flags 0 or PWM_POLARITY_INVERTED
> > + - 3: The default pwm duty cycle - 0-255
> > +
> > patternProperties:
> > "^adi,bypass-attenuator-in[0-4]$":
> > description: |
> > @@ -81,6 +90,10 @@ patternProperties:
> > - smbalert#
> > - gpio
> >
> > + "^fan-[0-9]+$":
> > + $ref: fan-common.yaml#
> > + unevaluatedProperties: false
> > +
> > required:
> > - compatible
> > - reg
> > @@ -89,11 +102,12 @@ additionalProperties: false
> >
> > examples:
> > - |
> > + #include <dt-bindings/pwm/pwm.h>
> > i2c {
> > #address-cells = <1>;
> > #size-cells = <0>;
> >
> > - hwmon@2e {
> > + pwm: hwmon@2e {
> > compatible = "adi,adt7476";
> > reg = <0x2e>;
> > adi,bypass-attenuator-in0 = <1>;
> > @@ -101,5 +115,14 @@ examples:
> > adi,pwm-active-state = <1 0 1>;
> > adi,pin10-function = "smbalert#";
> > adi,pin14-function = "tach4";
> > + #pwm-cells = <4>;
> > +
> > + fan-0 {
> > + pwms = <&pwm 0 22500 PWM_POLARITY_INVERTED 255>;
> > + };
> > +
> > + fan-1 {
> > + pwms = <&pwm 2 22500 PWM_POLARITY_INVERTED 255>;
> > + };
> > };
> > };
> > --
> > 2.45.1
> >


Attachment: signature.asc
Description: PGP signature