xref: /freebsd/sys/contrib/device-tree/Bindings/hwmon/maxim,max31790.yaml (revision 656f7f43f204ad1e6956f8257f66b50e032a6c61)
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