[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <10680d13-442d-4f12-a77c-2bd05f11dc10@roeck-us.net>
Date: Tue, 13 Aug 2024 08:52:22 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Conor Dooley <conor@...nel.org>,
Chanh Nguyen <chanh@...amperecomputing.com>
Cc: Jean Delvare <jdelvare@...e.com>, Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>, Justin Ledford
<justinledford@...gle.com>, devicetree@...r.kernel.org,
linux-hwmon@...r.kernel.org, linux-kernel@...r.kernel.org,
OpenBMC Maillist <openbmc@...ts.ozlabs.org>,
Open Source Submission <patches@...erecomputing.com>,
Phong Vo <phong@...amperecomputing.com>,
Thang Nguyen <thang@...amperecomputing.com>,
Quan Nguyen <quan@...amperecomputing.com>
Subject: Re: [PATCH v3 1/1] dt-bindings: hwmon: Add maxim max31790
On 8/13/24 08:33, Conor Dooley wrote:
> On Tue, Aug 13, 2024 at 08:41:52AM +0000, Chanh Nguyen wrote:
>> Add device tree bindings and an example for max31790 device.
>>
>> Signed-off-by: Chanh Nguyen <chanh@...amperecomputing.com>
>> ---
>> Changes in v2:
>> - Update filename of the maxim,max31790.yaml [Krzysztof]
>> - Add the common fan schema to $ref [Krzysztof]
>> - Update the node name to "fan-controller" in maxim,max31790.yaml [Krzysztof]
>> - Drop "driver" in commit title [Krzysztof]
>> Changes in v3:
>> - Drop redundant "bindings" in commit title [Krzysztof]
>> - Add the clocks and resets property in example [Krzysztof]
>> - Add child node refer to fan-common.yaml [Krzysztof, Conor]
>> ---
>> .../bindings/hwmon/maxim,max31790.yaml | 81 +++++++++++++++++++
>> 1 file changed, 81 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml
>> new file mode 100644
>> index 000000000000..d28a6373edd3
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml
>> @@ -0,0 +1,81 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/hwmon/maxim,max31790.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: The Maxim MAX31790 Fan Controller
>> +
>> +maintainers:
>> + - Guenter Roeck <linux@...ck-us.net>
>
> Why Guenter and not you?
>
Fine with me, actually. We don't expect individual driver maintainers
in the hardware monitoring subsystem, and this chip doesn't have an
explicit maintainer. Forcing people to act as maintainer for .yaml
files they submit can only result in fewer submissions. I prefer to be
listed as maintainer over having no devicetree bindings.
>> +
>> +description: >
>> + The MAX31790 controls the speeds of up to six fans using six
>> + independent PWM outputs. The desired fan speeds (or PWM duty cycles)
>> + are written through the I2C interface.
>> +
>> + Datasheets:
>> + https://datasheets.maximintegrated.com/en/ds/MAX31790.pdf
>> +
>> +properties:
>> + compatible:
>> + const: maxim,max31790
>> +
>> + reg:
>> + maxItems: 1
>> +
>> + clocks:
>> + maxItems: 1
>> +
>> + resets:
>> + maxItems: 1
>> +
>> + "#pwm-cells":
>> + const: 1
>> +
>> +patternProperties:
>> + "^fan-[0-9]+$":
>> + $ref: fan-common.yaml#
>> + unevaluatedProperties: false
>> +
>> +required:
>> + - compatible
>> + - reg
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> + - |
>> + i2c {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + fan-controller@21 {
>> + compatible = "maxim,max31790";
>> + reg = <0x21>;
>> + clocks = <&sys_clk>;
>> + resets = <&reset 0>;
>> + };
>> + };
>
> What does this example demonstrate? The one below seems useful, this one
> I don't quite understand - what's the point of a fan controller with no
> fans connected to it? What am I missing?
>
Just guessing, but maybe this is supposed to reflect a system which only monitors fan
speeds but does not implement fan control.
Guenter
> Otherwise, this looks pretty good.
>
> Cheers,
> Conor.
>
>> + - |
>> + i2c {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + pwm_provider: fan-controller@20 {
>> + compatible = "maxim,max31790";
>> + reg = <0x20>;
>> + clocks = <&sys_clk>;
>> + resets = <&reset 0>;
>> + #pwm-cells = <1>;
>> +
>> + fan-0 {
>> + pwms = <&pwm_provider 1>;
>> + };
>> +
>> + fan-1 {
>> + pwms = <&pwm_provider 2>;
>> + };
>> + };
>> + };
>> +
>> --
>> 2.43.0
>>
Powered by blists - more mailing lists