blob: b2c229ed242370e146dce59f7d8dc78cb4130667 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# 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 };