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/bq24190.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: TI BQ2419x Li-Ion Battery Charger
9
10maintainers:
11  - Sebastian Reichel <sre@kernel.org>
12
13allOf:
14  - $ref: power-supply.yaml#
15
16properties:
17  compatible:
18    enum:
19      - ti,bq24190
20      - ti,bq24192
21      - ti,bq24192i
22      - ti,bq24196
23      - ti,bq24296
24
25  reg:
26    maxItems: 1
27
28  interrupts:
29    maxItems: 1
30
31  usb-otg-vbus:
32    $ref: /schemas/regulator/regulator.yaml#
33    description: |
34      Regulator that is used to control the VBUS voltage direction for
35      either USB host mode or for charging on the OTG port
36
37  ti,system-minimum-microvolt:
38    description: |
39      when power is connected and the battery is below minimum system voltage,
40      the system will be regulated above this setting.
41
42  omit-battery-class:
43    type: boolean
44    description: |
45      If this property is set, the operating system does not try to create a
46      battery device.
47
48  monitored-battery:
49    $ref: /schemas/types.yaml#/definitions/phandle
50    description: |
51      phandle to a "simple-battery" compatible node.
52
53      This property must be a phandle to a node using the format described
54      in battery.yaml, with the following properties being required:
55      - precharge-current-microamp: maximum charge current during precharge phase
56                                    (typically 20% of battery capacity).
57      - charge-term-current-microamp: a charge cycle terminates when the battery voltage is
58                                      above recharge threshold, and the current is below this
59                                      setting (typically 10% of battery capacity).
60
61required:
62  - compatible
63  - reg
64  - interrupts
65
66additionalProperties: false
67
68examples:
69  - |
70    #include <dt-bindings/gpio/gpio.h>
71    #include <dt-bindings/interrupt-controller/irq.h>
72
73    bat: battery {
74      compatible = "simple-battery";
75      precharge-current-microamp = <256000>;
76      charge-term-current-microamp = <128000>;
77    };
78
79    i2c {
80      #address-cells = <1>;
81      #size-cells = <0>;
82
83      charger@6a {
84        compatible = "ti,bq24190";
85        reg = <0x6a>;
86        interrupt-parent = <&gpiochip>;
87        interrupts = <10 IRQ_TYPE_EDGE_FALLING>;
88        monitored-battery = <&bat>;
89        ti,system-minimum-microvolt = <3200000>;
90
91        usb_otg_vbus: usb-otg-vbus { };
92      };
93    };
94