← Documents Documentation/hwmon/max31760.rst GitHub 원문 ↗

Linux 6.18.37 · Hardware Monitoring

Kernel driver max31760

MAX31760의 로컬·원격 온도 감지와 48단계 LUT 기반 정밀 PWM 팬 제어입니다.

Source pathDocumentation/hwmon/max31760.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약·해설

max31760.rst:1-77

두 온도 채널을 48단계 PWM LUT와 연결하고 ALERT·SHDN 보호 및 팬 두 개의 속도를 관리합니다.

문서 개요
항목
SourceDocumentation/hwmon/max31760.rst
분량77 source lines
온도 범위-55°C-125°C
LUT48단계

원문 분량과 핵심 인터페이스입니다.

운영 흐름
온도 측정LUT 지점 선택PWM 적용팬 RPM 확인ALERT·SHDN 처리

장치 등록부터 측정·경보 처리까지의 순서입니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0-or-later
2
3 Kernel driver max31760
4 ======================
5
6 Supported chips:
7 * Analog Devices MAX31760
8
9 Prefix: 'max31760'
10
11 Addresses scanned: none
12
13 Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX31760.pdf
14
15
16 Author: Ibrahim Tilki <[email protected]>
17
18 Description
19 -----------
20
21 The MAX31760 integrates temperature sensing along with precision PWM fan
22 control. It accurately measures its local die temperature and the remote
23 temperature of a discrete diode-connected transistor, such as a 2N3906,
24 or a thermal diode commonly found on CPUs, graphics processor units (GPUs),
25 and other ASICs. Multiple temperature thresholds, such as local
26 high/overtemperature (OT) and remote high/overtemperature, can be set by an
27 I2C-compatible interface. Fan speed is controlled based on the temperature
28 reading as an index to a 48-byte lookup table (LUT) containing
29 user-programmed PWM values. The flexible LUT-based architecture enables
30 the user to program a smooth nonlinear fan speed vs. temperature transfer
31 function to minimize acoustic fan noise. Two tachometer inputs allow
32 measuring the speeds of two fans independently. When the local or remote
33 OT threshold is exceeded, the SHDN pin is asserted low and can be used to
34 shut down the system. A dedicated ALERT pin reports that either a local or
35 remote high-temperature threshold has been exceeded.
36
37 Temperature measurement range: from -55°C to 125°C
38
39 Temperature Resolution: 11 Bits, ±0.125°C
40
41 Please refer how to instantiate this driver: Documentation/i2c/instantiating-devices.rst
42
43 Lookup table for auto fan control
44 ---------------------------------
45
46 ========= =================================
47 LUT Index Name
48 ========= =================================
49 1 PWM value for T < +18°C
50 2 PWM value for +18°C ≤ T < +20°C
51 3 PWM value for +20°C ≤ T < +22°C
52 ... ...
53 47 PWM value for +108°C ≤ T < +110°C
54 48 PWM value for T ≥ +110°C
55 ========= =================================
56
57 Sysfs entries
58 -------------
59
60 =============================== =================================================================================
61 fan[1-2]_input Fan speed (in RPM)
62 fan[1-2]_enable Enable fan readings and fan fault alarms
63 fan[1-2]_fault Fan fault status
64 temp[1-2]_label "Remote" and "Local" temperature channel labels
65 temp[1-2]_input Temperature sensor readings (in millidegrees Celsius)
66 temp1_fault Remote temperature sensor fault status
67 temp[1-2]_max Temperature max value. Asserts "ALERT" pin when exceeded
68 temp[1-2]_max_alarm Temperature max alarm status
69 temp[1-2]_crit Temperature critical value. Asserts "SHDN" pin when exceeded
70 temp[1-2]_crit_alarm Temperature critical alarm status
71 pwm1 PWM value for direct fan control
72 pwm1_enable 1: direct fan control, 2: temperature based auto fan control
73 pwm1_freq PWM frequency in hertz
74 pwm1_auto_channels_temp Temperature source for auto fan control. 1: temp1, 2: temp2, 3: max(temp1, temp2)
75 pwm1_auto_point[1-48]_pwm PWM value for LUT point
76 pwm1_auto_point_temp_hyst Temperature hysteresis for auto fan control. Can be either 2000mC or 4000mC
77 =============================== =================================================================================
78

