1# 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 }; 85