xref: /freebsd/sys/contrib/device-tree/Bindings/power/supply/bq256xx.yaml (revision a8089ea5aee578e08acab2438e82fc9a9ae50ed8)
1# SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause)
2# Copyright (C) 2020 Texas Instruments Incorporated
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/power/supply/bq256xx.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: TI bq256xx Switch Mode Buck Charger
9
10maintainers:
11  - Andrew Davis <afd@ti.com>
12
13description: |
14  The bq256xx devices are a family of highly-integrated battery charge
15  management and system power management ICs for single cell Li-ion and Li-
16  polymer batteries.
17
18  Datasheets:
19    - https://www.ti.com/lit/ds/symlink/bq25600.pdf
20    - https://www.ti.com/lit/ds/symlink/bq25601.pdf
21    - https://www.ti.com/lit/ds/symlink/bq25600d.pdf
22    - https://www.ti.com/lit/ds/symlink/bq25601d.pdf
23    - https://www.ti.com/lit/ds/symlink/bq25611d.pdf
24    - https://www.ti.com/lit/ds/symlink/bq25618.pdf
25    - https://www.ti.com/lit/ds/symlink/bq25619.pdf
26
27properties:
28  compatible:
29    enum:
30      - ti,bq25600
31      - ti,bq25601
32      - ti,bq25600d
33      - ti,bq25601d
34      - ti,bq25611d
35      - ti,bq25618
36      - ti,bq25619
37
38  reg:
39    maxItems: 1
40
41  ti,watchdog-timeout-ms:
42    default: 0
43    description: |
44      Watchdog timer in ms. 0 (default) disables the watchdog
45    minimum: 0
46    maximum: 160000
47    enum: [ 0, 40000, 80000, 160000]
48
49  input-voltage-limit-microvolt:
50    description: |
51       Minimum input voltage limit in µV with a 100000 µV step
52    minimum: 3900000
53    maximum: 5400000
54
55  input-current-limit-microamp:
56    description: |
57       Maximum input current limit in µA with a 100000 µA step
58    minimum: 100000
59    maximum: 3200000
60
61  monitored-battery:
62    $ref: /schemas/types.yaml#/definitions/phandle
63    description: phandle to the battery node being monitored
64
65  interrupts:
66    maxItems: 1
67    description: |
68      Interrupt sends an active low, 256 μs pulse to host to report the charger
69      device status and faults.
70
71  ti,no-thermistor:
72    type: boolean
73    description: Indicates that no thermistor is connected to the TS pin
74
75required:
76  - compatible
77  - reg
78  - monitored-battery
79
80allOf:
81  - if:
82      properties:
83        compatible:
84          contains:
85            enum:
86              - ti,bq25600
87              - ti,bq25601
88              - ti,bq25600d
89              - ti,bq25601d
90    then:
91      properties:
92        ti,no-thermistor: false
93
94additionalProperties: false
95
96examples:
97  - |
98    bat: battery {
99      compatible = "simple-battery";
100      constant-charge-current-max-microamp = <2040000>;
101      constant-charge-voltage-max-microvolt = <4352000>;
102      precharge-current-microamp = <180000>;
103      charge-term-current-microamp = <180000>;
104    };
105    #include <dt-bindings/gpio/gpio.h>
106    #include <dt-bindings/interrupt-controller/irq.h>
107    i2c {
108
109      clock-frequency = <400000>;
110
111      #address-cells = <1>;
112      #size-cells = <0>;
113
114      charger@6b {
115        compatible = "ti,bq25601";
116        reg = <0x6b>;
117        monitored-battery = <&bat>;
118
119        interrupt-parent = <&gpio1>;
120        interrupts = <16 IRQ_TYPE_EDGE_FALLING>;
121        ti,watchdog-timeout-ms = <40000>;
122
123        input-voltage-limit-microvolt = <4500000>;
124        input-current-limit-microamp = <2400000>;
125       };
126    };
127...
128