mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-05 18:39:59 +00:00
![Jonathan Cameron](/assets/img/avatar_default.png)
Simple binding so straight forward conversion, though did require adding a separate binding document for the max1027 to reflect its abilities to provide channels to consumers. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Cc: Peter Rosin <peda@axentia.se> Link: https://lore.kernel.org/r/20201031181242.742301-9-jic23@kernel.org
86 lines
2 KiB
YAML
86 lines
2 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/iio/afe/voltage-divider.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Voltage divider
|
|
|
|
maintainers:
|
|
- Peter Rosin <peda@axentia.se>
|
|
|
|
description: |
|
|
When an io-channel measures the midpoint of a voltage divider, the
|
|
interesting voltage is often the voltage over the full resistance
|
|
of the divider. This binding describes the voltage divider in such
|
|
a curcuit.
|
|
|
|
Vin ----.
|
|
|
|
|
.-----.
|
|
| R |
|
|
'-----'
|
|
|
|
|
+---- Vout
|
|
|
|
|
.-----.
|
|
| Rout|
|
|
'-----'
|
|
|
|
|
GND
|
|
|
|
|
|
properties:
|
|
compatible:
|
|
const: voltage-divider
|
|
|
|
io-channels:
|
|
maxItems: 1
|
|
description: |
|
|
Channel node of a voltage io-channel.
|
|
|
|
output-ohms:
|
|
description:
|
|
Resistance Rout over which the output voltage is measured. See full-ohms.
|
|
|
|
full-ohms:
|
|
description:
|
|
Resistance R + Rout for the full divider. The io-channel is scaled by
|
|
the Rout / (R + Rout) quotient.
|
|
|
|
required:
|
|
- compatible
|
|
- io-channels
|
|
- output-ohms
|
|
- full-ohms
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
/*
|
|
* The system voltage is circa 12V, but divided down with a 22/222
|
|
* voltage divider (R = 200 Ohms, Rout = 22 Ohms) and fed to an ADC.
|
|
*/
|
|
spi {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
maxadc: adc@0 {
|
|
compatible = "maxim,max1027";
|
|
reg = <0>;
|
|
#io-channel-cells = <1>;
|
|
interrupt-parent = <&gpio5>;
|
|
interrupts = <15 IRQ_TYPE_EDGE_RISING>;
|
|
spi-max-frequency = <1000000>;
|
|
};
|
|
};
|
|
sysv {
|
|
compatible = "voltage-divider";
|
|
io-channels = <&maxadc 1>;
|
|
|
|
/* Scale the system voltage by 22/222 to fit the ADC range. */
|
|
output-ohms = <22>;
|
|
full-ohms = <222>; /* 200 + 22 */
|
|
};
|
|
...
|