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