linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
Cc: mazziesaccount@gmail.com, Sebastian Reichel <sre@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Mark Brown <broonie@kernel.org>,
	linux-pm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	Markus Laine <markus.laine@fi.rohmeurope.com>,
	Mikko Mutanen <mikko.mutanen@fi.rohmeurope.com>
Subject: Re: [PATCH v4 2/9] dt_bindings: ROHM BD99954 Charger
Date: Mon, 2 Mar 2020 16:07:17 -0600	[thread overview]
Message-ID: <20200302220717.GA6981@bogus> (raw)
In-Reply-To: <7aa7f2646077228924d596edbc4d076a787d9312.1582617178.git.matti.vaittinen@fi.rohmeurope.com>

On Tue, Feb 25, 2020 at 10:52:32AM +0200, Matti Vaittinen wrote:
> 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.
> 
> Document the DT bindings for BD99954
> 
> Signed-off-by: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
> ---
> 
> Changes from rfc-v3:
>   - uncomment multipleOf
>   - add address and size cells properties to example I2C node
> 
>  .../bindings/power/supply/rohm,bd9995x.yaml   | 155 ++++++++++++++++++
>  1 file changed, 155 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/power/supply/rohm,bd9995x.yaml
> 
> diff --git a/Documentation/devicetree/bindings/power/supply/rohm,bd9995x.yaml b/Documentation/devicetree/bindings/power/supply/rohm,bd9995x.yaml
> new file mode 100644
> index 000000000000..547403773ec5
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/power/supply/rohm,bd9995x.yaml
> @@ -0,0 +1,155 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/power/supply/rohm,bd9995x.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: ROHM BD99954 Battery charger driver

Bindings are for h/w devices, not drivers.

> +
> +maintainers:
> +  - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.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.
> +
> +
> +properties:
> +  compatible:
> +    const: rohm,bd9995x-charger

You can drop '-charger' if the whole chip is a charger IC. If it is not, 
then your example is wrong.

You use BD99954 elsewhere, use that here too. We don't do wildcards in 
compatible strings.

> +#
> +#    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

Why is all of this commented out still?

> +# - 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.txt
> +
> +  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
> +
> +examples:
> +  - |
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +        charger@9 {
> +            compatible = "rohm,bd9995x-charger";
> +            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>;
> +        };
> +    };
> -- 
> 2.21.0
> 
> 
> -- 
> Matti Vaittinen, Linux device drivers
> ROHM Semiconductors, Finland SWDC
> Kiviharjunlenkki 1E
> 90220 OULU
> FINLAND
> 
> ~~~ "I don't think so," said Rene Descartes. Just then he vanished ~~~
> Simon says - in Latin please.
> ~~~ "non cogito me" dixit Rene Descarte, deinde evanescavit ~~~
> Thanks to Simon Glass for the translation =] 

  reply	other threads:[~2020-03-02 22:07 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-25  8:51 [PATCH v4 0/9] Support ROHM BD99954 charger IC Matti Vaittinen
2020-02-25  8:52 ` [PATCH v4 1/9] dt-bindings: battery: add new battery parameters Matti Vaittinen
2020-03-02 22:00   ` Rob Herring
2020-02-25  8:52 ` [PATCH v4 2/9] dt_bindings: ROHM BD99954 Charger Matti Vaittinen
2020-03-02 22:07   ` Rob Herring [this message]
2020-03-03  6:30     ` Vaittinen, Matti
2020-02-25  8:53 ` [PATCH v4 3/9] drivers: base: add linear ranges helpers Matti Vaittinen
2020-03-18 13:08   ` Greg Kroah-Hartman
2020-03-18 13:42     ` Vaittinen, Matti
2020-03-18 13:50       ` gregkh
2020-03-23 15:39         ` Vaittinen, Matti
2020-02-25  8:53 ` [PATCH v4 4/9] power: supply: bd70528: rename linear_range to avoid collision Matti Vaittinen
2020-02-25  8:53 ` [PATCH v4 5/9] regulator: rename regulator_linear_range to linear_range Matti Vaittinen
2020-02-25  8:54 ` [PATCH v4 6/9] regulator: use linear_ranges helper Matti Vaittinen
2020-02-25  8:54 ` [PATCH v4 7/9] power: supply: bd70528: use linear ranges Matti Vaittinen
2020-02-25  8:55 ` [PATCH v4 8/9] power: supply: add battery parameters Matti Vaittinen
2020-02-25  8:55 ` [PATCH v4 9/9] power: supply: Support ROHM bd99954 charger Matti Vaittinen
2020-02-25 16:21   ` Randy Dunlap
2020-02-26  7:58     ` Vaittinen, Matti

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200302220717.GA6981@bogus \
    --to=robh@kernel.org \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=markus.laine@fi.rohmeurope.com \
    --cc=matti.vaittinen@fi.rohmeurope.com \
    --cc=mazziesaccount@gmail.com \
    --cc=mikko.mutanen@fi.rohmeurope.com \
    --cc=rafael@kernel.org \
    --cc=sre@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).