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

Guenter Roeck linux at roeck-us.net
Tue Mar 18 09:37:29 PDT 2025


On 3/18/25 08:33, Daniel Baluta wrote:
> On Tue, Mar 18, 2025 at 5:22 PM Guenter Roeck <linux at roeck-us.net> wrote:
>>
>> On 3/18/25 01:54, florin.leotescu at oss.nxp.com wrote:
>>> From: Florin Leotescu <florin.leotescu at nxp.com>
>>>
>>> Introduce yaml schema for Microchip emc2305 pwm fan controller.
>>>
>>> Signed-off-by: Florin Leotescu <florin.leotescu at nxp.com>
>>> Reviewed-by: Frank Li <Frank.Li at nxp.com>
>>> ---
>>>    .../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 at nvidia.com>
>>> +
>>> +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




More information about the linux-arm-kernel mailing list