blob: 051c976ab711f6a0473b54f9468d3c908e9ba97a [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/hwmon/adt7475.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: ADT7475 hwmon sensor
8
9maintainers:
10 - Jean Delvare <jdelvare@suse.com>
11
12description: |
13 The ADT7473, ADT7475, ADT7476, and ADT7490 are thermal monitors and multiple
14 PWN fan controllers.
15
16 They support monitoring and controlling up to four fans (the ADT7490 can only
17 control up to three). They support reading a single on chip temperature
18 sensor and two off chip temperature sensors (the ADT7490 additionally
19 supports measuring up to three current external temperature sensors with
20 series resistance cancellation (SRC)).
21
22 Datasheets:
23 https://www.onsemi.com/pub/Collateral/ADT7473-D.PDF
24 https://www.onsemi.com/pub/Collateral/ADT7475-D.PDF
25 https://www.onsemi.com/pub/Collateral/ADT7476-D.PDF
26 https://www.onsemi.com/pub/Collateral/ADT7490-D.PDF
27
28 Description taken from onsemiconductors specification sheets, with minor
29 rephrasing.
30
31properties:
32 compatible:
33 enum:
34 - adi,adt7473
35 - adi,adt7475
36 - adi,adt7476
37 - adi,adt7490
38
39 reg:
40 maxItems: 1
41
42 adi,pwm-active-state:
43 description: |
44 Integer array, represents the active state of the pwm outputs If set to 0
45 the pwm uses a logic low output for 100% duty cycle. If set to 1 the pwm
46 uses a logic high output for 100% duty cycle.
47 $ref: /schemas/types.yaml#/definitions/uint32-array
48 minItems: 3
49 maxItems: 3
50 items:
51 enum: [0, 1]
52 default: 1
53
54patternProperties:
55 "^adi,bypass-attenuator-in[0-4]$":
56 description: |
57 Configures bypassing the individual voltage input attenuator. If
58 set to 1 the attenuator is bypassed if set to 0 the attenuator is
59 not bypassed. If the property is absent then the attenuator
60 retains its configuration from the bios/bootloader.
61 $ref: /schemas/types.yaml#/definitions/uint32
62 enum: [0, 1]
63
64 "^adi,pin(5|10)-function$":
65 description: |
66 Configures the function for pin 5 on the adi,adt7473 and adi,adt7475. Or
67 pin 10 on the adi,adt7476 and adi,adt7490.
68 $ref: /schemas/types.yaml#/definitions/string
69 enum:
70 - pwm2
71 - smbalert#
72
73 "^adi,pin(9|14)-function$":
74 description: |
75 Configures the function for pin 9 on the adi,adt7473 and adi,adt7475. Or
76 pin 14 on the adi,adt7476 and adi,adt7490
77 $ref: /schemas/types.yaml#/definitions/string
78 enum:
79 - tach4
80 - therm#
81 - smbalert#
82 - gpio
83
84required:
85 - compatible
86 - reg
87
88additionalProperties: false
89
90examples:
91 - |
92 i2c {
93 #address-cells = <1>;
94 #size-cells = <0>;
95
96 hwmon@2e {
97 compatible = "adi,adt7476";
98 reg = <0x2e>;
99 adi,bypass-attenuator-in0 = <1>;
100 adi,bypass-attenuator-in1 = <0>;
101 adi,pwm-active-state = <1 0 1>;
102 adi,pin10-function = "smbalert#";
103 adi,pin14-function = "tach4";
104 };
105 };