xref: /freebsd/sys/contrib/device-tree/Bindings/mfd/dlg,da9063.yaml (revision b97ee269eae3cbaf35c18f51a459aea581c2a7dc)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mfd/dlg,da9063.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Dialog DA9063/DA9063L Power Management Integrated Circuit (PMIC)
8
9maintainers:
10  - Steve Twiss <stwiss.opensource@diasemi.com>
11
12description: |
13  For device-tree bindings of other sub-modules refer to the binding documents
14  under the respective sub-system directories.
15
16properties:
17  compatible:
18    enum:
19      - dlg,da9063
20      - dlg,da9063l
21
22  reg:
23    maxItems: 1
24
25  interrupts:
26    maxItems: 1
27
28  interrupt-controller: true
29
30  "#interrupt-cells":
31    const: 2
32
33  dlg,use-sw-pm:
34    type: boolean
35    description:
36      Disable the watchdog during suspend.
37      Only use this option if you can't use the watchdog automatic suspend
38      function during a suspend (see register CONTROL_B).
39
40  watchdog:
41    type: object
42    $ref: /schemas/watchdog/watchdog.yaml#
43    unevaluatedProperties: false
44    properties:
45      compatible:
46        const: dlg,da9063-watchdog
47
48  rtc:
49    type: object
50    $ref: /schemas/rtc/rtc.yaml#
51    unevaluatedProperties: false
52    properties:
53      compatible:
54        const: dlg,da9063-rtc
55
56  onkey:
57    type: object
58    $ref: /schemas/input/input.yaml#
59    unevaluatedProperties: false
60    properties:
61      compatible:
62        const: dlg,da9063-onkey
63
64      dlg,disable-key-power:
65        type: boolean
66        description: |
67          Disable power-down using a long key-press.
68          If this entry does not exist then by default the key-press triggered
69          power down is enabled and the OnKey will support both KEY_POWER and
70          KEY_SLEEP.
71
72  regulators:
73    type: object
74    patternProperties:
75      "^(ldo[1-11]|bcore[1-2]|bpro|bmem|bio|bperi)$":
76        $ref: /schemas/regulator/regulator.yaml
77        unevaluatedProperties: false
78
79required:
80  - compatible
81  - reg
82  - interrupts
83  - interrupt-controller
84
85additionalProperties: false
86
87examples:
88  - |
89    #include <dt-bindings/interrupt-controller/irq.h>
90    i2c {
91      #address-cells = <1>;
92      #size-cells = <0>;
93      pmic@58 {
94        compatible = "dlg,da9063";
95        reg = <0x58>;
96        #interrupt-cells = <2>;
97        interrupt-parent = <&gpio6>;
98        interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
99        interrupt-controller;
100
101        rtc {
102          compatible = "dlg,da9063-rtc";
103        };
104
105        watchdog {
106          compatible = "dlg,da9063-watchdog";
107        };
108
109        onkey {
110          compatible = "dlg,da9063-onkey";
111          dlg,disable-key-power;
112        };
113
114        regulators {
115          regulator-bcore1 {
116            regulator-name = "BCORE1";
117            regulator-min-microvolt = <300000>;
118            regulator-max-microvolt = <1570000>;
119            regulator-min-microamp = <500000>;
120            regulator-max-microamp = <2000000>;
121            regulator-boot-on;
122          };
123          regulator-ldo11 {
124            regulator-name = "LDO_11";
125            regulator-min-microvolt = <900000>;
126            regulator-max-microvolt = <3600000>;
127            regulator-boot-on;
128          };
129        };
130      };
131    };
132...
133