3. 한국어 전문 번역

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

정밀 PWM 팬 제어와 로컬·원격 온도 감지

1-42

GPL-2.0-or-later 문서의 Analog Devices MAX31760 드라이버는 `max31760` 접두사를 사용하며 주소 자동 검색은 하지 않습니다. 저자는 Ibrahim Tilki입니다.

MAX31760은 온도 감지와 정밀 PWM 팬 제어를 통합합니다. 로컬 다이 온도와 2N3906 같은 외부 다이오드 연결 트랜지스터 또는 CPU·GPU·ASIC의 열 다이오드 원격 온도를 정확히 측정합니다. I2C 호환 인터페이스에서 로컬·원격 high 및 overtemperature(`OT`) 임계값을 설정할 수 있습니다.

팬 속도는 온도 측정값을 인덱스로 사용하는 48바이트 LUT의 사용자 지정 PWM 값으로 제어합니다. 이 구조는 부드러운 비선형 온도-팬 속도 전달 함수를 구성해 음향 소음을 줄일 수 있습니다. 두 타코미터 입력은 팬 두 개의 속도를 독립적으로 측정합니다.

로컬 또는 원격 온도가 OT 임계값을 넘으면 `SHDN` 핀이 low로 활성화되어 시스템 종료에 사용할 수 있습니다. 별도 `ALERT` 핀은 로컬 또는 원격 high 임계값 초과를 알립니다. 측정 범위는 -55°C부터 125°C, 해상도는 11비트 ±0.125°C입니다. 장치 생성 방법은 `Documentation/i2c/instantiating-devices.rst`를 참조합니다.

MAX31760 핵심 기능
기능사양
온도 채널원격 + 로컬
측정 범위-55°C-125°C
해상도11비트, ±0.125°C
팬 측정독립 타코미터 2개
자동 제어48바이트 PWM LUT
보호 출력ALERT(high), SHDN(OT)

온도와 팬 제어 경로를 하나의 장치에서 제공합니다.

MAX31760 보호 경로
로컬·원격 온도 측정48단계 LUT 인덱스 선택PWM 팬 속도 적용high 초과 시 ALERTOT 초과 시 SHDN low

온도 측정값이 팬 제어와 하드웨어 경보로 이어집니다.

.. SPDX-License-Identifier: GPL-2.0-or-later

Kernel driver max31760
======================

Supported chips:
  * Analog Devices MAX31760

    Prefix: 'max31760'

    Addresses scanned: none

    Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX31760.pdf


Author: Ibrahim Tilki <[email protected]>

Description
-----------

The MAX31760 integrates temperature sensing along with precision PWM fan
control. It accurately measures its local die temperature and the remote
temperature of a discrete diode-connected transistor, such as a 2N3906,
or a thermal diode commonly found on CPUs, graphics processor units (GPUs),
and other ASICs. Multiple temperature thresholds, such as local
high/overtemperature (OT) and remote high/overtemperature, can be set by an
I2C-compatible interface. Fan speed is controlled based on the temperature
reading as an index to a 48-byte lookup table (LUT) containing
user-programmed PWM values. The flexible LUT-based architecture enables
the user to program a smooth nonlinear fan speed vs. temperature transfer
function to minimize acoustic fan noise. Two tachometer inputs allow
measuring the speeds of two fans independently. When the local or remote
OT threshold is exceeded, the SHDN pin is asserted low and can be used to
shut down the system. A dedicated ALERT pin reports that either a local or
remote high-temperature threshold has been exceeded.

Temperature measurement range: from -55°C to 125°C

Temperature Resolution: 11 Bits, ±0.125°C

Please refer how to instantiate this driver: Documentation/i2c/instantiating-devices.rst

48단계 자동 팬 LUT와 sysfs 인터페이스

43-77

