[PATCH] I2C: Fourth auto-fan control interface proposal
Here comes my fourth (and hopefully last) sysfs interface proposal for implementing auto-fan control in 2.6. Previous proposals have been discussed here: [1] http://archives.andrew.net.au/lm-sensors/msg07517.html [2] http://archives.andrew.net.au/lm-sensors/msg08049.html [3] http://archives.andrew.net.au/lm-sensors/msg18008.html The interface is still made up of two parts: per fan temp channels selection, and trip points selection. Changes from the third proposal: pwm[1-*]_enable value 2 is now used to explicitely state the auto pwm mode. This was proposed by Mark D. Studebaker [4]. [4] http://archives.andrew.net.au/lm-sensors/msg18011.html Temp channels selection ======================= Renamed files from fan[1-*]_auto_channels to pwm[1-*]_auto_channels_temp. The change from fan tp pwm is to match the recent renaming suggested by Mark M. Hoffman [5]. The "_temp" suffix is to leave some room for a "_fan" suffix at a later time if new chips drive auto pwm according to fan speeds instead of temperature. [5] http://archives.andrew.net.au/lm-sensors/msg18797.html Trip points =========== Trip points are now numbered (point1, point2, etc...) instead of named (_off, _min, _max, _full...). This solves the problem of various chips having a different number of trip points. The interface is still chip independent in that it doesn't require chip-specific knowledge to be used by user-space apps. The reason for this change is that newer chips tend to have more trip points. the LM63 has 8, the LM93 has no less than 12. Also, I read in the LM63 datasheet that ideal pwm vs temperature curve were parabolic in shape. Seems hard to achieve this if we arbitrarily lock the number of trip points to 3 ;) I also introduced an optional hysteresis temperature for trip points. The LM63 has this. Since it makes full sense I'd expect other chips to propose this as well. As before, there are two sets of files, each chip driver picks the one matching its internal model: trip points are either temperature channel-dependent (ADM1031...) or pwm channel-dependent (IT87xx...). If we ever come accross fan speed-driven pwm outputs where trip points are fan channel-dependent we may have to offer a third set of files. We'll see when/if this happens. I hope I have taken everyone's comments and advice into account and we can make this interface proposal part of the sysfs interface standard now. I'm sorry it took so long. Comments welcome. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
Showing
Please register or sign in to comment