blob: 6a491b805e49c85cdc08864da25c178674711573 [file] [log] [blame] [edit]
Kernel driver max31760
======================
Supported chips:
* Maxim Integrated MAX31760
Prefix: 'max31760'
Addresses scanned: none
Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX31760.pdf
Author: John Muir <muirj@google.com>
Description
-----------
The Maxim MAX31760 is an I2C device that integrates temperature sensing along
with precision PWM fan control. Please read the datasheet referenced above for a
comprehensive description of this device.
This device driver's hwmon integration provides the common sysfs interfaces to
monitor two fans and two temperature sensors, and pwm controls for the fan
speed. A temperature to pwm lookup table is exposed via a series of 'auto_point'
attributes. See Documentation/hwmon/sysfs-interface for more information.
Sysfs attributes
----------------
The following standard hwmon sysfs attributes are supported:
fan[1-2]_input
fan[1-2]_min
fan[1-2]_min_alarm
fan[1-2]_pulses The pulses value applies to both fans.
pwm[1-2] Pwm1 and pwm2 actually control the same PWM.
pwm[1-2]_enable 0: Fans run at full speed.
1: Fan manual control.
2: Fan speed controlled automatically using the PWM vs
temperature curve.
pwm[1-2]_freq
pwm[1-2]_auto_channels_temp
pwm[1-2]_auto_point[1-48]_pwm
pwm[1-2]_auto_point[1-48]_temp
pwm[1-2]_auto_point[1-48]_temp_hyst
temp[1-2]_input
temp[1-2]_max
temp[1-2]_max_alarm
temp[1-2]_max_hyst
temp[1-2]_emergency
temp[1-2]_emergency_alarm
temp[1-2]_emergency_hyst
temp2_fault Temperature sensor fault indication is only available
for temp2.
If labels for the fans and temperature sensors are specified in firmware
properties, then the following properties will be available:
fan[1-2]_label
temp[1-2]_label
The following custom controls are defined (in the custom sub-directory):
config_load Load from the EEPROM into registers.
config_store Store register contents into the EEPROM.
For both config_load and config_store: Write "0" to read
or write the entire register contents. Writing a
bit-field as per the datasheet to read or write a
portion of the register contents is not supported yet.
delay_spinup After waking the device, keep the fans off and wait
delay_spinup milliseconds before spinning up the fans.
This is useful to avoid unnecessary power use and fan
noise for when the host computer sleeps and wakes
frequently.
delay_register_restore During the spinup, the PWM ramp-rate is set to FAST so
as to minimize noise due to the fans changing speed.
After the spinup is complete, wait
delay_register_restore milliseconds before setting the
user-defined ramp rate specified in pwm[1-2]_ramp_rate
below. This helps ensure that the target fan speed is
achieved faster.
pwm[1-2]_fallback PWM value in the range of 0 to 255 to be used when a fan
is faulty.
pwm[1-2]_ramp_rate PWM increment per second when the PWM value is changed.
Accepted values are 8, 16, 32, or 255 (instantaneous).