arm64: dts: qcom: sm8550: add TRNG node
[linux-modified.git] / Documentation / devicetree / bindings / power / supply / adc-battery.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/power/supply/adc-battery.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: ADC battery
8
9 maintainers:
10   - Sebastian Reichel <sre@kernel.org>
11
12 description:
13   Basic battery capacity meter, which only reports basic battery data
14   via ADC channels and optionally indicate that the battery is full by
15   polling a GPIO line.
16
17   The voltage is expected to be measured between the battery terminals
18   and mandatory. The optional current/power channel is expected to
19   monitor the current/power flowing out of the battery. Last but not
20   least the temperature channel is supposed to measure the battery
21   temperature.
22
23 allOf:
24   - $ref: power-supply.yaml#
25
26 properties:
27   compatible:
28     const: adc-battery
29
30   charged-gpios:
31     description:
32       GPIO which signals that the battery is fully charged. The GPIO is
33       often provided by charger ICs, that are not software controllable.
34     maxItems: 1
35
36   io-channels:
37     minItems: 1
38     maxItems: 4
39
40   io-channel-names:
41     minItems: 1
42     items:
43       - const: voltage
44       - enum: [ current, power, temperature ]
45       - enum: [ power, temperature ]
46       - const: temperature
47
48   monitored-battery: true
49
50 required:
51   - compatible
52   - io-channels
53   - io-channel-names
54   - monitored-battery
55
56 unevaluatedProperties: false
57
58 examples:
59   - |
60     #include <dt-bindings/gpio/gpio.h>
61
62     fuel-gauge {
63         compatible = "adc-battery";
64         charged-gpios = <&gpio 42 GPIO_ACTIVE_HIGH>;
65         io-channels = <&adc 13>, <&adc 37>;
66         io-channel-names = "voltage", "current";
67
68         power-supplies = <&charger>;
69         monitored-battery = <&battery>;
70     };