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/rohm,bd99954.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: ROHM BD99954 Battery charger 8 9maintainers: 10 - Matti Vaittinen <mazziesaccount@gmail.com> 11 - Markus Laine <markus.laine@fi.rohmeurope.com> 12 - Mikko Mutanen <mikko.mutanen@fi.rohmeurope.com> 13 14description: | 15 The ROHM BD99954 is a Battery Management LSI for 1-4 cell Lithium-Ion 16 secondary battery intended to be used in space-constraint equipment such 17 as Low profile Notebook PC, Tablets and other applications. BD99954 18 provides a Dual-source Battery Charger, two port BC1.2 detection and a 19 Battery Monitor. 20 21$ref: power-supply.yaml# 22 23properties: 24 compatible: 25 const: rohm,bd99954 26# 27# The battery charging profile of BD99954. 28# 29# Curve (1) represents charging current. 30# Curve (2) represents battery voltage. 31# 32# The BD99954 data sheet divides charging to three phases. 33# a) Trickle-charge with constant current (8). 34# b) pre-charge with constant current (6) 35# c) fast-charge with: 36# First a constant current (5) phase (CC) 37# Then constant voltage (CV) phase (after the battery voltage has reached 38# target level - until charging current has dropped to termination 39# level (7) 40# 41# V ^ ^ I 42# . . 43# . . 44# (4)- -.- - - - - - - - - - - - - - +++++++++++++++++++++++++++. 45# . / . 46# . ++++++/++ - - - - - - - - - - - - -.- - (5) 47# . + / + . 48# . + - -- . 49# . + - + . 50# . +.- -: . 51# . .+ +` . 52# . .- + | `/ . 53# . .." + .: . 54# . -" + -- . 55# . (2) ..." + | :- . 56# . ..."" + -: . 57# (3)- -.-.""- - - - -+++++++++ - - - - - - -.:- - - - - - - - - .- - (6) 58# . + `:. . 59# . + | -: . 60# . + -: . 61# . + .. . 62# . (1) + | "+++- - - -.- - (7) 63# -++++++++++++++- - - - - - - - - - - - - - - - - + - - - .- - (8) 64# . + - 65# -------------------------------------------------+++++++++--> 66# | | | CC | CV | 67# | --trickle-- | -pre- | ---------fast----------- | 68# 69# The charger uses the following battery properties 70# - trickle-charge-current-microamp: 71# Current used at trickle-charge phase (8 in above chart) 72# minimum: 64000 73# maximum: 1024000 74# multipleOf: 64000 75# - precharge-current-microamp: 76# Current used at pre-charge phase (6 in above chart) 77# minimum: 64000 78# maximum: 1024000 79# multipleOf: 64000 80# - constant-charge-current-max-microamp 81# Current used at fast charge constant current phase (5 in above chart) 82# minimum: 64000 83# maximum: 1024000 84# multipleOf: 64000 85# - constant-charge-voltage-max-microvolt 86# The constant voltage used in fast charging phase (4 in above chart) 87# minimum: 2560000 88# maximum: 19200000 89# multipleOf: 16000 90# - precharge-upper-limit-microvolt 91# charging mode is changed from trickle charging to pre-charging 92# when battery voltage exceeds this limit voltage (3 in above chart) 93# minimum: 2048000 94# maximum: 19200000 95# multipleOf: 64000 96# - re-charge-voltage-microvolt 97# minimum: 2560000 98# maximum: 19200000 99# multipleOf: 16000 100# re-charging is automatically started when battry has been discharging 101# to the point where the battery voltage drops below this limit 102# - over-voltage-threshold-microvolt 103# battery is expected to be faulty if battery voltage exceeds this limit. 104# Charger will then enter to a "battery faulty" -state 105# minimum: 2560000 106# maximum: 19200000 107# multipleOf: 16000 108# - charge-term-current-microamp 109# minimum: 0 110# maximum: 1024000 111# multipleOf: 64000 112# a charge cycle terminates when the battery voltage is above recharge 113# threshold, and the current is below this setting (7 in above chart) 114# See also Documentation/devicetree/bindings/power/supply/battery.yaml 115 116 reg: 117 maxItems: 1 118 119 interrupts: 120 maxItems: 1 121 122 monitored-battery: 123 description: 124 phandle of battery characteristics devicetree node 125 126 rohm,vsys-regulation-microvolt: 127 description: system specific lower limit for system voltage. 128 minimum: 2560000 129 maximum: 19200000 130 multipleOf: 64000 131 132 rohm,vbus-input-current-limit-microamp: 133 description: system specific VBUS input current limit (in microamps). 134 minimum: 32000 135 maximum: 16352000 136 multipleOf: 32000 137 138 rohm,vcc-input-current-limit-microamp: 139 description: system specific VCC/VACP input current limit (in microamps). 140 minimum: 32000 141 maximum: 16352000 142 multipleOf: 32000 143 144required: 145 - compatible 146 147additionalProperties: false 148 149examples: 150 - | 151 i2c { 152 #address-cells = <1>; 153 #size-cells = <0>; 154 charger@9 { 155 compatible = "rohm,bd99954"; 156 monitored-battery = <&battery>; 157 reg = <0x9>; 158 interrupt-parent = <&gpio1>; 159 interrupts = <29 8>; 160 rohm,vsys-regulation-microvolt = <8960000>; 161 rohm,vbus-input-current-limit-microamp = <1472000>; 162 rohm,vcc-input-current-limit-microamp = <1472000>; 163 }; 164 }; 165