← Documents Documentation/devicetree/bindings/regulator/da9211.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings

Dialog DA9211 계열 regulator

DA9211/DA9212/DA9213/DA9223/DA9214/DA9224/DA9215/DA9225의 BUCK 구성과 전압·전류 범위를 설명합니다.

Source pathDocumentation/devicetree/bindings/regulator/da9211.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약과 해설

da9211.txt:1-205

공통 필수 property와 mode 설정, variant별 단일·이중 BUCK 예제를 비교할 수 있습니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 * Dialog Semiconductor DA9211/DA9212/DA9213/DA9223/DA9214/DA9224/DA9215/DA9225
2 Voltage Regulator
3
4 Required properties:
5 - compatible: "dlg,da9211" or "dlg,da9212" or "dlg,da9213" or "dlg,da9223"
6 or "dlg,da9214" or "dlg,da9224" or "dlg,da9215" or "dlg,da9225"
7 - reg: I2C slave address, usually 0x68.
8 - interrupts: the interrupt outputs of the controller
9 - regulators: A node that houses a sub-node for each regulator within the
10 device. Each sub-node is identified using the node's name, with valid
11 values listed below. The content of each sub-node is defined by the
12 standard binding for regulators; see regulator.txt.
13 BUCKA and BUCKB.
14
15 Optional properties:
16 - enable-gpios: platform gpio for control of BUCKA/BUCKB.
17 - Any optional property defined in regulator.txt
18 - regulator-initial-mode and regulator-allowed-modes may be specified using
19 mode values from dt-bindings/regulator/dlg,da9211-regulator.h
20
21 Example 1) DA9211
22 pmic: da9211@68 {
23 compatible = "dlg,da9211";
24 reg = <0x68>;
25 interrupts = <3 27>;
26
27 regulators {
28 BUCKA {
29 regulator-name = "VBUCKA";
30 regulator-min-microvolt = < 300000>;
31 regulator-max-microvolt = <1570000>;
32 regulator-min-microamp = <2000000>;
33 regulator-max-microamp = <5000000>;
34 enable-gpios = <&gpio 27 0>;
35 regulator-allowed-modes = <DA9211_BUCK_MODE_SYNC
36 DA9211_BUCK_MODE_AUTO>;
37 };
38 };
39 };
40
41 Example 2) DA9212
42 pmic: da9212@68 {
43 compatible = "dlg,da9212";
44 reg = <0x68>;
45 interrupts = <3 27>;
46
47 regulators {
48 BUCKA {
49 regulator-name = "VBUCKA";
50 regulator-min-microvolt = < 300000>;
51 regulator-max-microvolt = <1570000>;
52 regulator-min-microamp = <2000000>;
53 regulator-max-microamp = <5000000>;
54 enable-gpios = <&gpio 27 0>;
55 };
56 BUCKB {
57 regulator-name = "VBUCKB";
58 regulator-min-microvolt = < 300000>;
59 regulator-max-microvolt = <1570000>;
60 regulator-min-microamp = <2000000>;
61 regulator-max-microamp = <5000000>;
62 enable-gpios = <&gpio 17 0>;
63 };
64 };
65 };
66
67 Example 3) DA9213
68 pmic: da9213@68 {
69 compatible = "dlg,da9213";
70 reg = <0x68>;
71 interrupts = <3 27>;
72
73 regulators {
74 BUCKA {
75 regulator-name = "VBUCKA";
76 regulator-min-microvolt = < 300000>;
77 regulator-max-microvolt = <1570000>;
78 regulator-min-microamp = <3000000>;
79 regulator-max-microamp = <6000000>;
80 enable-gpios = <&gpio 27 0>;
81 };
82 };
83 };
84
85 Example 4) DA9223
86 pmic: da9223@68 {
87 compatible = "dlg,da9223";
88 reg = <0x68>;
89 interrupts = <3 27>;
90
91 regulators {
92 BUCKA {
93 regulator-name = "VBUCKA";
94 regulator-min-microvolt = < 300000>;
95 regulator-max-microvolt = <1570000>;
96 regulator-min-microamp = <3000000>;
97 regulator-max-microamp = <6000000>;
98 enable-gpios = <&gpio 27 0>;
99 };
100 };
101 };
102
103 Example 5) DA9214
104 pmic: da9214@68 {
105 compatible = "dlg,da9214";
106 reg = <0x68>;
107 interrupts = <3 27>;
108
109 regulators {
110 BUCKA {
111 regulator-name = "VBUCKA";
112 regulator-min-microvolt = < 300000>;
113 regulator-max-microvolt = <1570000>;
114 regulator-min-microamp = <3000000>;
115 regulator-max-microamp = <6000000>;
116 enable-gpios = <&gpio 27 0>;
117 };
118 BUCKB {
119 regulator-name = "VBUCKB";
120 regulator-min-microvolt = < 300000>;
121 regulator-max-microvolt = <1570000>;
122 regulator-min-microamp = <3000000>;
123 regulator-max-microamp = <6000000>;
124 enable-gpios = <&gpio 17 0>;
125 };
126 };
127 };
128
129 Example 6) DA9224
130 pmic: da9224@68 {
131 compatible = "dlg,da9224";
132 reg = <0x68>;
133 interrupts = <3 27>;
134
135 regulators {
136 BUCKA {
137 regulator-name = "VBUCKA";
138 regulator-min-microvolt = < 300000>;
139 regulator-max-microvolt = <1570000>;
140 regulator-min-microamp = <3000000>;
141 regulator-max-microamp = <6000000>;
142 enable-gpios = <&gpio 27 0>;
143 };
144 BUCKB {
145 regulator-name = "VBUCKB";
146 regulator-min-microvolt = < 300000>;
147 regulator-max-microvolt = <1570000>;
148 regulator-min-microamp = <3000000>;
149 regulator-max-microamp = <6000000>;
150 enable-gpios = <&gpio 17 0>;
151 };
152 };
153 };
154
155 Example 7) DA9215
156 pmic: da9215@68 {
157 compatible = "dlg,da9215";
158 reg = <0x68>;
159 interrupts = <3 27>;
160
161 regulators {
162 BUCKA {
163 regulator-name = "VBUCKA";
164 regulator-min-microvolt = < 300000>;
165 regulator-max-microvolt = <1570000>;
166 regulator-min-microamp = <4000000>;
167 regulator-max-microamp = <7000000>;
168 enable-gpios = <&gpio 27 0>;
169 };
170 BUCKB {
171 regulator-name = "VBUCKB";
172 regulator-min-microvolt = < 300000>;
173 regulator-max-microvolt = <1570000>;
174 regulator-min-microamp = <4000000>;
175 regulator-max-microamp = <7000000>;
176 enable-gpios = <&gpio 17 0>;
177 };
178 };
179 };
180
181 Example 8) DA9225
182 pmic: da9225@68 {
183 compatible = "dlg,da9225";
184 reg = <0x68>;
185 interrupts = <3 27>;
186
187 regulators {
188 BUCKA {
189 regulator-name = "VBUCKA";
190 regulator-min-microvolt = < 300000>;
191 regulator-max-microvolt = <1570000>;
192 regulator-min-microamp = <4000000>;
193 regulator-max-microamp = <7000000>;
194 enable-gpios = <&gpio 27 0>;
195 };
196 BUCKB {
197 regulator-name = "VBUCKB";
198 regulator-min-microvolt = < 300000>;
199 regulator-max-microvolt = <1570000>;
200 regulator-min-microamp = <4000000>;
201 regulator-max-microamp = <7000000>;
202 enable-gpios = <&gpio 17 0>;
203 };
204 };
205 };
206

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

