xref: /linux/Documentation/devicetree/bindings/hwmon/ti,amc6821.yaml (revision e78f70bad29c5ae1e1076698b690b15794e9b81e) !
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/hwmon/ti,amc6821.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: AMC6821 Intelligent Temperature Monitor and PWM Fan Controller
8
9maintainers:
10  - Farouk Bouabid <farouk.bouabid@cherry.de>
11  - Quentin Schulz <quentin.schulz@cherry.de>
12
13description:
14  Intelligent temperature monitor and pulse-width modulation (PWM) fan
15  controller.
16
17properties:
18  compatible:
19    oneOf:
20      - items:
21          - const: tsd,mule
22          - const: ti,amc6821
23      - const: ti,amc6821
24
25  reg:
26    maxItems: 1
27
28  i2c-mux:
29    type: object
30
31  fan:
32    $ref: fan-common.yaml#
33    unevaluatedProperties: false
34
35  "#pwm-cells":
36    const: 2
37    description: |
38      Number of cells in a PWM specifier.
39      - cell 0: PWM period in nanoseconds
40      - cell 1: PWM polarity: 0 or PWM_POLARITY_INVERTED
41
42required:
43  - compatible
44  - reg
45
46if:
47  properties:
48    compatible:
49      contains:
50        const: tsd,mule
51
52then:
53  required:
54    - i2c-mux
55
56additionalProperties: false
57
58examples:
59  - |
60    i2c {
61        #address-cells = <1>;
62        #size-cells = <0>;
63
64        fan_controller: fan@18 {
65            compatible = "ti,amc6821";
66            reg = <0x18>;
67            #pwm-cells = <2>;
68
69            fan {
70                pwms = <&fan_controller 40000 0>;
71            };
72        };
73    };
74
75  - |
76    i2c {
77        #address-cells = <1>;
78        #size-cells = <0>;
79
80        fan@18 {
81            compatible = "tsd,mule", "ti,amc6821";
82            reg = <0x18>;
83
84            i2c-mux {
85                compatible = "tsd,mule-i2c-mux";
86                #address-cells = <1>;
87                #size-cells = <0>;
88
89                i2c@0 {
90                    reg = <0x0>;
91                    #address-cells = <1>;
92                    #size-cells = <0>;
93
94                    rtc@6f {
95                        compatible = "isil,isl1208";
96                        reg = <0x6f>;
97                    };
98                };
99            };
100        };
101    };
102...
103