Devicetree
 help / color / mirror / Atom feed
From: Chanh Nguyen <chanh@amperemail.onmicrosoft.com>
To: Conor Dooley <conor@kernel.org>, Guenter Roeck <linux@roeck-us.net>
Cc: Chanh Nguyen <chanh@os.amperecomputing.com>,
	Jean Delvare <jdelvare@suse.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Justin Ledford <justinledford@google.com>,
	devicetree@vger.kernel.org, linux-hwmon@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	OpenBMC Maillist <openbmc@lists.ozlabs.org>,
	Open Source Submission <patches@amperecomputing.com>,
	Phong Vo <phong@os.amperecomputing.com>,
	Thang Nguyen <thang@os.amperecomputing.com>,
	Quan Nguyen <quan@os.amperecomputing.com>
Subject: Re: [PATCH v3 1/1] dt-bindings: hwmon: Add maxim max31790
Date: Wed, 14 Aug 2024 14:31:43 +0700	[thread overview]
Message-ID: <481b00b4-c3b7-49c4-80fe-0c0fb8448673@amperemail.onmicrosoft.com> (raw)
In-Reply-To: <20240813-extruding-unfunded-0e14a5c161e1@spud>



On 13/08/2024 23:16, Conor Dooley wrote:
> On Tue, Aug 13, 2024 at 08:52:22AM -0700, Guenter Roeck wrote:
>> 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@os.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@roeck-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.
> 
> Sure, if you're happy with it. Having someone that knows about how the
> particular model works is usually preferred however!
> 

Thank Guenter and Conor for your comments!

I will add me to maintainers list. I'm going to push the patch v4 with 
this update soon. It will be as below:

  maintainers:
    - Guenter Roeck <linux@roeck-us.net>
    - Chanh Nguyen <chanh@os.amperecomputing.com>

I think I can support to reviewing any max31790 binding update later.

Thanks,
Chanh

>>
>>>> +
>>>> +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.
> 
> Even without any control, I would expect to see fan-# child nodes, just
> no pwms property in them. Without the child nodes, how does software
> determine which fan is being monitored by which channel?
> 
> 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
>>>>
>>

  parent reply	other threads:[~2024-08-14  7:32 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-13  8:41 [PATCH v3 0/1] Update the max31790 driver Chanh Nguyen
2024-08-13  8:41 ` [PATCH v3 1/1] dt-bindings: hwmon: Add maxim max31790 Chanh Nguyen
2024-08-13 15:33   ` Conor Dooley
2024-08-13 15:52     ` Guenter Roeck
2024-08-13 16:16       ` Conor Dooley
2024-08-13 16:21         ` Krzysztof Kozlowski
2024-08-14  8:58           ` Chanh Nguyen
2024-08-14  7:31         ` Chanh Nguyen [this message]
2024-08-13 16:20   ` Krzysztof Kozlowski
2024-08-14  8:54     ` Chanh Nguyen
2024-08-13  8:44 ` [PATCH v3 0/1] Update the max31790 driver Chanh Nguyen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=481b00b4-c3b7-49c4-80fe-0c0fb8448673@amperemail.onmicrosoft.com \
    --to=chanh@amperemail.onmicrosoft.com \
    --cc=chanh@os.amperecomputing.com \
    --cc=conor+dt@kernel.org \
    --cc=conor@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=jdelvare@suse.com \
    --cc=justinledford@google.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-hwmon@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=openbmc@lists.ozlabs.org \
    --cc=patches@amperecomputing.com \
    --cc=phong@os.amperecomputing.com \
    --cc=quan@os.amperecomputing.com \
    --cc=robh+dt@kernel.org \
    --cc=thang@os.amperecomputing.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox