1# SPDX-License-Identifier: GPL-2.0
2# Copyright (C) 2021 Sebastian Reichel
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/power/supply/bq24735.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Binding for TI BQ24735 Li-Ion Battery Charger
9
10maintainers:
11  - Sebastian Reichel <sre@kernel.org>
12
13allOf:
14  - $ref: power-supply.yaml#
15
16properties:
17  compatible:
18    const: ti,bq24735
19
20  reg:
21    maxItems: 1
22
23  interrupts:
24    description: AC adapter plug event interrupt
25    maxItems: 1
26
27  ti,ac-detect-gpios:
28    maxItems: 1
29    description: |
30      This GPIO is optionally used to read the AC adapter status. This is a Host GPIO
31      that is configured as an input and connected to the ACOK pin on the bq24735.
32      Note: for backwards compatibility reasons, the GPIO must be active on AC adapter
33      absence despite ACOK being active (high) on AC adapter presence.
34
35  ti,charge-current:
36    $ref: /schemas/types.yaml#/definitions/uint32
37    description: |
38      Used to control and set the charging current.
39      This value must be between 128mA and 8.128A with a 64mA step resolution.
40      The POR value is 0x0000h. This number is in mA (e.g. 8192).
41      See spec for more information about the ChargeCurrent (0x14h) register.
42
43  ti,charge-voltage:
44    $ref: /schemas/types.yaml#/definitions/uint32
45    description: |
46      Used to control and set the charging voltage.
47      This value must be between 1.024V and 19.2V with a 16mV step resolution.
48      The POR value is 0x0000h. This number is in mV (e.g. 19200).
49      See spec for more information about the ChargeVoltage (0x15h) register.
50
51  ti,input-current:
52    $ref: /schemas/types.yaml#/definitions/uint32
53    description: |
54      Used to control and set the charger input current.
55      This value must be between 128mA and 8.064A with a 128mA step resolution.
56      The POR value is 0x1000h. This number is in mA (e.g. 8064).
57      See the spec for more information about the InputCurrent (0x3fh) register.
58
59  ti,external-control:
60    type: boolean
61    description: |
62      Indicates that the charger is configured externally and that the host should not
63      attempt to enable/disable charging or set the charge voltage/current.
64
65  poll-interval:
66    $ref: /schemas/types.yaml#/definitions/uint32
67    description: |
68      If 'interrupts' is not specified, poll AC adapter presence with this interval (milliseconds).
69
70required:
71  - compatible
72  - reg
73
74additionalProperties: false
75
76examples:
77  - |
78    #include <dt-bindings/gpio/gpio.h>
79
80    i2c0 {
81      #address-cells = <1>;
82      #size-cells = <0>;
83
84      charger@9 {
85        compatible = "ti,bq24735";
86        reg = <0x9>;
87        ti,ac-detect-gpios = <&gpio 72 0x1>;
88      };
89    };
90