DA9211 계열 필수 property

1-14

Dialog Semiconductor DA9211, DA9212, DA9213, DA9223, DA9214, DA9224, DA9215, DA9225 voltage regulator binding입니다. `compatible`은 각각 `dlg,da9211`, `dlg,da9212`, `dlg,da9213`, `dlg,da9223`, `dlg,da9214`, `dlg,da9224`, `dlg,da9215`, `dlg,da9225` 중 chip에 맞는 값을 사용합니다.

`reg`는 보통 0x68인 I2C slave address, `interrupts`는 controller의 interrupt output입니다. `regulators` node에는 regulator마다 subnode를 두며 유효한 이름은 `BUCKA`, `BUCKB`입니다. 각 subnode는 `regulator.txt`의 standard regulator binding을 따릅니다.

GPIO와 regulator mode

15-20

선택 `enable-gpios`는 platform GPIO로 `BUCKA` 또는 `BUCKB`를 제어합니다. `regulator.txt`의 다른 선택 property도 사용할 수 있습니다. `regulator-initial-mode`와 `regulator-allowed-modes`에는 `dt-bindings/regulator/dlg,da9211-regulator.h`가 정의한 mode 값을 지정할 수 있습니다.

예제 1: DA9211

21-40

DA9211은 단일 `BUCKA`를 300,000~1,570,000 microvolt와 2,000,000~5,000,000 microamp 범위로 선언합니다. GPIO 27로 enable을 제어하고 허용 mode는 `DA9211_BUCK_MODE_SYNC`, `DA9211_BUCK_MODE_AUTO`입니다.

pmic: da9211@68 {
        compatible = "dlg,da9211";
        reg = <0x68>;
        interrupts = <3 27>;

        regulators {
                BUCKA {
                        regulator-name = "VBUCKA";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <2000000>;
                        regulator-max-microamp         = <5000000>;
                        enable-gpios = <&gpio 27 0>;
                        regulator-allowed-modes = <DA9211_BUCK_MODE_SYNC
                                                   DA9211_BUCK_MODE_AUTO>;
                };
        };
};

예제 2: DA9212

41-66

DA9212는 `BUCKA`와 `BUCKB` 두 rail을 모두 300,000~1,570,000 microvolt, 2,000,000~5,000,000 microamp로 설정합니다. Enable GPIO는 각각 27과 17입니다.

