summaryrefslogtreecommitdiffstats
path: root/dts/Bindings/power/supply/cpcap-charger.yaml
blob: cb6353683d7b12221362ea02bf7e2c37d68a8bf7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
# 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";
      };
    };