1# 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
42patternProperties:
43  "^adi,bypass-attenuator-in[0-4]$":
44    description: |
45      Configures bypassing the individual voltage input attenuator. If
46      set to 1 the attenuator is bypassed if set to 0 the attenuator is
47      not bypassed. If the property is absent then the attenuator
48      retains it's configuration from the bios/bootloader.
49    $ref: /schemas/types.yaml#/definitions/uint32
50    enum: [0, 1]
51
52  "^adi,pwm-active-state$":
53    description: |
54      Integer array, represents the active state of the pwm outputs If set to 0
55      the pwm uses a logic low output for 100% duty cycle. If set to 1 the pwm
56      uses a logic high output for 100% duty cycle.
57    $ref: /schemas/types.yaml#/definitions/uint32-array
58    minItems: 3
59    maxItems: 3
60    items:
61      enum: [0, 1]
62      default: 1
63
64required:
65  - compatible
66  - reg
67
68additionalProperties: false
69
70examples:
71  - |
72    i2c {
73      #address-cells = <1>;
74      #size-cells = <0>;
75
76      hwmon@2e {
77        compatible = "adi,adt7476";
78        reg = <0x2e>;
79        adi,bypass-attenuator-in0 = <1>;
80        adi,bypass-attenuator-in1 = <0>;
81        adi,pwm-active-state = <1 0 1>;
82      };
83    };
84
85