165 lines
6.1 KiB
YAML
165 lines
6.1 KiB
YAML
|
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
||
|
%YAML 1.2
|
||
|
---
|
||
|
$id: http://devicetree.org/schemas/power/supply/rohm,bd99954.yaml#
|
||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||
|
|
||
|
title: ROHM BD99954 Battery charger
|
||
|
|
||
|
maintainers:
|
||
|
- Matti Vaittinen <mazziesaccount@gmail.com>
|
||
|
- Markus Laine <markus.laine@fi.rohmeurope.com>
|
||
|
- Mikko Mutanen <mikko.mutanen@fi.rohmeurope.com>
|
||
|
|
||
|
description: |
|
||
|
The ROHM BD99954 is a Battery Management LSI for 1-4 cell Lithium-Ion
|
||
|
secondary battery intended to be used in space-constraint equipment such
|
||
|
as Low profile Notebook PC, Tablets and other applications. BD99954
|
||
|
provides a Dual-source Battery Charger, two port BC1.2 detection and a
|
||
|
Battery Monitor.
|
||
|
|
||
|
$ref: power-supply.yaml#
|
||
|
|
||
|
properties:
|
||
|
compatible:
|
||
|
const: rohm,bd99954
|
||
|
#
|
||
|
# The battery charging profile of BD99954.
|
||
|
#
|
||
|
# Curve (1) represents charging current.
|
||
|
# Curve (2) represents battery voltage.
|
||
|
#
|
||
|
# The BD99954 data sheet divides charging to three phases.
|
||
|
# a) Trickle-charge with constant current (8).
|
||
|
# b) pre-charge with constant current (6)
|
||
|
# c) fast-charge with:
|
||
|
# First a constant current (5) phase (CC)
|
||
|
# Then constant voltage (CV) phase (after the battery voltage has reached
|
||
|
# target level - until charging current has dropped to termination
|
||
|
# level (7)
|
||
|
#
|
||
|
# V ^ ^ I
|
||
|
# . .
|
||
|
# . .
|
||
|
# (4)- -.- - - - - - - - - - - - - - +++++++++++++++++++++++++++.
|
||
|
# . / .
|
||
|
# . ++++++/++ - - - - - - - - - - - - -.- - (5)
|
||
|
# . + / + .
|
||
|
# . + - -- .
|
||
|
# . + - + .
|
||
|
# . +.- -: .
|
||
|
# . .+ +` .
|
||
|
# . .- + | `/ .
|
||
|
# . .." + .: .
|
||
|
# . -" + -- .
|
||
|
# . (2) ..." + | :- .
|
||
|
# . ..."" + -: .
|
||
|
# (3)- -.-.""- - - - -+++++++++ - - - - - - -.:- - - - - - - - - .- - (6)
|
||
|
# . + `:. .
|
||
|
# . + | -: .
|
||
|
# . + -: .
|
||
|
# . + .. .
|
||
|
# . (1) + | "+++- - - -.- - (7)
|
||
|
# -++++++++++++++- - - - - - - - - - - - - - - - - + - - - .- - (8)
|
||
|
# . + -
|
||
|
# -------------------------------------------------+++++++++-->
|
||
|
# | | | CC | CV |
|
||
|
# | --trickle-- | -pre- | ---------fast----------- |
|
||
|
#
|
||
|
# The charger uses the following battery properties
|
||
|
# - trickle-charge-current-microamp:
|
||
|
# Current used at trickle-charge phase (8 in above chart)
|
||
|
# minimum: 64000
|
||
|
# maximum: 1024000
|
||
|
# multipleOf: 64000
|
||
|
# - precharge-current-microamp:
|
||
|
# Current used at pre-charge phase (6 in above chart)
|
||
|
# minimum: 64000
|
||
|
# maximum: 1024000
|
||
|
# multipleOf: 64000
|
||
|
# - constant-charge-current-max-microamp
|
||
|
# Current used at fast charge constant current phase (5 in above chart)
|
||
|
# minimum: 64000
|
||
|
# maximum: 1024000
|
||
|
# multipleOf: 64000
|
||
|
# - constant-charge-voltage-max-microvolt
|
||
|
# The constant voltage used in fast charging phase (4 in above chart)
|
||
|
# minimum: 2560000
|
||
|
# maximum: 19200000
|
||
|
# multipleOf: 16000
|
||
|
# - precharge-upper-limit-microvolt
|
||
|
# charging mode is changed from trickle charging to pre-charging
|
||
|
# when battery voltage exceeds this limit voltage (3 in above chart)
|
||
|
# minimum: 2048000
|
||
|
# maximum: 19200000
|
||
|
# multipleOf: 64000
|
||
|
# - re-charge-voltage-microvolt
|
||
|
# minimum: 2560000
|
||
|
# maximum: 19200000
|
||
|
# multipleOf: 16000
|
||
|
# re-charging is automatically started when battry has been discharging
|
||
|
# to the point where the battery voltage drops below this limit
|
||
|
# - over-voltage-threshold-microvolt
|
||
|
# battery is expected to be faulty if battery voltage exceeds this limit.
|
||
|
# Charger will then enter to a "battery faulty" -state
|
||
|
# minimum: 2560000
|
||
|
# maximum: 19200000
|
||
|
# multipleOf: 16000
|
||
|
# - charge-term-current-microamp
|
||
|
# minimum: 0
|
||
|
# maximum: 1024000
|
||
|
# multipleOf: 64000
|
||
|
# a charge cycle terminates when the battery voltage is above recharge
|
||
|
# threshold, and the current is below this setting (7 in above chart)
|
||
|
# See also Documentation/devicetree/bindings/power/supply/battery.yaml
|
||
|
|
||
|
reg:
|
||
|
maxItems: 1
|
||
|
|
||
|
interrupts:
|
||
|
maxItems: 1
|
||
|
|
||
|
monitored-battery:
|
||
|
description:
|
||
|
phandle of battery characteristics devicetree node
|
||
|
|
||
|
rohm,vsys-regulation-microvolt:
|
||
|
description: system specific lower limit for system voltage.
|
||
|
minimum: 2560000
|
||
|
maximum: 19200000
|
||
|
multipleOf: 64000
|
||
|
|
||
|
rohm,vbus-input-current-limit-microamp:
|
||
|
description: system specific VBUS input current limit (in microamps).
|
||
|
minimum: 32000
|
||
|
maximum: 16352000
|
||
|
multipleOf: 32000
|
||
|
|
||
|
rohm,vcc-input-current-limit-microamp:
|
||
|
description: system specific VCC/VACP input current limit (in microamps).
|
||
|
minimum: 32000
|
||
|
maximum: 16352000
|
||
|
multipleOf: 32000
|
||
|
|
||
|
required:
|
||
|
- compatible
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
examples:
|
||
|
- |
|
||
|
i2c {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
charger@9 {
|
||
|
compatible = "rohm,bd99954";
|
||
|
monitored-battery = <&battery>;
|
||
|
reg = <0x9>;
|
||
|
interrupt-parent = <&gpio1>;
|
||
|
interrupts = <29 8>;
|
||
|
rohm,vsys-regulation-microvolt = <8960000>;
|
||
|
rohm,vbus-input-current-limit-microamp = <1472000>;
|
||
|
rohm,vcc-input-current-limit-microamp = <1472000>;
|
||
|
};
|
||
|
};
|