Commit 102d4a0b authored by Sebastian Reichel's avatar Sebastian Reichel Committed by Sebastian Reichel
Browse files

dt-bindings: power: supply: bq24257: Convert to DT schema format



Convert the binding to DT schema format.

Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
parent 648d3832
Loading
Loading
Loading
Loading
+0 −62
Original line number Diff line number Diff line
Binding for TI bq24250/bq24251/bq24257 Li-Ion Charger

Required properties:
- compatible: Should contain one of the following:
 * "ti,bq24250"
 * "ti,bq24251"
 * "ti,bq24257"
- reg: integer, i2c address of the device.
- interrupts: Interrupt mapping for GPIO IRQ (configure for both edges). Use in
    conjunction with "interrupt-parent".
- ti,battery-regulation-voltage: integer, maximum charging voltage in uV.
- ti,charge-current: integer, maximum charging current in uA.
- ti,termination-current: integer, charge will be terminated when current in
    constant-voltage phase drops below this value (in uA).

Optional properties:
- pg-gpios: GPIO used for connecting the bq2425x device PG (Power Good) pin.
    This pin is not available on all devices however it should be used if
    possible as this is the recommended way to obtain the charger's input PG
    state. If this pin is not specified a software-based approach for PG
    detection is used.
- ti,current-limit: The maximum current to be drawn from the charger's input
    (in uA). If this property is not specified, the input limit current is
    set automatically using USB D+/D- signal based charger type detection.
    If the hardware does not support the D+/D- based detection, a default
    of 500,000 is used (=500mA) instead.
- ti,ovp-voltage: Configures the over voltage protection voltage (in uV). If
    not specified a default of 6,5000,000 (=6.5V) is used.
- ti,in-dpm-voltage: Configures the threshold input voltage for the dynamic
    power path management (in uV). If not specified a default of 4,360,000
    (=4.36V) is used.

Example:

bq24257 {
	compatible = "ti,bq24257";
	reg = <0x6a>;
	interrupt-parent = <&gpio1>;
	interrupts = <16 IRQ_TYPE_EDGE_BOTH>;

	pg-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>;

	ti,battery-regulation-voltage = <4200000>;
	ti,charge-current = <1000000>;
	ti,termination-current = <50000>;
};

Example:

bq24250 {
	compatible = "ti,bq24250";
	reg = <0x6a>;
	interrupt-parent = <&gpio1>;
	interrupts = <16 IRQ_TYPE_EDGE_BOTH>;

	ti,battery-regulation-voltage = <4200000>;
	ti,charge-current = <500000>;
	ti,termination-current = <50000>;
	ti,current-limit = <900000>;
	ti,ovp-voltage = <9500000>;
	ti,in-dpm-voltage = <4440000>;
};
+124 −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/bq24257.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"

title: Binding for bq24250, bq24251 and bq24257 Li-Ion Charger

maintainers:
  - Sebastian Reichel <sre@kernel.org>

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

properties:
  compatible:
    enum:
      - ti,bq24250
      - ti,bq24251
      - ti,bq24257

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  ti,battery-regulation-voltage:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: maximum charging voltage in uV

  ti,charge-current:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: maximum charging current in uA

  ti,termination-current:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: |
      charge will be terminated when current in constant-voltage phase
      drops below this value (in uA)

  pg-gpios:
    description: |
      GPIO used for connecting the bq2425x device PG (Power Good) pin.
      This pin is not available on all devices however it should be used if
      possible as this is the recommended way to obtain the charger's input PG
      state. If this pin is not specified a software-based approach for PG
      detection is used.
    maxItems: 1

  ti,current-limit:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: |
      The maximum current to be drawn from the charger's input (in uA).
      If this property is not specified, the input limit current is set
      automatically using USB D+/D- signal based charger type detection.
      If the hardware does not support the D+/D- based detection, a default
      of 500,000 is used (=500mA) instead.

  ti,ovp-voltage:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: |
      Configures the over voltage protection voltage (in uV).
      If not specified a default of 6,5000,000 (=6.5V) is used.

  ti,in-dpm-voltage:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: |
      Configures the threshold input voltage for the dynamic power path management (in uV).
      If not specified a default of 4,360,000 (=4.36V) is used.

required:
  - compatible
  - reg
  - interrupts
  - ti,battery-regulation-voltage
  - ti,charge-current
  - ti,termination-current

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    i2c0 {
      #address-cells = <1>;
      #size-cells = <0>;

      charger@6a {
        compatible = "ti,bq24257";
        reg = <0x6a>;
        interrupt-parent = <&gpio1>;
        interrupts = <16 IRQ_TYPE_EDGE_BOTH>;

        pg-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>;

        ti,battery-regulation-voltage = <4200000>;
        ti,charge-current = <1000000>;
        ti,termination-current = <50000>;
      };
    };
  - |
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    i2c0 {
      #address-cells = <1>;
      #size-cells = <0>;

      charger@6a {
        compatible = "ti,bq24250";
        reg = <0x6a>;
        interrupt-parent = <&gpio1>;
        interrupts = <16 IRQ_TYPE_EDGE_BOTH>;

        ti,battery-regulation-voltage = <4200000>;
        ti,charge-current = <500000>;
        ti,termination-current = <50000>;
        ti,current-limit = <900000>;
        ti,ovp-voltage = <9500000>;
        ti,in-dpm-voltage = <4440000>;
      };
    };