[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240529-faucet-vending-3e330f8eb67b@wendy>
Date: Wed, 29 May 2024 08:58:41 +0100
From: Conor Dooley <conor.dooley@...rochip.com>
To: Chris Packham <chris.packham@...iedtelesis.co.nz>
CC: <jdelvare@...e.com>, <linux@...ck-us.net>, <robh@...nel.org>,
<krzk+dt@...nel.org>, <conor+dt@...nel.org>, <ukleinek@...nel.org>,
<linux-hwmon@...r.kernel.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <linux-pwm@...r.kernel.org>
Subject: Re: [PATCH v4 1/3] dt-bindings: hwmon: Add adt7475 fan/pwm properties
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@...iedtelesis.co.nz>
> ---
>
> 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@alliedtelesis.co.nz/
I asked Uwe to take a look & it's on his todo list.
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
>
Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)
Powered by blists - more mailing lists