From: Krzysztof Kozlowski <krzk@kernel.org>
To: Luiz Angelo Daros de Luca <luizluca@gmail.com>
Cc: "Guenter Roeck" <linux@roeck-us.net>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Chris Packham" <chris.packham@alliedtelesis.co.nz>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Darrick J. Wong" <djwong@us.ibm.com>,
"Uwe Kleine-König" <ukleinek@kernel.org>,
linux-hwmon@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-pwm@vger.kernel.org
Subject: Re: [hwmon-next PATCH v3 1/4] dt-bindings: hwmon: adi,adt7470
Date: Thu, 30 Jul 2026 08:17:57 +0200 [thread overview]
Message-ID: <6cc03c4c-2d88-46f2-aee4-adb769d10cbd@kernel.org> (raw)
In-Reply-To: <CAJq09z5CQgzzFahoiteh9ykjdbsYpP=QZ2AugzY4tQ79RpA-cg@mail.gmail.com>
On 29/07/2026 06:45, Luiz Angelo Daros de Luca wrote:
> Hi Krzysztof,
>
> Thanks for the review.
>
>> On Tue, Jul 28, 2026 at 12:07:09AM -0300, Luiz Angelo Daros de Luca wrote:
>>> The Analog Devices ADT7470 is a multichannel temperature sensor and
>>> PWM fan controller. It supports monitoring up to 10 external
>>> temperature sensors and controlling up to 4 fans.
>>>
>>> Add the device tree binding documentation for it. This includes
>>> support for the thermal framework by defining the "#thermal-sensor-cells"
>>> property, and models the fan control lines as PWM channels by
>>> defining the "#pwm-cells" property.
>>>
>>> Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
>>> ---
>>> .../devicetree/bindings/hwmon/adi,adt7470.yaml | 55 ++++++++++++++++++++++
>>> 1 file changed, 55 insertions(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/hwmon/adi,adt7470.yaml b/Documentation/devicetree/bindings/hwmon/adi,adt7470.yaml
>>> new file mode 100644
>>> index 000000000000..bb2375a4a490
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/hwmon/adi,adt7470.yaml
>>> @@ -0,0 +1,55 @@
>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/hwmon/adi,adt7470.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Analog Devices ADT7470 hwmon sensor
>>> +
>>> +maintainers:
>>> + - Luiz Angelo Daros de Luca <luizluca@gmail.com>
>>> +
>>> +description:
>>> + Multi-channel temperature monitor and PWM fan controller.
>>> + It supports monitoring up to 10 external temperature sensors and
>>> + controlling up to four fans. The fan control lines are modeled
>>> + as standard PWM channels.
>>> +
>>> +properties:
>>> + compatible:
>>> + const: adi,adt7470
>>> +
>>> + reg:
>>> + maxItems: 1
>>> +
>>> + "#pwm-cells":
>>> + const: 3
>>> + description:
>>> + See Documentation/devicetree/bindings/pwm/pwm.yaml for the
>>> + generic PWM binding description.
>>
>> Drop description.
>>
>> You OTOH, miss ref to pwm schema. Referencing here in description should
>> raise you questions... And then use unevaluatedProperties.
>
> I will drop the description and change to `unevaluatedProperties: false`.
>
> Regarding the reference to the PWM schema, adding `$ref:
> /schemas/pwm/pwm.yaml#` enforces the `$nodename` to match
> `^pwm(@.*|-([0-9a-f]+))?$`. Since the ADT7470 is primarily a hardware
> monitor, its node is typically named `sensor@...`,
> `fan-controller@...` or `hwmon@...`. Importing `pwm.yaml` causes
> `dtbs_check` to fail on existing node names because of this mismatch.
If it is a fan-controller then it should use common fan schema, because
you might be missing several properties.
Device having PWM outputs alone does not make it a fan controller, though.
>
> Since we cannot override the `$nodename` from an imported schema, what
> is the preferred approach here? Should I skip the `$ref` to `pwm.yaml`
> in this specific case, or is there an accepted workaround for sensors
> acting as PWM providers?
You can skip the pwm.yaml in such case.
>
>> You most likely miss ref to thermal-sensor.yaml as well, but that would
>> change the ABI since hwmon would fail on missing cells, right?
>
> Yes, you are right. It would require #thermal-sensor-cells and the
> device might not have a thermal sensor connected if it is used as a
> pure fan controller. Likewise, it can also be used as a simple
> analog-to-digital temperature adapter, with no fans connected (and
> "#pwm-cells" might be missing).
>
> To address this without breaking the ABI, we could add the ref
> conditionally if "#thermal-sensor-cells" is present.
>
> allOf:
> - if:
> required:
> - "#thermal-sensor-cells"
> then:
> $ref: /schemas/thermal/thermal-sensor.yaml#
>
> I just don't know if it is ok to ref thermal-sensor but not pwm.
Feels ok.
Best regards,
Krzysztof
next prev parent reply other threads:[~2026-07-30 6:18 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-28 3:07 [hwmon-next PATCH v3 0/4] hwmon: (adt7470) Add PWM provider and thermal sensor support Luiz Angelo Daros de Luca
2026-07-28 3:07 ` [hwmon-next PATCH v3 1/4] dt-bindings: hwmon: adi,adt7470 Luiz Angelo Daros de Luca
2026-07-28 8:14 ` Krzysztof Kozlowski
2026-07-28 8:19 ` Krzysztof Kozlowski
2026-07-29 4:45 ` Luiz Angelo Daros de Luca
2026-07-30 6:17 ` Krzysztof Kozlowski [this message]
2026-07-30 15:38 ` Guenter Roeck
2026-07-30 21:11 ` Luiz Angelo Daros de Luca
2026-07-30 21:37 ` Guenter Roeck
2026-07-31 5:39 ` Uwe Kleine-König
2026-07-28 3:07 ` [hwmon-next PATCH v3 2/4] hwmon: (adt7470) Add ADT7470_PWM_MAX macro Luiz Angelo Daros de Luca
2026-07-28 3:07 ` [hwmon-next PATCH v3 3/4] hwmon: (adt7470) Expose fan control via PWM framework Luiz Angelo Daros de Luca
2026-07-28 3:07 ` [hwmon-next PATCH v3 4/4] hwmon: (adt7470) Add thermal zone sensor support Luiz Angelo Daros de Luca
2026-07-28 3:21 ` [hwmon-next PATCH v3 0/4] hwmon: (adt7470) Add PWM provider and thermal " Luiz Angelo Daros de Luca
2026-07-28 3:52 ` Guenter Roeck
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=6cc03c4c-2d88-46f2-aee4-adb769d10cbd@kernel.org \
--to=krzk@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=chris.packham@alliedtelesis.co.nz \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=djwong@us.ibm.com \
--cc=krzk+dt@kernel.org \
--cc=linux-hwmon@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pwm@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=luizluca@gmail.com \
--cc=robh@kernel.org \
--cc=ukleinek@kernel.org \
/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