pmic: da9212@68 {
        compatible = "dlg,da9212";
        reg = <0x68>;
        interrupts = <3 27>;

        regulators {
                BUCKA {
                        regulator-name = "VBUCKA";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <2000000>;
                        regulator-max-microamp         = <5000000>;
                        enable-gpios = <&gpio 27 0>;
                };
                BUCKB {
                        regulator-name = "VBUCKB";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <2000000>;
                        regulator-max-microamp         = <5000000>;
                        enable-gpios = <&gpio 17 0>;
                };
        };
};

예제 3: DA9213

67-84

DA9213은 단일 `BUCKA`를 300,000~1,570,000 microvolt와 3,000,000~6,000,000 microamp 범위로 설정하고 GPIO 27로 enable을 제어합니다.

pmic: da9213@68 {
        compatible = "dlg,da9213";
        reg = <0x68>;
        interrupts = <3 27>;

        regulators {
                BUCKA {
                        regulator-name = "VBUCKA";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <3000000>;
                        regulator-max-microamp         = <6000000>;
                        enable-gpios = <&gpio 27 0>;
                };
        };
};

예제 4: DA9223

85-102

DA9223 예제도 단일 `BUCKA`를 300,000~1,570,000 microvolt와 3,000,000~6,000,000 microamp 범위로 설정하고 GPIO 27을 사용합니다.

pmic: da9223@68 {
        compatible = "dlg,da9223";
        reg = <0x68>;
        interrupts = <3 27>;

        regulators {
                BUCKA {
                        regulator-name = "VBUCKA";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <3000000>;
                        regulator-max-microamp         = <6000000>;
                        enable-gpios = <&gpio 27 0>;
                };
        };
};

예제 5: DA9214

103-128

DA9214는 `BUCKA`와 `BUCKB`를 각각 300,000~1,570,000 microvolt, 3,000,000~6,000,000 microamp로 설정합니다. Enable GPIO는 A가 27, B가 17입니다.

pmic: da9214@68 {
        compatible = "dlg,da9214";
        reg = <0x68>;
        interrupts = <3 27>;

        regulators {
                BUCKA {
                        regulator-name = "VBUCKA";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <3000000>;
                        regulator-max-microamp         = <6000000>;
                        enable-gpios = <&gpio 27 0>;
                };
                BUCKB {
                        regulator-name = "VBUCKB";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <3000000>;
                        regulator-max-microamp         = <6000000>;
                        enable-gpios = <&gpio 17 0>;
                };
        };
};

예제 6: DA9224

129-154

DA9224 역시 두 BUCK rail을 300,000~1,570,000 microvolt와 3,000,000~6,000,000 microamp 범위로 선언하며 GPIO 27과 17을 사용합니다.

pmic: da9224@68 {
        compatible = "dlg,da9224";
        reg = <0x68>;
        interrupts = <3 27>;

        regulators {
                BUCKA {
                        regulator-name = "VBUCKA";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <3000000>;
                        regulator-max-microamp         = <6000000>;
                        enable-gpios = <&gpio 27 0>;
                };
                BUCKB {
                        regulator-name = "VBUCKB";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <3000000>;
                        regulator-max-microamp         = <6000000>;
                        enable-gpios = <&gpio 17 0>;
                };
        };
};

예제 7: DA9215

155-180

DA9215의 `BUCKA`, `BUCKB`는 300,000~1,570,000 microvolt와 4,000,000~7,000,000 microamp 범위를 사용합니다. Enable GPIO는 각각 27과 17입니다.

pmic: da9215@68 {
        compatible = "dlg,da9215";
        reg = <0x68>;
        interrupts = <3 27>;

        regulators {
                BUCKA {
                        regulator-name = "VBUCKA";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <4000000>;
                        regulator-max-microamp         = <7000000>;
                        enable-gpios = <&gpio 27 0>;
                };
                BUCKB {
                        regulator-name = "VBUCKB";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <4000000>;
                        regulator-max-microamp         = <7000000>;
                        enable-gpios = <&gpio 17 0>;
                };
        };
};

예제 8: DA9225

181-205

DA9225도 두 BUCK rail을 300,000~1,570,000 microvolt, 4,000,000~7,000,000 microamp로 설정하고 GPIO 27과 17로 enable을 제어합니다.

pmic: da9225@68 {
        compatible = "dlg,da9225";
        reg = <0x68>;
        interrupts = <3 27>;

        regulators {
                BUCKA {
                        regulator-name = "VBUCKA";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <4000000>;
                        regulator-max-microamp         = <7000000>;
                        enable-gpios = <&gpio 27 0>;
                };
                BUCKB {
                        regulator-name = "VBUCKB";
                        regulator-min-microvolt = < 300000>;
                        regulator-max-microvolt = <1570000>;
                        regulator-min-microamp         = <4000000>;
                        regulator-max-microamp         = <7000000>;
                        enable-gpios = <&gpio 17 0>;
                };
        };
};