# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2021 Sebastian Reichel
%YAML 1.2
---
$id: http://devicetree.org/schemas/power/supply/cpcap-battery.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Motorola CPCAP PMIC battery

maintainers:
  - Tony Lindgren <tony@atomide.com>
  - Sebastian Reichel <sre@kernel.org>

description: |
  Motorola CPCAP is a PMIC found in some mobile phones, e.g.
  the Droid 4. This binding describes its battery fuel gauge
  sub-function.

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

properties:
  compatible:
    const: motorola,cpcap-battery

  interrupts:
    items:
      - description: eol interrupt
      - description: low battery percentage interrupt
      - description: critical battery percentage interrupt
      - description: charger detect interrupt
      - description: battery detect interrupt
      - description: coulomb counter calibration interrupt

  interrupt-names:
    items:
      - const: eol
      - const: lowbph
      - const: lowbpl
      - const: chrgcurr1
      - const: battdetb
      - const: cccal

  io-channels:
    items:
      - description: battery temperature
      - description: battery voltage
      - description: battery charge current
      - description: battery current

  io-channel-names:
    items:
      - const: battdetb
      - const: battp
      - const: chg_isense
      - const: batti

  power-supplies: true

required:
  - compatible
  - interrupts
  - interrupt-names
  - io-channels
  - io-channel-names
  - power-supplies

additionalProperties: false

examples:
  - |
    cpcap {
      battery {
        compatible = "motorola,cpcap-battery";
        interrupts-extended =
                <&cpcap 6 0>, <&cpcap 5 0>, <&cpcap 3 0>,
                <&cpcap 20 0>, <&cpcap 54 0>, <&cpcap 57 0>;
        interrupt-names =
                "eol", "lowbph", "lowbpl",
                "chrgcurr1", "battdetb", "cccal";
        io-channels = <&cpcap_adc 0>, <&cpcap_adc 1>,
                      <&cpcap_adc 5>, <&cpcap_adc 6>;
        io-channel-names = "battdetb", "battp",
                           "chg_isense", "batti";
        power-supplies = <&cpcap_charger>;
      };
    };