xref: /linux/Documentation/devicetree/bindings/hwmon/maxim,max31790.yaml (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/hwmon/maxim,max31790.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: The Maxim MAX31790 Fan Controller
8
9maintainers:
10  - Guenter Roeck <linux@roeck-us.net>
11  - Chanh Nguyen <chanh@os.amperecomputing.com>
12
13description: >
14  The MAX31790 controls the speeds of up to six fans using six
15  independent PWM outputs. The desired fan speeds (or PWM duty cycles)
16  are written through the I2C interface.
17
18  Datasheets:
19    https://datasheets.maximintegrated.com/en/ds/MAX31790.pdf
20
21properties:
22  compatible:
23    const: maxim,max31790
24
25  reg:
26    maxItems: 1
27
28  clocks:
29    maxItems: 1
30
31  resets:
32    maxItems: 1
33
34  "#pwm-cells":
35    const: 1
36
37patternProperties:
38  "^fan-[0-9]+$":
39    $ref: fan-common.yaml#
40    unevaluatedProperties: false
41
42required:
43  - compatible
44  - reg
45
46additionalProperties: false
47
48examples:
49  - |
50    i2c {
51      #address-cells = <1>;
52      #size-cells = <0>;
53
54      pwm_provider: fan-controller@20 {
55        compatible = "maxim,max31790";
56        reg = <0x20>;
57        clocks = <&sys_clk>;
58        resets = <&reset 0>;
59        #pwm-cells = <1>;
60
61        fan-0 {
62          pwms = <&pwm_provider 1>;
63        };
64
65        fan-1 {
66          pwms = <&pwm_provider 2>;
67        };
68      };
69    };
70
71