Skip to content

Commit 71d689f

Browse files
gfpeltiergroeck
authored andcommitted
dt-bindings: hwmon: isl68137: add bindings to support voltage dividers
Add devicetree bindings to support declaring optional voltage dividers to the rail outputs of supported digital multiphase regulators. Some applications require Vout to exceed the voltage range that the Vsense pin can detect. This binding definition allows users to define the characteristics of a voltage divider placed between Vout and the Vsense pin for any rail powered by the device. These bindings copy the vout-voltage-divider property defined in the maxim,max20730 bindings schema since it is the best fit for the use case of scaling hwmon PMBus telemetry. The generic voltage-divider property used by many iio drivers was determined to be a poor fit because that schema is tied directly to iio for the purpose of scaling io-channel voltages and the isl68137 driver is not an iio driver. New schema file named isil,isl68137.yaml to align with the corresponding driver name and pre-existing bindings ported from trivial bindings. However, all new device bindings use renesas as the vendor prefix since Renesas acquired Intersil and now maintains all documentation for the devices. Signed-off-by: Grant Peltier <[email protected]> Reviewed-by: Rob Herring (Arm) <[email protected]> Message-ID: <f7ac200e982961ff733de27a5c4505c04d68b6f3.1731439797.git.grantpeltier93@gmail.com> Signed-off-by: Guenter Roeck <[email protected]>
1 parent 83b645e commit 71d689f

File tree

2 files changed

+148
-6
lines changed

2 files changed

+148
-6
lines changed
Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
5+
$id: http://devicetree.org/schemas/hwmon/pmbus/isil,isl68137.yaml#
6+
$schema: http://devicetree.org/meta-schemas/core.yaml#
7+
8+
title: Renesas Digital Multiphase Voltage Regulators with PMBus
9+
10+
maintainers:
11+
- Grant Peltier <[email protected]>
12+
13+
description: |
14+
Renesas digital multiphase voltage regulators with PMBus.
15+
https://www.renesas.com/en/products/power-management/multiphase-power/multiphase-dcdc-switching-controllers
16+
17+
properties:
18+
compatible:
19+
enum:
20+
- isil,isl68137
21+
- renesas,isl68220
22+
- renesas,isl68221
23+
- renesas,isl68222
24+
- renesas,isl68223
25+
- renesas,isl68224
26+
- renesas,isl68225
27+
- renesas,isl68226
28+
- renesas,isl68227
29+
- renesas,isl68229
30+
- renesas,isl68233
31+
- renesas,isl68239
32+
- renesas,isl69222
33+
- renesas,isl69223
34+
- renesas,isl69224
35+
- renesas,isl69225
36+
- renesas,isl69227
37+
- renesas,isl69228
38+
- renesas,isl69234
39+
- renesas,isl69236
40+
- renesas,isl69239
41+
- renesas,isl69242
42+
- renesas,isl69243
43+
- renesas,isl69247
44+
- renesas,isl69248
45+
- renesas,isl69254
46+
- renesas,isl69255
47+
- renesas,isl69256
48+
- renesas,isl69259
49+
- isil,isl69260
50+
- renesas,isl69268
51+
- isil,isl69269
52+
- renesas,isl69298
53+
- renesas,raa228000
54+
- renesas,raa228004
55+
- renesas,raa228006
56+
- renesas,raa228228
57+
- renesas,raa229001
58+
- renesas,raa229004
59+
60+
reg:
61+
maxItems: 1
62+
63+
'#address-cells':
64+
const: 1
65+
66+
'#size-cells':
67+
const: 0
68+
69+
patternProperties:
70+
"^channel@([0-3])$":
71+
type: object
72+
description:
73+
Container for properties specific to a particular channel (rail).
74+
75+
properties:
76+
reg:
77+
description: The channel (rail) index.
78+
items:
79+
minimum: 0
80+
maximum: 3
81+
82+
vout-voltage-divider:
83+
description: |
84+
Resistances of a voltage divider placed between Vout and the voltage
85+
sense (Vsense) pin for the given channel (rail). It has two numbers
86+
representing the resistances of the voltage divider provided as
87+
<Rout Rtotal> which yields an adjusted Vout as
88+
Vout_adj = Vout * Rtotal / Rout given the original Vout as reported
89+
by the Vsense pin. Given a circuit configuration similar to the one
90+
below, Rtotal = R1 + Rout.
91+
92+
Vout ----.
93+
|
94+
.-----.
95+
| R1 |
96+
'-----'
97+
|
98+
+---- Vsense
99+
|
100+
.-----.
101+
| Rout|
102+
'-----'
103+
|
104+
GND
105+
106+
$ref: /schemas/types.yaml#/definitions/uint32-array
107+
minItems: 2
108+
maxItems: 2
109+
110+
required:
111+
- reg
112+
113+
additionalProperties: false
114+
115+
required:
116+
- compatible
117+
- reg
118+
119+
additionalProperties: false
120+
121+
examples:
122+
- |
123+
i2c {
124+
#address-cells = <1>;
125+
#size-cells = <0>;
126+
127+
isl68239@60 {
128+
compatible = "isil,isl68137";
129+
reg = <0x60>;
130+
};
131+
};
132+
- |
133+
i2c {
134+
#address-cells = <1>;
135+
#size-cells = <0>;
136+
137+
isl68239@60 {
138+
compatible = "renesas,isl68239";
139+
reg = <0x60>;
140+
#address-cells = <1>;
141+
#size-cells = <0>;
142+
143+
channel@0 {
144+
reg = <0>;
145+
vout-voltage-divider = <1000 2000>; // Reported Vout/Pout would be scaled by 2
146+
};
147+
};
148+
};

Documentation/devicetree/bindings/trivial-devices.yaml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -153,12 +153,6 @@ properties:
153153
- isil,isl29028
154154
# Intersil ISL29030 Ambient Light and Proximity Sensor
155155
- isil,isl29030
156-
# Intersil ISL68137 Digital Output Configurable PWM Controller
157-
- isil,isl68137
158-
# Intersil ISL69260 PMBus Voltage Regulator
159-
- isil,isl69260
160-
# Intersil ISL69269 PMBus Voltage Regulator
161-
- isil,isl69269
162156
# Intersil ISL76682 Ambient Light Sensor
163157
- isil,isl76682
164158
# JEDEC JESD300 (SPD5118) Hub and Serial Presence Detect

0 commit comments

Comments
 (0)