Re: [PATCH v5 1/3] dt-bindings: hwmon: Add Microchip emc2305 support

From: Guenter Roeck
Date: Tue Mar 18 2025 - 12:42:49 EST


On 3/18/25 08:33, Daniel Baluta wrote:
On Tue, Mar 18, 2025 at 5:22 PM Guenter Roeck <linux@xxxxxxxxxxxx> wrote:

On 3/18/25 01:54, florin.leotescu@xxxxxxxxxxx wrote:
From: Florin Leotescu <florin.leotescu@xxxxxxx>

Introduce yaml schema for Microchip emc2305 pwm fan controller.

Signed-off-by: Florin Leotescu <florin.leotescu@xxxxxxx>
Reviewed-by: Frank Li <Frank.Li@xxxxxxx>
---
.../bindings/hwmon/microchip,emc2305.yaml | 113 ++++++++++++++++++
1 file changed, 113 insertions(+)
create mode 100644 Documentation/devicetree/bindings/hwmon/microchip,emc2305.yaml

diff --git a/Documentation/devicetree/bindings/hwmon/microchip,emc2305.yaml b/Documentation/devicetree/bindings/hwmon/microchip,emc2305.yaml
new file mode 100644
index 000000000000..e61ef97e63af
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/microchip,emc2305.yaml
@@ -0,0 +1,113 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+
+$id: http://devicetree.org/schemas/hwmon/microchip,emc2305.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Microchip EMC2305 SMBus compliant PWM fan controller
+
+maintainers:
+ - Michael Shych <michaelsh@xxxxxxxxxx>
+
+description:
+ Microchip EMC2301/2/3/5 pwm controller which supports
+ up to five programmable fan control circuits.
+
+properties:
+ compatible:
+ oneOf:
+ - enum:
+ - microchip,emc2305
+ - items:
+ - enum:
+ - microchip,emc2303
+ - microchip,emc2302
+ - microchip,emc2301
+ - const: microchip,emc2305
+
+ reg:
+ maxItems: 1
+
+ '#address-cells':
+ const: 1
+
+ '#size-cells':
+ const: 0
+
+ '#pwm-cells':
+ const: 3
+ description: |
+ Number of cells in a PWM specifier.
+ - cell 0: The PWM frequency
+ - cell 1: The PWM polarity: 0 or PWM_POLARITY_INVERTED
+ - cell 2: The PWM output config:
+ - 0 (Open-Drain)
+ - 1 (Push-Pull)
+
+
+patternProperties:
+ '^fan@[0-4]$':
+ $ref: fan-common.yaml#
+ unevaluatedProperties: false
+ properties:
+ reg:
+ description:
+ The fan number used to determine the associated PWM channel.
+
+ required:
+ - reg
+ - pwms

Is it necessary to make 'pwms' mandatory ? The current code works
just fine with defaults.

The code adding OF support is added just in the next patch, so the
current code isn't event
probed when trying to use dts.

Or am I missing something?


The patch introducing devicetree support to the driver doesn't evaluate
the pwm property. That makes it quite obvious that, from driver perspective,
it isn't needed. I don't immediately see why it would add value to _force_
users to provide pwm frequency, polarity, and the output configuration
if the defaults work just fine.

Guenter