Commit ce49e428 authored by Sebastian Reichel's avatar Sebastian Reichel Committed by Sebastian Reichel
Browse files

dt-bindings: power: supply: cpcap-charger: Convert to DT schema format



Convert the binding to DT schema format. I also added the missing bits
used by the only in-tree user and implemented in the driver.

Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
Reviewed-by: default avatarTony Lindgren <tony@atomide.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
parent 3c5be045
Loading
Loading
Loading
Loading
+0 −40
Original line number Diff line number Diff line
Motorola CPCAP PMIC battery charger binding

Required properties:
- compatible: Shall be "motorola,mapphone-cpcap-charger"
- interrupts: Interrupt specifier for each name in interrupt-names
- interrupt-names: Should contain the following entries:
		   "chrg_det", "rvrs_chrg", "chrg_se1b", "se0conn",
		   "rvrs_mode", "chrgcurr2", "chrgcurr1", "vbusvld",
		   "battdetb"
- io-channels: IIO ADC channel specifier for each name in io-channel-names
- io-channel-names: Should contain the following entries:
		    "battdetb", "battp", "vbus", "chg_isense", "batti"

Optional properties:
- mode-gpios: Optionally CPCAP charger can have a companion wireless
	      charge controller that is controlled with two GPIOs
	      that are active low.

Example:

cpcap_charger: 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";
};
+106 −0
Original line number Diff line number Diff line
# 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";
      };
    };