blob: cb6353683d7b12221362ea02bf7e2c37d68a8bf7 [file] [log] [blame]
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2021 Sebastian Reichel
%YAML 1.2
---
$id: "http://devicetree.org/schemas/power/supply/cpcap-charger.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
title: Motorola CPCAP PMIC charger
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 charger
sub-function.
allOf:
- $ref: power-supply.yaml#
properties:
compatible:
const: motorola,mapphone-cpcap-charger
interrupts:
items:
- description: charger detection interrupt
- description: reverse charge interrupt
- description: SE1 charger detection interrupt
- description: SE0 charger detection interrupt
- description: reverse mode interrupt
- description: charge current 2 interrupt
- description: charge current 1 interrupt
- description: VBUS valid interrupt
- description: battery detect interrupt
interrupt-names:
items:
- const: chrg_det
- const: rvrs_chrg
- const: chrg_se1b
- const: se0conn
- const: rvrs_mode
- const: chrgcurr2
- const: chrgcurr1
- const: vbusvld
- const: battdetb
io-channels:
items:
- description: battery temperature
- description: battery voltage
- description: VBUS voltage
- description: battery charge current
- description: battery current
io-channel-names:
items:
- const: battdetb
- const: battp
- const: vbus
- const: chg_isense
- const: batti
mode-gpios:
description: |
Optionally CPCAP charger can have a companion wireless
charge controller that is controlled with two GPIOs
that are active low.
minItems: 2
maxItems: 2
required:
- compatible
- interrupts
- interrupt-names
- io-channels
- io-channel-names
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
cpcap {
charger {
compatible = "motorola,mapphone-cpcap-charger";
interrupts-extended =
<&cpcap 13 0>, <&cpcap 12 0>, <&cpcap 29 0>, <&cpcap 28 0>,
<&cpcap 22 0>, <&cpcap 21 0>, <&cpcap 20 0>, <&cpcap 19 0>,
<&cpcap 54 0>;
interrupt-names =
"chrg_det", "rvrs_chrg", "chrg_se1b", "se0conn",
"rvrs_mode", "chrgcurr2", "chrgcurr1", "vbusvld",
"battdetb";
mode-gpios = <&gpio3 29 GPIO_ACTIVE_LOW>,
<&gpio3 23 GPIO_ACTIVE_LOW>;
io-channels = <&cpcap_adc 0>, <&cpcap_adc 1>,
<&cpcap_adc 2>, <&cpcap_adc 5>,
<&cpcap_adc 6>;
io-channel-names = "battdetb", "battp",
"vbus", "chg_isense",
"batti";
};
};