-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
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>
- Loading branch information
Ivan Mikhaylov
authored and
Jonathan Cameron
committed
Nov 16, 2023
1 parent
b85ea95
commit f0d1a9b
Showing
1 changed file
with
139 additions
and
0 deletions.
There are no files selected for viewing
139 changes: 139 additions & 0 deletions
139
Documentation/devicetree/bindings/iio/adc/maxim,max34408.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,139 @@ | ||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/iio/adc/maxim,max34408.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Maxim MAX34408/MAX34409 current monitors with overcurrent control | ||
|
||
maintainers: | ||
- Ivan Mikhaylov <fr0st61te@gmail.com> | ||
|
||
description: | | ||
The MAX34408/MAX34409 are two- and four-channel current monitors that are | ||
configured and monitored with a standard I2C/SMBus serial interface. Each | ||
unidirectional current sensor offers precision high-side operation with a | ||
low full-scale sense voltage. The devices automatically sequence through | ||
two or four channels and collect the current-sense samples and average them | ||
to reduce the effect of impulse noise. The raw ADC samples are compared to | ||
user-programmable digital thresholds to indicate overcurrent conditions. | ||
Overcurrent conditions trigger a hardware output to provide an immediate | ||
indication to shut down any necessary external circuitry. | ||
Specifications about the devices can be found at: | ||
https://www.analog.com/media/en/technical-documentation/data-sheets/MAX34408-MAX34409.pdf | ||
properties: | ||
compatible: | ||
enum: | ||
- maxim,max34408 | ||
- maxim,max34409 | ||
|
||
"#address-cells": | ||
const: 1 | ||
|
||
"#size-cells": | ||
const: 0 | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
powerdown-gpios: | ||
description: | ||
Shutdown Output. Open-drain output. This output transitions to high impedance | ||
when any of the digital comparator thresholds are exceeded as long as the ENA | ||
pin is high. | ||
maxItems: 1 | ||
|
||
powerdown-status-gpios: | ||
description: | ||
SHTDN Enable Input. CMOS digital input. Connect to GND to clear the latch and | ||
unconditionally deassert (force low) the SHTDN output and reset the shutdown | ||
delay. Connect to VDD to enable normal latch operation of the SHTDN output. | ||
maxItems: 1 | ||
|
||
vdd-supply: true | ||
|
||
patternProperties: | ||
"^channel@[0-3]$": | ||
$ref: adc.yaml | ||
type: object | ||
description: | ||
Represents the internal channels of the ADC. | ||
|
||
properties: | ||
reg: | ||
items: | ||
- minimum: 0 | ||
maximum: 3 | ||
|
||
maxim,rsense-val-micro-ohms: | ||
description: | ||
Adjust the Rsense value to monitor higher or lower current levels for | ||
input. | ||
enum: [250, 500, 1000, 5000, 10000, 50000, 100000, 200000, 500000] | ||
default: 1000 | ||
|
||
required: | ||
- reg | ||
- maxim,rsense-val-micro-ohms | ||
|
||
unevaluatedProperties: false | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
allOf: | ||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
const: maxim,max34408 | ||
then: | ||
patternProperties: | ||
"^channel@[2-3]$": false | ||
"^channel@[0-1]$": | ||
properties: | ||
reg: | ||
maximum: 1 | ||
else: | ||
patternProperties: | ||
"^channel@[0-3]$": | ||
properties: | ||
reg: | ||
maximum: 3 | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/gpio/gpio.h> | ||
i2c { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
adc@1e { | ||
compatible = "maxim,max34409"; | ||
reg = <0x1e>; | ||
powerdown-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>; | ||
powerdown-status-gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
channel@0 { | ||
reg = <0x0>; | ||
maxim,rsense-val-micro-ohms = <5000>; | ||
}; | ||
channel@1 { | ||
reg = <0x1>; | ||
maxim,rsense-val-micro-ohms = <10000>; | ||
}; | ||
}; | ||
}; |