# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2020 Texas Instruments Incorporated
%YAML 1.2
---
$id: http://devicetree.org/schemas/power/supply/bq25980.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: TI BQ25980 Flash Charger

maintainers:
  - Andrew Davis <afd@ti.com>

description: |
  The BQ25980, BQ25975, and BQ25960 are a series of flash chargers intended
  for use in high-power density portable electronics. These inductorless
  switching chargers can provide over 97% efficiency by making use of the
  switched capacitor architecture.

allOf:
  - $ref: power-supply.yaml#

properties:
  compatible:
    enum:
      - ti,bq25980
      - ti,bq25975
      - ti,bq25960

  reg:
    maxItems: 1

  ti,watchdog-timeout-ms:
    description: |
      Watchdog timer in milli seconds. 0 disables the watchdog.
    default: 0
    minimum: 0
    maximum: 300000
    enum: [ 0, 5000, 10000, 50000, 300000]

  ti,sc-ovp-limit-microvolt:
    description: |
      Minimum input voltage limit in micro volts with a when the charger is in
      switch cap mode. 100000 micro volt step.
    default: 17800000
    minimum: 14000000
    maximum: 22000000

  ti,sc-ocp-limit-microamp:
    description: |
      Maximum input current limit in micro amps with a 100000 micro amp step.
    minimum: 100000
    maximum: 3300000

  ti,bypass-ovp-limit-microvolt:
    description: |
      Minimum input voltage limit in micro volts with a when the charger is in
      switch cap mode. 50000 micro volt step.
    minimum: 7000000
    maximum: 12750000

  ti,bypass-ocp-limit-microamp:
    description: |
      Maximum input current limit in micro amps with a 100000 micro amp step.
    minimum: 100000
    maximum: 3300000

  ti,bypass-enable:
    type: boolean
    description: Enables bypass mode at boot time

  interrupts:
    maxItems: 1
    description: |
      Indicates that the device state has changed.

  monitored-battery:
    $ref: /schemas/types.yaml#/definitions/phandle
    description: phandle to the battery node being monitored

required:
  - compatible
  - reg
  - monitored-battery

unevaluatedProperties: false

examples:
  - |
    bat: battery {
      compatible = "simple-battery";
      constant-charge-current-max-microamp = <4000000>;
      constant-charge-voltage-max-microvolt = <8400000>;
      precharge-current-microamp = <160000>;
      charge-term-current-microamp = <160000>;
    };
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    i2c0 {
      #address-cells = <1>;
      #size-cells = <0>;

      bq25980: charger@65 {
          compatible = "ti,bq25980";
          reg = <0x65>;
          interrupt-parent = <&gpio1>;
          interrupts = <16 IRQ_TYPE_EDGE_FALLING>;
          ti,watchdog-timeout-ms = <0>;
          ti,sc-ocp-limit-microamp = <2000000>;
          ti,sc-ovp-limit-microvolt = <17800000>;
          monitored-battery = <&bat>;
      };
    };

...
