Kernel driver amc6821¶
Supported chips:
Texas Instruments AMC6821
Prefix: ‘amc6821’
Addresses scanned: 0x18, 0x19, 0x1a, 0x2c, 0x2d, 0x2e, 0x4c, 0x4d, 0x4e
Datasheet: http://focus.ti.com/docs/prod/folders/print/amc6821.html
- Authors:
Tomaz Mertelj <tomaz.mertelj@guest.arnes.si>
Description¶
This driver implements support for the Texas Instruments amc6821 chip. The chip has one on-chip and one remote temperature sensor and one pwm fan regulator. The pwm can be controlled either from software or automatically.
The driver provides the following sensor accesses in sysfs:
temp1_input |
ro |
on-chip temperature |
temp1_min |
rw |
“ |
temp1_max |
rw |
“ |
temp1_crit |
rw |
“ |
temp1_min_alarm |
ro |
“ |
temp1_max_alarm |
ro |
“ |
temp1_crit_alarm |
ro |
“ |
temp2_input |
ro |
remote temperature |
temp2_min |
rw |
“ |
temp2_max |
rw |
“ |
temp2_crit |
rw |
“ |
temp2_min_alarm |
ro |
“ |
temp2_max_alarm |
ro |
“ |
temp2_crit_alarm |
ro |
“ |
temp2_fault |
ro |
“ |
fan1_input |
ro |
tachometer speed |
fan1_min |
rw |
“ |
fan1_max |
rw |
“ |
fan1_fault |
ro |
“ |
fan1_pulses |
rw |
Pulses per revolution can be either 2 or 4. |
fan1_target |
rw |
Target fan speed, to be used with pwm1_enable mode 4. |
pwm1 |
rw |
pwm1 |
pwm1_enable |
rw |
regulator mode, 1=open loop, 2=fan controlled by remote temperature, 3=fan controlled by combination of the on-chip temperature and remote-sensor temperature, 4=fan controlled by target rpm set with fan1_target attribute. |
pwm1_mode |
rw |
Fan duty control mode (0=DC, 1=PWM) |
pwm1_auto_channels_temp |
ro |
1 if pwm_enable==2, 3 if pwm_enable==3 |
pwm1_auto_point1_pwm |
ro |
Hardwired to 0, shared for both temperature channels. |
pwm1_auto_point2_pwm |
rw |
This value is shared for both temperature channels. |
pwm1_auto_point3_pwm |
rw |
Hardwired to 255, shared for both temperature channels. |
temp1_auto_point1_temp |
ro |
Hardwired to temp2_auto_point1_temp which is rw. Below this temperature fan stops. |
temp1_auto_point2_temp |
rw |
The low-temperature limit of the proportional range. Below this temperature pwm1 = pwm1_auto_point2_pwm. It can go from 0 degree C to 124 degree C in steps of 4 degree C. Read it out after writing to get the actual value. |
temp1_auto_point3_temp |
rw |
Above this temperature fan runs at maximum speed. It can go from temp1_auto_point2_temp. It can only have certain discrete values which depend on temp1_auto_point2_temp and pwm1_auto_point2_pwm. Read it out after writing to get the actual value. |
temp2_auto_point1_temp |
rw |
Must be between 0 degree C and 63 degree C and it defines the passive cooling temperature. Below this temperature the fan stops in the closed loop mode. |
temp2_auto_point2_temp |
rw |
The low-temperature limit of the proportional range. Below this temperature pwm1 = pwm1_auto_point2_pwm. It can go from 0 degree C to 124 degree C in steps of 4 degree C. |
temp2_auto_point3_temp |
rw |
Above this temperature fan runs at maximum speed. It can only have certain discrete values which depend on temp2_auto_point2_temp and pwm1_auto_point2_pwm. Read it out after writing to get actual value. |
Module parameters¶
If your board has a BIOS that initializes the amc6821 correctly, you should load the module with: init=0.
If your board BIOS doesn’t initialize the chip, or you want different settings, you can set the following parameters:
init=1,
pwminv: 0 default pwm output, 1 inverts pwm output.