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

Linux 6.18.37 · Devicetree Bindings

AMS AS3722 regulator

AMS AS3722 regulator의 supply, voltage constraint와 제어 property를 설명합니다.

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

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

1. 요약·해설

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

요약과 해설

as3722-regulator.txt:1-91

PMIC regulator rail의 입력 공급, 전압 범위와 실제 device-tree 구성을 함께 설명합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 Regulator of AMS AS3722 PMIC.
2 Name of the regulator subnode must be "regulators".
3
4 Optional properties:
5 --------------------
6 The input supply of regulators are the optional properties on the
7 regulator node. The AS3722 is having 7 DCDC step-down regulators as
8 sd[0-6], 10 LDOs as ldo[0-7], ldo[9-11]. The input supply of these
9 regulators are provided through following properties:
10 vsup-sd2-supply: Input supply for SD2.
11 vsup-sd3-supply: Input supply for SD3.
12 vsup-sd4-supply: Input supply for SD4.
13 vsup-sd5-supply: Input supply for SD5.
14 vin-ldo0-supply: Input supply for LDO0.
15 vin-ldo1-6-supply: Input supply for LDO1 and LDO6.
16 vin-ldo2-5-7-supply: Input supply for LDO2, LDO5 and LDO7.
17 vin-ldo3-4-supply: Input supply for LDO3 and LDO4.
18 vin-ldo9-10-supply: Input supply for LDO9 and LDO10.
19 vin-ldo11-supply: Input supply for LDO11.
20
21 Optional nodes:
22 --------------
23 - regulators : Must contain a sub-node per regulator from the list below.
24 Each sub-node should contain the constraints and initialization
25 information for that regulator. See regulator.txt for a
26 description of standard properties for these sub-nodes.
27 Additional custom properties are listed below.
28 sd[0-6], ldo[0-7], ldo[9-11].
29
30 Optional sub-node properties:
31 ----------------------------
32 ams,ext-control: External control of the rail. The option of
33 this properties will tell which external input is
34 controlling this rail. Valid values are 0, 1, 2 ad 3.
35 0: There is no external control of this rail.
36 1: Rail is controlled by ENABLE1 input pin.
37 2: Rail is controlled by ENABLE2 input pin.
38 3: Rail is controlled by ENABLE3 input pin.
39 ams,enable-tracking: Enable tracking with SD1, only supported
40 by LDO3.
41
42 Example:
43 -------
44 ams3722: ams3722 {
45 compatible = "ams,as3722";
46 reg = <0x40>;
47 ...
48
49 regulators {
50 vsup-sd2-supply = <...>;
51 ...
52
53 sd0 {
54 regulator-name = "vdd_cpu";
55 regulator-min-microvolt = <700000>;
56 regulator-max-microvolt = <1400000>;
57 regulator-always-on;
58 ams,ext-control = <2>;
59 };
60
61 sd1 {
62 regulator-name = "vdd_core";
63 regulator-min-microvolt = <700000>;
64 regulator-max-microvolt = <1400000>;
65 regulator-always-on;
66 ams,ext-control = <1>;
67 };
68
69 sd2 {
70 regulator-name = "vddio_ddr";
71 regulator-min-microvolt = <1350000>;
72 regulator-max-microvolt = <1350000>;
73 regulator-always-on;
74 };
75
76 sd4 {
77 regulator-name = "avdd-hdmi-pex";
78 regulator-min-microvolt = <1050000>;
79 regulator-max-microvolt = <1050000>;
80 regulator-always-on;
81 };
82
83 sd5 {
84 regulator-name = "vdd-1v8";
85 regulator-min-microvolt = <1800000>;
86 regulator-max-microvolt = <1800000>;
87 regulator-always-on;
88 };
89 ....
90 };
91 };
92

3. 한국어 전문 번역

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

AS3722 regulator 구성

1-3

AMS AS3722 PMIC의 regulator subnode 이름은 반드시 `regulators`여야 합니다.

선택 입력 supply

4-20

AS3722에는 7개의 DCDC step-down regulator `sd[0-6]`와 10개의 LDO `ldo[0-7]`, `ldo[9-11]`이 있습니다. Regulator node에서 각 입력 supply를 선택적으로 연결할 수 있습니다.

`vsup-sd2-supply`, `vsup-sd3-supply`, `vsup-sd4-supply`, `vsup-sd5-supply`는 각각 SD2~SD5 입력입니다. `vin-ldo0-supply`는 LDO0, `vin-ldo1-6-supply`는 LDO1·LDO6, `vin-ldo2-5-7-supply`는 LDO2·LDO5·LDO7, `vin-ldo3-4-supply`는 LDO3·LDO4, `vin-ldo9-10-supply`는 LDO9·LDO10, `vin-ldo11-supply`는 LDO11 입력입니다.

Regulator subnode

21-29

`regulators` node에는 `sd[0-6]`, `ldo[0-7]`, `ldo[9-11]` 중 사용하는 regulator마다 subnode를 둡니다. 각 subnode에는 해당 rail의 constraint와 초기화 정보를 기록하며 표준 property는 `regulator.txt`를 따릅니다. AS3722 전용 선택 property는 다음 구간에 정의됩니다.

외부 제어와 tracking

30-41

`ams,ext-control`은 rail을 제어할 external input을 지정합니다. 값 0은 외부 제어 없음, 1은 `ENABLE1`, 2는 `ENABLE2`, 3은 `ENABLE3` input pin 제어를 뜻합니다. `ams,enable-tracking`은 SD1과의 tracking을 활성화하며 LDO3에서만 지원됩니다.

원문 34행의 `2 ad 3`은 `2 and 3`의 오탈자로 보입니다. 접힌 영어 원문은 그대로 보존하고 번역에서는 나열된 네 값을 기준으로 설명합니다.

AS3722 예제

42-91

I2C address 0x40의 예제는 SD2 supply를 연결하고 SD0·SD1을 각각 `ENABLE2`·`ENABLE1`로 외부 제어합니다. SD0과 SD1은 700,000~1,400,000 microvolt, SD2는 1,350,000 microvolt, SD4는 1,050,000 microvolt, SD5는 1,800,000 microvolt로 설정되며 모두 always-on입니다.

ams3722: ams3722 {
        compatible = "ams,as3722";
        reg = <0x40>;
        ...

        regulators {
                vsup-sd2-supply = <...>;
                ...

                sd0 {
                        regulator-name = "vdd_cpu";
                        regulator-min-microvolt = <700000>;
                        regulator-max-microvolt = <1400000>;
                        regulator-always-on;
                        ams,ext-control = <2>;
                };

                sd1 {
                        regulator-name = "vdd_core";
                        regulator-min-microvolt = <700000>;
                        regulator-max-microvolt = <1400000>;
                        regulator-always-on;
                        ams,ext-control = <1>;
                };

                sd2 {
                        regulator-name = "vddio_ddr";
                        regulator-min-microvolt = <1350000>;
                        regulator-max-microvolt = <1350000>;
                        regulator-always-on;
                };

                sd4 {
                        regulator-name = "avdd-hdmi-pex";
                        regulator-min-microvolt = <1050000>;
                        regulator-max-microvolt = <1050000>;
                        regulator-always-on;
                };

                sd5 {
                        regulator-name = "vdd-1v8";
                        regulator-min-microvolt = <1800000>;
                        regulator-max-microvolt = <1800000>;
                        regulator-always-on;
                };
                ....
        };
};