Skip to content

Commit 7c7dac8

Browse files
fr0st61tejic23
authored andcommitted
dt-bindings: adc: provide max34408/9 device tree binding document
The hardware binding for i2c current monitoring device with overcurrent control. Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com> Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Link: https://lore.kernel.org/r/20231014211254.16719-2-fr0st61te@gmail.com Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
1 parent 2399cde commit 7c7dac8

1 file changed

Lines changed: 139 additions & 0 deletions

File tree

Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/iio/adc/maxim,max34408.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Maxim MAX34408/MAX34409 current monitors with overcurrent control
8+
9+
maintainers:
10+
- Ivan Mikhaylov <fr0st61te@gmail.com>
11+
12+
description: |
13+
The MAX34408/MAX34409 are two- and four-channel current monitors that are
14+
configured and monitored with a standard I2C/SMBus serial interface. Each
15+
unidirectional current sensor offers precision high-side operation with a
16+
low full-scale sense voltage. The devices automatically sequence through
17+
two or four channels and collect the current-sense samples and average them
18+
to reduce the effect of impulse noise. The raw ADC samples are compared to
19+
user-programmable digital thresholds to indicate overcurrent conditions.
20+
Overcurrent conditions trigger a hardware output to provide an immediate
21+
indication to shut down any necessary external circuitry.
22+
23+
Specifications about the devices can be found at:
24+
https://www.analog.com/media/en/technical-documentation/data-sheets/MAX34408-MAX34409.pdf
25+
26+
properties:
27+
compatible:
28+
enum:
29+
- maxim,max34408
30+
- maxim,max34409
31+
32+
"#address-cells":
33+
const: 1
34+
35+
"#size-cells":
36+
const: 0
37+
38+
reg:
39+
maxItems: 1
40+
41+
interrupts:
42+
maxItems: 1
43+
44+
powerdown-gpios:
45+
description:
46+
Shutdown Output. Open-drain output. This output transitions to high impedance
47+
when any of the digital comparator thresholds are exceeded as long as the ENA
48+
pin is high.
49+
maxItems: 1
50+
51+
powerdown-status-gpios:
52+
description:
53+
SHTDN Enable Input. CMOS digital input. Connect to GND to clear the latch and
54+
unconditionally deassert (force low) the SHTDN output and reset the shutdown
55+
delay. Connect to VDD to enable normal latch operation of the SHTDN output.
56+
maxItems: 1
57+
58+
vdd-supply: true
59+
60+
patternProperties:
61+
"^channel@[0-3]$":
62+
$ref: adc.yaml
63+
type: object
64+
description:
65+
Represents the internal channels of the ADC.
66+
67+
properties:
68+
reg:
69+
items:
70+
- minimum: 0
71+
maximum: 3
72+
73+
maxim,rsense-val-micro-ohms:
74+
description:
75+
Adjust the Rsense value to monitor higher or lower current levels for
76+
input.
77+
enum: [250, 500, 1000, 5000, 10000, 50000, 100000, 200000, 500000]
78+
default: 1000
79+
80+
required:
81+
- reg
82+
- maxim,rsense-val-micro-ohms
83+
84+
unevaluatedProperties: false
85+
86+
required:
87+
- compatible
88+
- reg
89+
90+
allOf:
91+
- if:
92+
properties:
93+
compatible:
94+
contains:
95+
const: maxim,max34408
96+
then:
97+
patternProperties:
98+
"^channel@[2-3]$": false
99+
"^channel@[0-1]$":
100+
properties:
101+
reg:
102+
maximum: 1
103+
else:
104+
patternProperties:
105+
"^channel@[0-3]$":
106+
properties:
107+
reg:
108+
maximum: 3
109+
110+
additionalProperties: false
111+
112+
examples:
113+
- |
114+
#include <dt-bindings/gpio/gpio.h>
115+
116+
i2c {
117+
#address-cells = <1>;
118+
#size-cells = <0>;
119+
120+
adc@1e {
121+
compatible = "maxim,max34409";
122+
reg = <0x1e>;
123+
powerdown-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
124+
powerdown-status-gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>;
125+
126+
#address-cells = <1>;
127+
#size-cells = <0>;
128+
129+
channel@0 {
130+
reg = <0x0>;
131+
maxim,rsense-val-micro-ohms = <5000>;
132+
};
133+
134+
channel@1 {
135+
reg = <0x1>;
136+
maxim,rsense-val-micro-ohms = <10000>;
137+
};
138+
};
139+
};

0 commit comments

Comments
 (0)