1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/qcom-labibb-regulator.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm's LAB(LCD AMOLED Boost)/IBB(Inverting Buck Boost) Regulator
8
9maintainers:
10  - Sumit Semwal <sumit.semwal@linaro.org>
11
12description:
13  LAB can be used as a positive boost power supply and IBB can be used as a
14  negative boost power supply for display panels. Currently implemented for
15  pmi8998.
16
17properties:
18  compatible:
19    const: qcom,pmi8998-lab-ibb
20
21  lab:
22    type: object
23    $ref: regulator.yaml#
24    unevaluatedProperties: false
25
26    properties:
27      qcom,soft-start-us:
28        description: Regulator soft start time in microseconds.
29        enum: [200, 400, 600, 800]
30        default: 200
31
32      interrupts:
33        minItems: 1
34        maxItems: 2
35        description:
36          Short-circuit and over-current interrupts for lab.
37
38      interrupt-names:
39        minItems: 1
40        items:
41          - const: sc-err
42          - const: ocp
43
44    required:
45      - interrupts
46      - interrupt-names
47
48  ibb:
49    type: object
50    $ref: regulator.yaml#
51    unevaluatedProperties: false
52
53    properties:
54      qcom,discharge-resistor-kohms:
55        $ref: /schemas/types.yaml#/definitions/uint32
56        description: Discharge resistor value in KiloOhms.
57        enum: [300, 64, 32, 16]
58        default: 300
59
60      interrupts:
61        minItems: 1
62        maxItems: 2
63        description:
64          Short-circuit and over-current interrupts for ibb.
65
66      interrupt-names:
67        minItems: 1
68        items:
69          - const: sc-err
70          - const: ocp
71
72    required:
73      - interrupts
74      - interrupt-names
75
76required:
77  - compatible
78
79additionalProperties: false
80
81examples:
82  - |
83    #include <dt-bindings/interrupt-controller/irq.h>
84
85    labibb {
86      compatible = "qcom,pmi8998-lab-ibb";
87
88      lab {
89        interrupts = <0x3 0xde 0x1 IRQ_TYPE_EDGE_RISING>,
90                     <0x3 0xde 0x0 IRQ_TYPE_LEVEL_LOW>;
91        interrupt-names = "sc-err", "ocp";
92      };
93
94      ibb {
95        interrupts = <0x3 0xdc 0x2 IRQ_TYPE_EDGE_RISING>,
96                     <0x3 0xdc 0x0 IRQ_TYPE_LEVEL_LOW>;
97        interrupt-names = "sc-err", "ocp";
98      };
99    };
100
101...
102