Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/sys/contrib/device-tree/Bindings/hwmon/adt7475.yaml
48375 views
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
7
title: ADT7475 hwmon sensor
8
9
maintainers:
10
- Jean Delvare <jdelvare@suse.com>
11
12
description: |
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
31
properties:
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
deprecated: true
49
minItems: 3
50
maxItems: 3
51
items:
52
enum: [0, 1]
53
default: 1
54
55
"#pwm-cells":
56
const: 4
57
description: |
58
Number of cells in a PWM specifier.
59
- 0: The PWM channel
60
- 1: The PWM period in nanoseconds
61
- 90909091 (11 Hz)
62
- 71428571 (14 Hz)
63
- 45454545 (22 Hz)
64
- 34482759 (29 Hz)
65
- 28571429 (35 Hz)
66
- 22727273 (44 Hz)
67
- 17241379 (58 Hz)
68
- 11363636 (88 Hz)
69
- 44444 (22 kHz)
70
- 2: PWM flags 0 or PWM_POLARITY_INVERTED
71
- 3: The default PWM duty cycle in nanoseconds
72
73
patternProperties:
74
"^adi,bypass-attenuator-in[0-4]$":
75
description: |
76
Configures bypassing the individual voltage input attenuator. If
77
set to 1 the attenuator is bypassed if set to 0 the attenuator is
78
not bypassed. If the property is absent then the attenuator
79
retains its configuration from the bios/bootloader.
80
$ref: /schemas/types.yaml#/definitions/uint32
81
enum: [0, 1]
82
83
"^adi,pin(5|10)-function$":
84
description: |
85
Configures the function for pin 5 on the adi,adt7473 and adi,adt7475. Or
86
pin 10 on the adi,adt7476 and adi,adt7490.
87
$ref: /schemas/types.yaml#/definitions/string
88
enum:
89
- pwm2
90
- smbalert#
91
92
"^adi,pin(9|14)-function$":
93
description: |
94
Configures the function for pin 9 on the adi,adt7473 and adi,adt7475. Or
95
pin 14 on the adi,adt7476 and adi,adt7490
96
$ref: /schemas/types.yaml#/definitions/string
97
enum:
98
- tach4
99
- therm#
100
- smbalert#
101
- gpio
102
103
"^fan-[0-9]+$":
104
$ref: fan-common.yaml#
105
unevaluatedProperties: false
106
107
required:
108
- compatible
109
- reg
110
111
additionalProperties: false
112
113
examples:
114
- |
115
#include <dt-bindings/pwm/pwm.h>
116
i2c {
117
#address-cells = <1>;
118
#size-cells = <0>;
119
120
pwm: hwmon@2e {
121
compatible = "adi,adt7476";
122
reg = <0x2e>;
123
adi,bypass-attenuator-in0 = <1>;
124
adi,bypass-attenuator-in1 = <0>;
125
adi,pin10-function = "smbalert#";
126
adi,pin14-function = "tach4";
127
#pwm-cells = <4>;
128
129
/* PWMs at 22.5 kHz frequency, 50% duty*/
130
fan-0 {
131
pwms = <&pwm 0 44444 0 22222>;
132
};
133
134
fan-1 {
135
pwms = <&pwm 2 44444 0 22222>;
136
};
137
};
138
};
139
140