]>
Commit | Line | Data |
---|---|---|
8e27c2fd IT |
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 <Ibrahim.Tilki@analog.com> | |
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 | =============================== ================================================================================= |