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.
