← Documents Documentation/devicetree/bindings/thermal/max77620_thermal.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings / Thermal

MAX77620 PMIC Thermal

MAX77620의 고정 120°C·140°C die alarm과 cooling map을 설명합니다.

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

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

1. 요약·해설

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

요약과 해설

max77620_thermal.txt:1-70

MAX77620의 고정 120°C·140°C die alarm과 cooling map을 설명합니다. 접을 수 있는 영어 원문 전체는 줄 좌표를 보존하고, 한국어 전문 번역에서는 compatible·property·phandle·register·interrupt·수치·예제 코드를 원형대로 유지합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 Thermal driver for MAX77620 Power management IC from Maxim Semiconductor.
2
3 Maxim Semiconductor MAX77620 supports alarm interrupts when its
4 die temperature crosses 120C and 140C. These threshold temperatures
5 are not configurable. Device does not provide the real temperature
6 of die other than just indicating whether temperature is above or
7 below threshold level.
8
9 Required properties:
10 -------------------
11 #thermal-sensor-cells: For more details, please refer to
12 <devicetree/bindings/thermal/thermal-sensor.yaml>
13 The value must be 0.
14
15 For more details, please refer generic thermal DT binding document
16 <devicetree/bindings/thermal/thermal*.yaml>.
17
18 Please refer <devicetree/bindings/mfd/max77620.txt> for mfd DT binding
19 document for the MAX77620.
20
21 Example:
22 --------
23 #include <dt-bindings/mfd/max77620.h>
24 #include <dt-bindings/thermal/thermal.h>
25 ...
26
27 i2c@7000d000 {
28 spmic: max77620@3c {
29 compatible = "maxim,max77620";
30 :::::
31 #thermal-sensor-cells = <0>;
32 :::
33 };
34 };
35
36 cool_dev: cool-dev {
37 compatible = "cooling-dev";
38 #cooling-cells = <2>;
39 };
40
41 thermal-zones {
42 PMIC-Die {
43 polling-delay = <0>;
44 polling-delay-passive = <0>;
45 thermal-sensors = <&spmic>;
46
47 trips {
48 pmic_die_warn_temp_thresh: hot-die {
49 temperature = <120000>;
50 type = "hot";
51 hysteresis = <0>;
52 };
53
54 pmic_die_cirt_temp_thresh: cirtical-die {
55 temperature = <140000>;
56 type = "critical";
57 hysteresis = <0>;
58 };
59 };
60
61 cooling-maps {
62 map0 {
63 trip = <&pmic_die_warn_temp_thresh>;
64 cooling-device = <&cool_dev THERMAL_NO_LIMIT
65 THERMAL_NO_LIMIT>;
66 contribution = <100>;
67 };
68 };
69 };
70 };
71

3. 한국어 전문 번역

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

MAX77620 PMIC die alarm

1-8

Maxim Semiconductor MAX77620 PMIC는 die temperature가 120°C와 140°C를 넘을 때 alarm interrupt를 지원합니다. 두 threshold는 구성할 수 없습니다. 장치는 실제 die temperature를 제공하지 않고 각 threshold보다 위인지 아래인지만 나타냅니다.

Sensor cell과 관련 binding

9-20

필수 `#thermal-sensor-cells` 값은 0입니다. 자세한 sensor cell 규칙은 `devicetree/bindings/thermal/thermal-sensor.yaml`, 일반 thermal DT 규칙은 `devicetree/bindings/thermal/thermal*.yaml`을 참조합니다. MAX77620 MFD binding은 `devicetree/bindings/mfd/max77620.txt`에 있습니다.

PMIC provider와 cooling device

21-40

예제는 I2C의 `max77620@3c` PMIC를 0-cell thermal sensor provider로 노출합니다. 별도 `cool_dev` node는 `#cooling-cells = <2>`인 cooling device를 선언합니다.

#include <dt-bindings/mfd/max77620.h>
#include <dt-bindings/thermal/thermal.h>
...

i2c@7000d000 {
        spmic: max77620@3c {
                compatible = "maxim,max77620";
                :::::
                #thermal-sensor-cells = <0>;
                :::
        };
};

cool_dev: cool-dev {
        compatible = "cooling-dev";
        #cooling-cells = <2>;
};

120°C hot·140°C critical trip

41-70

`PMIC-Die` zone은 polling delay를 모두 0으로 두고 `spmic` sensor를 사용합니다. 120000 millidegree에서는 `hot`, 140000 millidegree에서는 `critical` trip을 hysteresis 0으로 발생시킵니다. Cooling map은 120°C warning trip에 `cool_dev`를 상·하한 `THERMAL_NO_LIMIT`, contribution 100으로 연결합니다.

thermal-zones {
        PMIC-Die {
                polling-delay = <0>;
                polling-delay-passive = <0>;
                thermal-sensors = <&spmic>;

                trips {
                        pmic_die_warn_temp_thresh: hot-die {
                                temperature = <120000>;
                                type = "hot";
                                hysteresis = <0>;
                        };

                        pmic_die_cirt_temp_thresh: cirtical-die {
                                temperature = <140000>;
                                type = "critical";
                                hysteresis = <0>;
                        };
                };

                cooling-maps {
                        map0 {
                                trip = <&pmic_die_warn_temp_thresh>;
                                cooling-device = <&cool_dev THERMAL_NO_LIMIT
                                                  THERMAL_NO_LIMIT>;
                                contribution = <100>;
                        };
                };
        };
};