자동 팬 LUT의 1번은 `T < +18°C`, 2번은 `+18°C ≤ T < +20°C`, 3번은 `+20°C ≤ T < +22°C`에 적용됩니다. 같은 2°C 간격으로 이어져 47번은 `+108°C ≤ T < +110°C`, 48번은 `T ≥ +110°C`에 적용됩니다.

`fan[1-2]_input`은 RPM 단위 팬 속도이고 `fan[1-2]_enable`은 팬 판독과 고장 경보를 활성화하며 `fan[1-2]_fault`는 팬 고장 상태입니다. `temp[1-2]_label`은 각각 `Remote`, `Local`이고 입력은 밀리섭씨 단위입니다. `temp1_fault`는 원격 센서 고장입니다.

온도 `max`는 초과 시 `ALERT`, `crit`는 초과 시 `SHDN`을 활성화하며 각각 경보 속성이 있습니다. `pwm1`은 직접 제어값이고 `pwm1_enable`의 1은 직접 제어, 2는 온도 기반 자동 제어입니다. `pwm1_freq`는 Hz 단위 PWM 주파수입니다.

`pwm1_auto_channels_temp`는 자동 제어 온도 소스를 고릅니다. 1은 `temp1`, 2는 `temp2`, 3은 `max(temp1, temp2)`입니다. `pwm1_auto_point[1-48]_pwm`은 각 LUT 지점의 PWM 값이고 `pwm1_auto_point_temp_hyst`는 2000mC 또는 4000mC 히스테리시스입니다.

MAX31760 자동 팬 속성
속성값·단위의미
fan1-2_inputRPM팬 속도
temp1/temp2Remote/Local, m°C온도 입력
temp max/critALERT/SHDN고온·임계 고온 보호
pwm1_enable1 / 2직접 / 온도 기반 자동
pwm1_auto_channels_temp1 / 2 / 3temp1 / temp2 / 두 값의 최대
auto_point1-48_pwm48개 값LUT PWM
auto_point_temp_hyst2000mC 또는 4000mC자동 제어 히스테리시스

직접 제어와 LUT 자동 제어를 명확히 나눕니다.

자동 팬 제어
온도 소스 선택현재 온도로 LUT 1-48 지점 결정해당 PWM 값 적용타코미터로 팬 속도 확인히스테리시스로 경계 진동 억제

선택한 온도와 LUT를 사용해 PWM을 갱신합니다.

Lookup table for auto fan control
---------------------------------

========= =================================
LUT Index Name
========= =================================
1         PWM value for T < +18°C
2         PWM value for +18°C ≤ T < +20°C
3         PWM value for +20°C ≤ T < +22°C
...       ...
47        PWM value for +108°C ≤ T < +110°C
48        PWM value for T ≥ +110°C
========= =================================

Sysfs entries
-------------

=============================== =================================================================================
fan[1-2]_input                  Fan speed (in RPM)
fan[1-2]_enable                 Enable fan readings and fan fault alarms
fan[1-2]_fault                  Fan fault status
temp[1-2]_label                 "Remote" and "Local" temperature channel labels
temp[1-2]_input                 Temperature sensor readings (in millidegrees Celsius)
temp1_fault                     Remote temperature sensor fault status
temp[1-2]_max                   Temperature max value. Asserts "ALERT" pin when exceeded
temp[1-2]_max_alarm             Temperature max alarm status
temp[1-2]_crit                  Temperature critical value. Asserts "SHDN" pin when exceeded
temp[1-2]_crit_alarm            Temperature critical alarm status
pwm1                            PWM value for direct fan control
pwm1_enable                     1: direct fan control, 2: temperature based auto fan control
pwm1_freq                       PWM frequency in hertz
pwm1_auto_channels_temp         Temperature source for auto fan control. 1: temp1, 2: temp2, 3: max(temp1, temp2)
pwm1_auto_point[1-48]_pwm       PWM value for LUT point
pwm1_auto_point_temp_hyst       Temperature hysteresis for auto fan control. Can be either 2000mC or 4000mC
=============================== =================================================================================