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

Linux 6.18.37 · Devicetree Bindings

TI LM363x regulator

TI LM363x regulator의 regulator 이름, 공급 입력, 전압 범위와 예제를 설명합니다.

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

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

1. 요약·해설

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

요약과 해설

lm363x-regulator.txt:1-108

Chip별 regulator 구조와 실제 device-tree property를 원문 예제와 함께 설명합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 TI LMU LM363x regulator device tree bindings
2
3 LM363x regulator driver supports LM3631 and LM3632.
4 LM3631 has five regulators and LM3632 supports three regulators.
5
6 Required property:
7 - compatible: "ti,lm363x-regulator"
8
9 Optional properties:
10 LM3632 has external enable pins for two LDOs.
11 - enable-gpios: Two GPIO specifiers for Vpos and Vneg control pins.
12 The first entry is Vpos, the second is Vneg enable pin.
13
14 Child nodes:
15 LM3631
16 - vboost
17 - vcont
18 - voref
19 - vpos
20 - vneg
21
22 LM3632
23 - vboost
24 - vpos
25 - vneg
26
27 Optional properties of a child node:
28 Each sub-node should contain the constraints and initialization.
29 Please refer to [1].
30
31 Examples: Please refer to ti-lmu dt-bindings [2].
32
33 lm3631@29 {
34 compatible = "ti,lm3631";
35 reg = <0x29>;
36
37 regulators {
38 compatible = "ti,lm363x-regulator";
39
40 vboost {
41 regulator-name = "lcd_boost";
42 regulator-min-microvolt = <4500000>;
43 regulator-max-microvolt = <6350000>;
44 regulator-always-on;
45 };
46
47 vcont {
48 regulator-name = "lcd_vcont";
49 regulator-min-microvolt = <1800000>;
50 regulator-max-microvolt = <3300000>;
51 };
52
53 voref {
54 regulator-name = "lcd_voref";
55 regulator-min-microvolt = <4000000>;
56 regulator-max-microvolt = <6000000>;
57 };
58
59 vpos {
60 regulator-name = "lcd_vpos";
61 regulator-min-microvolt = <4000000>;
62 regulator-max-microvolt = <6000000>;
63 regulator-boot-on;
64 };
65
66 vneg {
67 regulator-name = "lcd_vneg";
68 regulator-min-microvolt = <4000000>;
69 regulator-max-microvolt = <6000000>;
70 regulator-boot-on;
71 };
72 };
73 };
74
75 lm3632@11 {
76 compatible = "ti,lm3632";
77 reg = <0x11>;
78
79 regulators {
80 compatible = "ti,lm363x-regulator";
81
82 /* GPIO1_16 for Vpos, GPIO1_28 is for Vneg */
83 enable-gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>,
84 <&gpio1 28 GPIO_ACTIVE_HIGH>;
85
86 vboost {
87 regulator-name = "lcd_boost";
88 regulator-min-microvolt = <4500000>;
89 regulator-max-microvolt = <6400000>;
90 regulator-always-on;
91 };
92
93 vpos {
94 regulator-name = "lcd_vpos";
95 regulator-min-microvolt = <4000000>;
96 regulator-max-microvolt = <6000000>;
97 };
98
99 vneg {
100 regulator-name = "lcd_vneg";
101 regulator-min-microvolt = <4000000>;
102 regulator-max-microvolt = <6000000>;
103 };
104 };
105 };
106
107 [1] ../regulator/regulator.txt
108 [2] ../mfd/ti-lmu.txt
109

3. 한국어 전문 번역

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

LM3631과 LM3632

1-5

TI LMU LM363x regulator driver는 LM3631과 LM3632를 지원합니다. LM3631에는 regulator 5개, LM3632에는 regulator 3개가 있습니다.

Compatible과 외부 enable GPIO

6-13

필수 `compatible`은 `ti,lm363x-regulator`입니다. LM3632의 선택 `enable-gpios`에는 두 LDO의 external enable pin을 순서대로 지정하며 첫 번째 specifier는 Vpos, 두 번째는 Vneg입니다.

지원 child node

14-30

LM3631 child는 `vboost`, `vcont`, `voref`, `vpos`, `vneg`입니다. LM3632 child는 `vboost`, `vpos`, `vneg`입니다. 각 subnode에는 constraint와 initialization 정보를 넣으며 표준 선택 property는 참조 문서 [1]을 따릅니다.

LM3631 예제

31-74

I2C address 0x29의 LM3631 예제는 `vboost`를 4,500,000~6,350,000 microvolt always-on으로 설정합니다. `vcont`는 1,800,000~3,300,000, `voref`, `vpos`, `vneg`는 4,000,000~6,000,000 microvolt이며 `vpos`와 `vneg`는 boot-on입니다.

lm3631@29 {
        compatible = "ti,lm3631";
        reg = <0x29>;

        regulators {
                compatible = "ti,lm363x-regulator";

                vboost {
                        regulator-name = "lcd_boost";
                        regulator-min-microvolt = <4500000>;
                        regulator-max-microvolt = <6350000>;
                        regulator-always-on;
                };

                vcont {
                        regulator-name = "lcd_vcont";
                        regulator-min-microvolt = <1800000>;
                        regulator-max-microvolt = <3300000>;
                };

                voref {
                        regulator-name = "lcd_voref";
                        regulator-min-microvolt = <4000000>;
                        regulator-max-microvolt = <6000000>;
                };

                vpos {
                        regulator-name = "lcd_vpos";
                        regulator-min-microvolt = <4000000>;
                        regulator-max-microvolt = <6000000>;
                        regulator-boot-on;
                };

                vneg {
                        regulator-name = "lcd_vneg";
                        regulator-min-microvolt = <4000000>;
                        regulator-max-microvolt = <6000000>;
                        regulator-boot-on;
                };
        };
};

LM3632 예제

75-105

I2C address 0x11의 LM3632 예제는 GPIO1_16을 Vpos, GPIO1_28을 Vneg enable pin으로 지정합니다. `vboost`는 4,500,000~6,400,000 microvolt always-on이고 `vpos`, `vneg`는 4,000,000~6,000,000 microvolt입니다.

lm3632@11 {
        compatible = "ti,lm3632";
        reg = <0x11>;

        regulators {
                compatible = "ti,lm363x-regulator";

                /* GPIO1_16 for Vpos, GPIO1_28 is for Vneg */
                enable-gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>,
                                <&gpio1 28 GPIO_ACTIVE_HIGH>;

                vboost {
                        regulator-name = "lcd_boost";
                        regulator-min-microvolt = <4500000>;
                        regulator-max-microvolt = <6400000>;
                        regulator-always-on;
                };

                vpos {
                        regulator-name = "lcd_vpos";
                        regulator-min-microvolt = <4000000>;
                        regulator-max-microvolt = <6000000>;
                };

                vneg {
                        regulator-name = "lcd_vneg";
                        regulator-min-microvolt = <4000000>;
                        regulator-max-microvolt = <6000000>;
                };
        };
};

참조 binding

106-108

표준 regulator property는 `[1] ../regulator/regulator.txt`, TI LMU 전체 binding은 `[2] ../mfd/ti-lmu.txt`를 참조합니다.