xref: /linux/Documentation/devicetree/bindings/power/supply/qcom,pm8916-bms-vm.yaml (revision 0ea5c948cb64bab5bc7a5516774eb8536f05aa0d)
1*7f590e38SNikita Travkin# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*7f590e38SNikita Travkin%YAML 1.2
3*7f590e38SNikita Travkin---
4*7f590e38SNikita Travkin$id: http://devicetree.org/schemas/power/supply/qcom,pm8916-bms-vm.yaml#
5*7f590e38SNikita Travkin$schema: http://devicetree.org/meta-schemas/core.yaml#
6*7f590e38SNikita Travkin
7*7f590e38SNikita Travkintitle: Qualcomm Voltage Mode BMS
8*7f590e38SNikita Travkin
9*7f590e38SNikita Travkinmaintainers:
10*7f590e38SNikita Travkin  - Nikita Travkin <nikita@trvn.ru>
11*7f590e38SNikita Travkin
12*7f590e38SNikita Travkindescription:
13*7f590e38SNikita Travkin  Voltage Mode BMS is a hardware block found in some Qualcomm PMICs
14*7f590e38SNikita Travkin  such as pm8916. This block performs battery voltage monitoring.
15*7f590e38SNikita Travkin
16*7f590e38SNikita TravkinallOf:
17*7f590e38SNikita Travkin  - $ref: power-supply.yaml#
18*7f590e38SNikita Travkin
19*7f590e38SNikita Travkinproperties:
20*7f590e38SNikita Travkin  compatible:
21*7f590e38SNikita Travkin    const: qcom,pm8916-bms-vm
22*7f590e38SNikita Travkin
23*7f590e38SNikita Travkin  reg:
24*7f590e38SNikita Travkin    maxItems: 1
25*7f590e38SNikita Travkin
26*7f590e38SNikita Travkin  interrupts:
27*7f590e38SNikita Travkin    items:
28*7f590e38SNikita Travkin      - description: BMS FSM left S3 mode
29*7f590e38SNikita Travkin      - description: BMS FSM entered S2 mode
30*7f590e38SNikita Travkin      - description: OCV measured in S3 mode
31*7f590e38SNikita Travkin      - description: OCV below threshold
32*7f590e38SNikita Travkin      - description: FIFO update done
33*7f590e38SNikita Travkin      - description: BMS FSM switched state
34*7f590e38SNikita Travkin
35*7f590e38SNikita Travkin  interrupt-names:
36*7f590e38SNikita Travkin    items:
37*7f590e38SNikita Travkin      - const: cv_leave
38*7f590e38SNikita Travkin      - const: cv_enter
39*7f590e38SNikita Travkin      - const: ocv_good
40*7f590e38SNikita Travkin      - const: ocv_thr
41*7f590e38SNikita Travkin      - const: fifo
42*7f590e38SNikita Travkin      - const: state_chg
43*7f590e38SNikita Travkin
44*7f590e38SNikita Travkin  monitored-battery: true
45*7f590e38SNikita Travkin
46*7f590e38SNikita Travkin  power-supplies: true
47*7f590e38SNikita Travkin
48*7f590e38SNikita Travkinrequired:
49*7f590e38SNikita Travkin  - compatible
50*7f590e38SNikita Travkin  - reg
51*7f590e38SNikita Travkin  - interrupts
52*7f590e38SNikita Travkin  - interrupt-names
53*7f590e38SNikita Travkin  - monitored-battery
54*7f590e38SNikita Travkin
55*7f590e38SNikita TravkinadditionalProperties: false
56*7f590e38SNikita Travkin
57*7f590e38SNikita Travkinexamples:
58*7f590e38SNikita Travkin  - |
59*7f590e38SNikita Travkin    #include <dt-bindings/interrupt-controller/irq.h>
60*7f590e38SNikita Travkin    pmic {
61*7f590e38SNikita Travkin      #address-cells = <1>;
62*7f590e38SNikita Travkin      #size-cells = <0>;
63*7f590e38SNikita Travkin
64*7f590e38SNikita Travkin      battery@4000 {
65*7f590e38SNikita Travkin        compatible = "qcom,pm8916-bms-vm";
66*7f590e38SNikita Travkin        reg = <0x4000>;
67*7f590e38SNikita Travkin        interrupts = <0x0 0x40 0 IRQ_TYPE_EDGE_RISING>,
68*7f590e38SNikita Travkin                     <0x0 0x40 1 IRQ_TYPE_EDGE_RISING>,
69*7f590e38SNikita Travkin                     <0x0 0x40 2 IRQ_TYPE_EDGE_RISING>,
70*7f590e38SNikita Travkin                     <0x0 0x40 3 IRQ_TYPE_EDGE_RISING>,
71*7f590e38SNikita Travkin                     <0x0 0x40 4 IRQ_TYPE_EDGE_RISING>,
72*7f590e38SNikita Travkin                     <0x0 0x40 5 IRQ_TYPE_EDGE_RISING>;
73*7f590e38SNikita Travkin        interrupt-names = "cv_leave",
74*7f590e38SNikita Travkin                          "cv_enter",
75*7f590e38SNikita Travkin                          "ocv_good",
76*7f590e38SNikita Travkin                          "ocv_thr",
77*7f590e38SNikita Travkin                          "fifo",
78*7f590e38SNikita Travkin                          "state_chg";
79*7f590e38SNikita Travkin
80*7f590e38SNikita Travkin        monitored-battery = <&battery>;
81*7f590e38SNikita Travkin        power-supplies = <&pm8916_charger>;
82*7f590e38SNikita Travkin      };
83*7f590e38SNikita Travkin    };
84