blob: 90b9d3d882a455a066d3c5adccdaaf70fe2ecb68 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/power/supply/sbs,sbs-battery.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: SBS compliant battery
8
9maintainers:
10 - Sebastian Reichel <sre@kernel.org>
11
12description: |
13 Battery compatible with the smart battery system specifications
14
15allOf:
16 - $ref: power-supply.yaml#
17
18properties:
19 compatible:
20 oneOf:
21 - items:
22 - enum:
23 - ti,bq20z45
24 - ti,bq20z65
25 - ti,bq20z75
26 - enum:
27 - sbs,sbs-battery
28 - items:
29 - const: sbs,sbs-battery
30
31 reg:
32 maxItems: 1
33
34 sbs,i2c-retry-count:
35 description:
36 The number of times to retry I2C transactions on I2C IO failure.
37 default: 0
38 $ref: /schemas/types.yaml#/definitions/uint32
39
40 sbs,poll-retry-count:
41 description:
42 The number of times to try looking for new status after an external
43 change notification.
44 default: 0
45 $ref: /schemas/types.yaml#/definitions/uint32
46
47 sbs,battery-detect-gpios:
48 description:
49 GPIO which signals battery detection. If this is not supplied, the bus
50 needs to be polled to detect the battery.
51 maxItems: 1
52
53 sbs,disable-charger-broadcasts:
54 description:
55 SBS batteries by default send broadcast messages to SBS compliant chargers to
56 configure max. charge current/voltage. If your hardware does not have an SBS
57 compliant charger it should be disabled via this property to avoid blocking
58 the bus. Also some SBS battery fuel gauges are known to have a buggy multi-
59 master implementation.
60 type: boolean
61
62required:
63 - compatible
64 - reg
65
66unevaluatedProperties: false
67
68examples:
69 - |
70 #include <dt-bindings/gpio/gpio.h>
71
72 i2c {
73 #address-cells = <1>;
74 #size-cells = <0>;
75
76 battery@b {
77 compatible = "ti,bq20z75", "sbs,sbs-battery";
78 reg = <0xb>;
79 sbs,i2c-retry-count = <2>;
80 sbs,poll-retry-count = <10>;
81 sbs,battery-detect-gpios = <&gpio 122 GPIO_ACTIVE_HIGH>;
82 sbs,disable-charger-broadcasts;
83 };
84 };