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