Message ID | 20230309225041.477440-2-sre@kernel.org |
---|---|
State | New |
Headers | show |
Series | Add DT support for generic ADC battery | expand |
Hi Linus, On Fri, Mar 10, 2023 at 09:14:39AM +0100, Linus Walleij wrote: > Hi Sebastian, > > thanks for your patches! > > On Thu, Mar 9, 2023 at 11:50 PM Sebastian Reichel <sre@kernel.org> wrote: > > > Add binding for a battery that is only monitored via ADC > > channels and simple status GPIOs. > > > > Signed-off-by: Sebastian Reichel <sre@kernel.org> > > This does look very useful. :) > > +title: ADC battery > > + > > +maintainers: > > + - Sebastian Reichel <sre@kernel.org> > > + > > +description: | > > + Basic Battery, which only reports (in circuit) voltage and optionally > > + current via an ADC channel. > > I would over-specify: "voltage over the terminals" and > "current out of the battery" so this cannot be misunderstood. > > + this text: > > It can also optionally indicate that the battery is full by pulling a GPIO > line. Ack. > > > + charged-gpios: > > + description: > > + GPIO which signals that the battery is fully charged. > > It doesn't say how, I guess either this is an analog circuit (!) or > a charger IC? If it doesn't matter, no big deal, but if something is > implicit here, then spell it out please. In my case the GPIO is provided by a charger chip, that is not software controllable (just reports charge-done & charger-connected via GPIOs). I've seen something similar in a customer device some years ago. I will add a sentence: The GPIO is often provided by charger ICs, that are not software controllable. > > + fuel-gauge { > > This techno-lingo/slang term is a bit unfortunate, but if there are > precedents then stick with it. > > The correct term could be something like battery-capacity-meter > I suppose. Right now in DT we have - specific node name (e.g. chip names) that should be changed :) - smart-battery - battery - fuel-gauge I think fuel-gauge is the most sensible of that list, considering hardware vendors usually call their chips battery fuel gauge. -- Sebastian
On Tue, Mar 14, 2023 at 12:17 AM Sebastian Reichel <sre@kernel.org> wrote: > There is no mainline board using this driver and I think there > never was one. I did add a Fixes tag now, but its probably not worth > any backporting trouble considering it has no users. Good point. If a tree falls in the wood an no-one is there to hear it, it doesn't make a sound. Yours, Linus Walleij
diff --git a/Documentation/devicetree/bindings/power/supply/adc-battery.yaml b/Documentation/devicetree/bindings/power/supply/adc-battery.yaml new file mode 100644 index 000000000000..9d478bf9d2ee --- /dev/null +++ b/Documentation/devicetree/bindings/power/supply/adc-battery.yaml @@ -0,0 +1,67 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/power/supply/adc-battery.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ADC battery + +maintainers: + - Sebastian Reichel <sre@kernel.org> + +description: | + Basic Battery, which only reports (in circuit) voltage and optionally + current via an ADC channel. + +allOf: + - $ref: power-supply.yaml# + +properties: + compatible: + const: adc-battery + + charged-gpios: + description: + GPIO which signals that the battery is fully charged. + maxItems: 1 + + io-channels: + minItems: 1 + maxItems: 3 + + io-channel-names: + oneOf: + - const: voltage + - items: + - const: voltage + - enum: + - current + - power + - items: + - const: voltage + - const: current + - const: power + + monitored-battery: true + +required: + - compatible + - io-channels + - io-channel-names + - monitored-battery + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + fuel-gauge { + compatible = "adc-battery"; + charged-gpios = <&gpio 42 GPIO_ACTIVE_HIGH>; + io-channels = <&adc 13>, <&adc 37>; + io-channel-names = "voltage", "current"; + + power-supplies = <&charger>; + monitored-battery = <&battery>; + };
Add binding for a battery that is only monitored via ADC channels and simple status GPIOs. Signed-off-by: Sebastian Reichel <sre@kernel.org> --- .../bindings/power/supply/adc-battery.yaml | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 Documentation/devicetree/bindings/power/supply/adc-battery.yaml