17ebd8b66SMauro Carvalho ChehabKernel driver dme1737
27ebd8b66SMauro Carvalho Chehab=====================
37ebd8b66SMauro Carvalho Chehab
47ebd8b66SMauro Carvalho ChehabSupported chips:
57ebd8b66SMauro Carvalho Chehab
67ebd8b66SMauro Carvalho Chehab  * SMSC DME1737 and compatibles (like Asus A8000)
77ebd8b66SMauro Carvalho Chehab
87ebd8b66SMauro Carvalho Chehab    Prefix: 'dme1737'
97ebd8b66SMauro Carvalho Chehab
107ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x2c, 0x2d, 0x2e
117ebd8b66SMauro Carvalho Chehab
127ebd8b66SMauro Carvalho Chehab    Datasheet: Provided by SMSC upon request and under NDA
137ebd8b66SMauro Carvalho Chehab
147ebd8b66SMauro Carvalho Chehab  * SMSC SCH3112, SCH3114, SCH3116
157ebd8b66SMauro Carvalho Chehab
167ebd8b66SMauro Carvalho Chehab    Prefix: 'sch311x'
177ebd8b66SMauro Carvalho Chehab
187ebd8b66SMauro Carvalho Chehab    Addresses scanned: none, address read from Super-I/O config space
197ebd8b66SMauro Carvalho Chehab
207ebd8b66SMauro Carvalho Chehab    Datasheet: Available on the Internet
217ebd8b66SMauro Carvalho Chehab
227ebd8b66SMauro Carvalho Chehab  * SMSC SCH5027
237ebd8b66SMauro Carvalho Chehab
247ebd8b66SMauro Carvalho Chehab    Prefix: 'sch5027'
257ebd8b66SMauro Carvalho Chehab
267ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x2c, 0x2d, 0x2e
277ebd8b66SMauro Carvalho Chehab
287ebd8b66SMauro Carvalho Chehab    Datasheet: Provided by SMSC upon request and under NDA
297ebd8b66SMauro Carvalho Chehab
307ebd8b66SMauro Carvalho Chehab  * SMSC SCH5127
317ebd8b66SMauro Carvalho Chehab
327ebd8b66SMauro Carvalho Chehab    Prefix: 'sch5127'
337ebd8b66SMauro Carvalho Chehab
347ebd8b66SMauro Carvalho Chehab    Addresses scanned: none, address read from Super-I/O config space
357ebd8b66SMauro Carvalho Chehab
367ebd8b66SMauro Carvalho Chehab    Datasheet: Provided by SMSC upon request and under NDA
377ebd8b66SMauro Carvalho Chehab
387ebd8b66SMauro Carvalho ChehabAuthors:
397ebd8b66SMauro Carvalho Chehab    Juerg Haefliger <juergh@gmail.com>
407ebd8b66SMauro Carvalho Chehab
417ebd8b66SMauro Carvalho Chehab
427ebd8b66SMauro Carvalho ChehabModule Parameters
437ebd8b66SMauro Carvalho Chehab-----------------
447ebd8b66SMauro Carvalho Chehab
457ebd8b66SMauro Carvalho Chehab* force_start: bool
467ebd8b66SMauro Carvalho Chehab			Enables the monitoring of voltage, fan and temp inputs
477ebd8b66SMauro Carvalho Chehab			and PWM output control functions. Using this parameter
487ebd8b66SMauro Carvalho Chehab			shouldn't be required since the BIOS usually takes care
497ebd8b66SMauro Carvalho Chehab			of this.
507ebd8b66SMauro Carvalho Chehab
517ebd8b66SMauro Carvalho Chehab* probe_all_addr: bool
527ebd8b66SMauro Carvalho Chehab			Include non-standard LPC addresses 0x162e and 0x164e
537ebd8b66SMauro Carvalho Chehab			when probing for ISA devices. This is required for the
547ebd8b66SMauro Carvalho Chehab			following boards:
557ebd8b66SMauro Carvalho Chehab			- VIA EPIA SN18000
567ebd8b66SMauro Carvalho Chehab
577ebd8b66SMauro Carvalho Chehab
587ebd8b66SMauro Carvalho ChehabDescription
597ebd8b66SMauro Carvalho Chehab-----------
607ebd8b66SMauro Carvalho Chehab
617ebd8b66SMauro Carvalho ChehabThis driver implements support for the hardware monitoring capabilities of the
627ebd8b66SMauro Carvalho ChehabSMSC DME1737 and Asus A8000 (which are the same), SMSC SCH5027, SCH311x,
637ebd8b66SMauro Carvalho Chehaband SCH5127 Super-I/O chips. These chips feature monitoring of 3 temp sensors
647ebd8b66SMauro Carvalho Chehabtemp[1-3] (2 remote diodes and 1 internal), 8 voltages in[0-7] (7 external and
657ebd8b66SMauro Carvalho Chehab1 internal) and up to 6 fan speeds fan[1-6]. Additionally, the chips implement
667ebd8b66SMauro Carvalho Chehabup to 5 PWM outputs pwm[1-3,5-6] for controlling fan speeds both manually and
677ebd8b66SMauro Carvalho Chehabautomatically.
687ebd8b66SMauro Carvalho Chehab
697ebd8b66SMauro Carvalho ChehabFor the DME1737, A8000 and SCH5027, fan[1-2] and pwm[1-2] are always present.
707ebd8b66SMauro Carvalho ChehabFan[3-6] and pwm[3,5-6] are optional features and their availability depends on
717ebd8b66SMauro Carvalho Chehabthe configuration of the chip. The driver will detect which features are
727ebd8b66SMauro Carvalho Chehabpresent during initialization and create the sysfs attributes accordingly.
737ebd8b66SMauro Carvalho Chehab
747ebd8b66SMauro Carvalho ChehabFor the SCH311x and SCH5127, fan[1-3] and pwm[1-3] are always present and
757ebd8b66SMauro Carvalho Chehabfan[4-6] and pwm[5-6] don't exist.
767ebd8b66SMauro Carvalho Chehab
777ebd8b66SMauro Carvalho ChehabThe hardware monitoring features of the DME1737, A8000, and SCH5027 are only
787ebd8b66SMauro Carvalho Chehabaccessible via SMBus, while the SCH311x and SCH5127 only provide access via
797ebd8b66SMauro Carvalho Chehabthe ISA bus. The driver will therefore register itself as an I2C client driver
807ebd8b66SMauro Carvalho Chehabif it detects a DME1737, A8000, or SCH5027 and as a platform driver if it
817ebd8b66SMauro Carvalho Chehabdetects a SCH311x or SCH5127 chip.
827ebd8b66SMauro Carvalho Chehab
837ebd8b66SMauro Carvalho Chehab
847ebd8b66SMauro Carvalho ChehabVoltage Monitoring
857ebd8b66SMauro Carvalho Chehab------------------
867ebd8b66SMauro Carvalho Chehab
877ebd8b66SMauro Carvalho ChehabThe voltage inputs are sampled with 12-bit resolution and have internal
887ebd8b66SMauro Carvalho Chehabscaling resistors. The values returned by the driver therefore reflect true
897ebd8b66SMauro Carvalho Chehabmillivolts and don't need scaling. The voltage inputs are mapped as follows
907ebd8b66SMauro Carvalho Chehab(the last column indicates the input ranges):
917ebd8b66SMauro Carvalho Chehab
927ebd8b66SMauro Carvalho ChehabDME1737, A8000::
937ebd8b66SMauro Carvalho Chehab
947ebd8b66SMauro Carvalho Chehab	in0: +5VTR	(+5V standby)		0V - 6.64V
957ebd8b66SMauro Carvalho Chehab	in1: Vccp	(processor core)	0V - 3V
967ebd8b66SMauro Carvalho Chehab	in2: VCC	(internal +3.3V)	0V - 4.38V
977ebd8b66SMauro Carvalho Chehab	in3: +5V				0V - 6.64V
987ebd8b66SMauro Carvalho Chehab	in4: +12V				0V - 16V
997ebd8b66SMauro Carvalho Chehab	in5: VTR	(+3.3V standby)		0V - 4.38V
1007ebd8b66SMauro Carvalho Chehab	in6: Vbat	(+3.0V)			0V - 4.38V
1017ebd8b66SMauro Carvalho Chehab
1027ebd8b66SMauro Carvalho ChehabSCH311x::
1037ebd8b66SMauro Carvalho Chehab
1047ebd8b66SMauro Carvalho Chehab	in0: +2.5V				0V - 3.32V
1057ebd8b66SMauro Carvalho Chehab	in1: Vccp	(processor core)	0V - 2V
1067ebd8b66SMauro Carvalho Chehab	in2: VCC	(internal +3.3V)	0V - 4.38V
1077ebd8b66SMauro Carvalho Chehab	in3: +5V				0V - 6.64V
1087ebd8b66SMauro Carvalho Chehab	in4: +12V				0V - 16V
1097ebd8b66SMauro Carvalho Chehab	in5: VTR	(+3.3V standby)		0V - 4.38V
1107ebd8b66SMauro Carvalho Chehab	in6: Vbat	(+3.0V)			0V - 4.38V
1117ebd8b66SMauro Carvalho Chehab
1127ebd8b66SMauro Carvalho ChehabSCH5027::
1137ebd8b66SMauro Carvalho Chehab
1147ebd8b66SMauro Carvalho Chehab	in0: +5VTR	(+5V standby)		0V - 6.64V
1157ebd8b66SMauro Carvalho Chehab	in1: Vccp	(processor core)	0V - 3V
1167ebd8b66SMauro Carvalho Chehab	in2: VCC	(internal +3.3V)	0V - 4.38V
1177ebd8b66SMauro Carvalho Chehab	in3: V2_IN				0V - 1.5V
1187ebd8b66SMauro Carvalho Chehab	in4: V1_IN				0V - 1.5V
1197ebd8b66SMauro Carvalho Chehab	in5: VTR	(+3.3V standby)		0V - 4.38V
1207ebd8b66SMauro Carvalho Chehab	in6: Vbat	(+3.0V)			0V - 4.38V
1217ebd8b66SMauro Carvalho Chehab
1227ebd8b66SMauro Carvalho ChehabSCH5127::
1237ebd8b66SMauro Carvalho Chehab
1247ebd8b66SMauro Carvalho Chehab	in0: +2.5				0V - 3.32V
1257ebd8b66SMauro Carvalho Chehab	in1: Vccp	(processor core)	0V - 3V
1267ebd8b66SMauro Carvalho Chehab	in2: VCC	(internal +3.3V)	0V - 4.38V
1277ebd8b66SMauro Carvalho Chehab	in3: V2_IN				0V - 1.5V
1287ebd8b66SMauro Carvalho Chehab	in4: V1_IN				0V - 1.5V
1297ebd8b66SMauro Carvalho Chehab	in5: VTR	(+3.3V standby)		0V - 4.38V
1307ebd8b66SMauro Carvalho Chehab	in6: Vbat	(+3.0V)			0V - 4.38V
1317ebd8b66SMauro Carvalho Chehab	in7: Vtrip	(+1.5V)			0V - 1.99V
1327ebd8b66SMauro Carvalho Chehab
1337ebd8b66SMauro Carvalho ChehabEach voltage input has associated min and max limits which trigger an alarm
1347ebd8b66SMauro Carvalho Chehabwhen crossed.
1357ebd8b66SMauro Carvalho Chehab
1367ebd8b66SMauro Carvalho Chehab
1377ebd8b66SMauro Carvalho ChehabTemperature Monitoring
1387ebd8b66SMauro Carvalho Chehab----------------------
1397ebd8b66SMauro Carvalho Chehab
1407ebd8b66SMauro Carvalho ChehabTemperatures are measured with 12-bit resolution and reported in millidegree
1417ebd8b66SMauro Carvalho ChehabCelsius. The chip also features offsets for all 3 temperature inputs which -
1427ebd8b66SMauro Carvalho Chehabwhen programmed - get added to the input readings. The chip does all the
1437ebd8b66SMauro Carvalho Chehabscaling by itself and the driver therefore reports true temperatures that don't
1447ebd8b66SMauro Carvalho Chehabneed any user-space adjustments. The temperature inputs are mapped as follows
1457ebd8b66SMauro Carvalho Chehab(the last column indicates the input ranges)::
1467ebd8b66SMauro Carvalho Chehab
1477ebd8b66SMauro Carvalho Chehab	temp1: Remote diode 1 (3904 type) temperature	-127C - +127C
1487ebd8b66SMauro Carvalho Chehab	temp2: DME1737 internal temperature		-127C - +127C
1497ebd8b66SMauro Carvalho Chehab	temp3: Remote diode 2 (3904 type) temperature	-127C - +127C
1507ebd8b66SMauro Carvalho Chehab
1517ebd8b66SMauro Carvalho ChehabEach temperature input has associated min and max limits which trigger an alarm
1527ebd8b66SMauro Carvalho Chehabwhen crossed. Additionally, each temperature input has a fault attribute that
1537ebd8b66SMauro Carvalho Chehabreturns 1 when a faulty diode or an unconnected input is detected and 0
1547ebd8b66SMauro Carvalho Chehabotherwise.
1557ebd8b66SMauro Carvalho Chehab
1567ebd8b66SMauro Carvalho Chehab
1577ebd8b66SMauro Carvalho ChehabFan Monitoring
1587ebd8b66SMauro Carvalho Chehab--------------
1597ebd8b66SMauro Carvalho Chehab
1607ebd8b66SMauro Carvalho ChehabFan RPMs are measured with 16-bit resolution. The chip provides inputs for 6
1617ebd8b66SMauro Carvalho Chehabfan tachometers. All 6 inputs have an associated min limit which triggers an
1627ebd8b66SMauro Carvalho Chehabalarm when crossed. Fan inputs 1-4 provide type attributes that need to be set
1637ebd8b66SMauro Carvalho Chehabto the number of pulses per fan revolution that the connected tachometer
1647ebd8b66SMauro Carvalho Chehabgenerates. Supported values are 1, 2, and 4. Fan inputs 5-6 only support fans
1657ebd8b66SMauro Carvalho Chehabthat generate 2 pulses per revolution. Fan inputs 5-6 also provide a max
1667ebd8b66SMauro Carvalho Chehabattribute that needs to be set to the maximum attainable RPM (fan at 100% duty-
1677ebd8b66SMauro Carvalho Chehabcycle) of the input. The chip adjusts the sampling rate based on this value.
1687ebd8b66SMauro Carvalho Chehab
1697ebd8b66SMauro Carvalho Chehab
1707ebd8b66SMauro Carvalho ChehabPWM Output Control
1717ebd8b66SMauro Carvalho Chehab------------------
1727ebd8b66SMauro Carvalho Chehab
1737ebd8b66SMauro Carvalho ChehabThis chip features 5 PWM outputs. PWM outputs 1-3 are associated with fan
1747ebd8b66SMauro Carvalho Chehabinputs 1-3 and PWM outputs 5-6 are associated with fan inputs 5-6. PWM outputs
1757ebd8b66SMauro Carvalho Chehab1-3 can be configured to operate either in manual or automatic mode by setting
1767ebd8b66SMauro Carvalho Chehabthe appropriate enable attribute accordingly. PWM outputs 5-6 can only operate
1777ebd8b66SMauro Carvalho Chehabin manual mode, their enable attributes are therefore read-only. When set to
1787ebd8b66SMauro Carvalho Chehabmanual mode, the fan speed is set by writing the duty-cycle value to the
1797ebd8b66SMauro Carvalho Chehabappropriate PWM attribute. In automatic mode, the PWM attribute returns the
1807ebd8b66SMauro Carvalho Chehabcurrent duty-cycle as set by the fan controller in the chip. All PWM outputs
1817ebd8b66SMauro Carvalho Chehabsupport the setting of the output frequency via the freq attribute.
1827ebd8b66SMauro Carvalho Chehab
1837ebd8b66SMauro Carvalho ChehabIn automatic mode, the chip supports the setting of the PWM ramp rate which
1847ebd8b66SMauro Carvalho Chehabdefines how fast the PWM output is adjusting to changes of the associated
1857ebd8b66SMauro Carvalho Chehabtemperature input. Associating PWM outputs to temperature inputs is done via
1867ebd8b66SMauro Carvalho Chehabtemperature zones. The chip features 3 zones whose assignments to temperature
1877ebd8b66SMauro Carvalho Chehabinputs is static and determined during initialization. These assignments can
1887ebd8b66SMauro Carvalho Chehabbe retrieved via the zone[1-3]_auto_channels_temp attributes. Each PWM output
1897ebd8b66SMauro Carvalho Chehabis assigned to one (or hottest of multiple) temperature zone(s) through the
1907ebd8b66SMauro Carvalho Chehabpwm[1-3]_auto_channels_zone attributes. Each PWM output has 3 distinct output
1917ebd8b66SMauro Carvalho Chehabduty-cycles: full, low, and min. Full is internally hard-wired to 255 (100%)
1927ebd8b66SMauro Carvalho Chehaband low and min can be programmed via pwm[1-3]_auto_point1_pwm and
1937ebd8b66SMauro Carvalho Chehabpwm[1-3]_auto_pwm_min, respectively. The thermal thresholds of the zones are
1947ebd8b66SMauro Carvalho Chehabprogrammed via zone[1-3]_auto_point[1-3]_temp and
1957ebd8b66SMauro Carvalho Chehabzone[1-3]_auto_point1_temp_hyst:
1967ebd8b66SMauro Carvalho Chehab
1977ebd8b66SMauro Carvalho Chehab	=============================== =======================================
1987ebd8b66SMauro Carvalho Chehab	pwm[1-3]_auto_point2_pwm	full-speed duty-cycle (255, i.e., 100%)
1997ebd8b66SMauro Carvalho Chehab	pwm[1-3]_auto_point1_pwm	low-speed duty-cycle
2007ebd8b66SMauro Carvalho Chehab	pwm[1-3]_auto_pwm_min		min-speed duty-cycle
2017ebd8b66SMauro Carvalho Chehab
2027ebd8b66SMauro Carvalho Chehab	zone[1-3]_auto_point3_temp	full-speed temp (all outputs)
2037ebd8b66SMauro Carvalho Chehab	zone[1-3]_auto_point2_temp	full-speed temp
2047ebd8b66SMauro Carvalho Chehab	zone[1-3]_auto_point1_temp	low-speed temp
2057ebd8b66SMauro Carvalho Chehab	zone[1-3]_auto_point1_temp_hyst	min-speed temp
2067ebd8b66SMauro Carvalho Chehab	=============================== =======================================
2077ebd8b66SMauro Carvalho Chehab
2087ebd8b66SMauro Carvalho ChehabThe chip adjusts the output duty-cycle linearly in the range of auto_point1_pwm
2097ebd8b66SMauro Carvalho Chehabto auto_point2_pwm if the temperature of the associated zone is between
2107ebd8b66SMauro Carvalho Chehabauto_point1_temp and auto_point2_temp. If the temperature drops below the
2117ebd8b66SMauro Carvalho Chehabauto_point1_temp_hyst value, the output duty-cycle is set to the auto_pwm_min
2127ebd8b66SMauro Carvalho Chehabvalue which only supports two values: 0 or auto_point1_pwm. That means that the
2137ebd8b66SMauro Carvalho Chehabfan either turns completely off or keeps spinning with the low-speed
2147ebd8b66SMauro Carvalho Chehabduty-cycle. If any of the temperatures rise above the auto_point3_temp value,
2157ebd8b66SMauro Carvalho Chehaball PWM outputs are set to 100% duty-cycle.
2167ebd8b66SMauro Carvalho Chehab
2177ebd8b66SMauro Carvalho ChehabFollowing is another representation of how the chip sets the output duty-cycle
2187ebd8b66SMauro Carvalho Chehabbased on the temperature of the associated thermal zone:
2197ebd8b66SMauro Carvalho Chehab
2207ebd8b66SMauro Carvalho Chehab	=============== =============== =================
2217ebd8b66SMauro Carvalho Chehab	Temperature	Duty-Cycle	Duty-Cycle
2227ebd8b66SMauro Carvalho Chehab			Rising Temp	Falling Temp
2237ebd8b66SMauro Carvalho Chehab	=============== =============== =================
2247ebd8b66SMauro Carvalho Chehab	full-speed	full-speed	full-speed
2257ebd8b66SMauro Carvalho Chehab
2267ebd8b66SMauro Carvalho Chehab	-		< linearly	-
2277ebd8b66SMauro Carvalho Chehab			adjusted
2287ebd8b66SMauro Carvalho Chehab			duty-cycle >
2297ebd8b66SMauro Carvalho Chehab
2307ebd8b66SMauro Carvalho Chehab	low-speed	low-speed	low-speed
2317ebd8b66SMauro Carvalho Chehab	-		min-speed	low-speed
2327ebd8b66SMauro Carvalho Chehab	min-speed	min-speed	min-speed
2337ebd8b66SMauro Carvalho Chehab	-		min-speed	min-speed
2347ebd8b66SMauro Carvalho Chehab	=============== =============== =================
2357ebd8b66SMauro Carvalho Chehab
2367ebd8b66SMauro Carvalho Chehab
2377ebd8b66SMauro Carvalho ChehabSysfs Attributes
2387ebd8b66SMauro Carvalho Chehab----------------
2397ebd8b66SMauro Carvalho Chehab
2407ebd8b66SMauro Carvalho ChehabFollowing is a list of all sysfs attributes that the driver provides, their
2417ebd8b66SMauro Carvalho Chehabpermissions and a short description:
2427ebd8b66SMauro Carvalho Chehab
2437ebd8b66SMauro Carvalho Chehab=============================== ======= =======================================
2447ebd8b66SMauro Carvalho ChehabName				Perm	Description
2457ebd8b66SMauro Carvalho Chehab=============================== ======= =======================================
2467ebd8b66SMauro Carvalho Chehabcpu0_vid			RO	CPU core reference voltage in
2477ebd8b66SMauro Carvalho Chehab					millivolts.
2487ebd8b66SMauro Carvalho Chehabvrm				RW	Voltage regulator module version
2497ebd8b66SMauro Carvalho Chehab					number.
2507ebd8b66SMauro Carvalho Chehab
2517ebd8b66SMauro Carvalho Chehabin[0-7]_input			RO	Measured voltage in millivolts.
2527ebd8b66SMauro Carvalho Chehabin[0-7]_min			RW	Low limit for voltage input.
2537ebd8b66SMauro Carvalho Chehabin[0-7]_max			RW	High limit for voltage input.
2547ebd8b66SMauro Carvalho Chehabin[0-7]_alarm			RO	Voltage input alarm. Returns 1 if
2557ebd8b66SMauro Carvalho Chehab					voltage input is or went outside the
2567ebd8b66SMauro Carvalho Chehab					associated min-max range, 0 otherwise.
2577ebd8b66SMauro Carvalho Chehab
2587ebd8b66SMauro Carvalho Chehabtemp[1-3]_input			RO	Measured temperature in millidegree
2597ebd8b66SMauro Carvalho Chehab					Celsius.
2607ebd8b66SMauro Carvalho Chehabtemp[1-3]_min			RW	Low limit for temp input.
2617ebd8b66SMauro Carvalho Chehabtemp[1-3]_max			RW	High limit for temp input.
2627ebd8b66SMauro Carvalho Chehabtemp[1-3]_offset		RW	Offset for temp input. This value will
2637ebd8b66SMauro Carvalho Chehab					be added by the chip to the measured
2647ebd8b66SMauro Carvalho Chehab					temperature.
2657ebd8b66SMauro Carvalho Chehabtemp[1-3]_alarm			RO	Alarm for temp input. Returns 1 if temp
2667ebd8b66SMauro Carvalho Chehab					input is or went outside the associated
2677ebd8b66SMauro Carvalho Chehab					min-max range, 0 otherwise.
2687ebd8b66SMauro Carvalho Chehabtemp[1-3]_fault			RO	Temp input fault. Returns 1 if the chip
2697ebd8b66SMauro Carvalho Chehab					detects a faulty thermal diode or an
2707ebd8b66SMauro Carvalho Chehab					unconnected temp input, 0 otherwise.
2717ebd8b66SMauro Carvalho Chehab
2727ebd8b66SMauro Carvalho Chehabzone[1-3]_auto_channels_temp	RO	Temperature zone to temperature input
2737ebd8b66SMauro Carvalho Chehab					mapping. This attribute is a bitfield
2747ebd8b66SMauro Carvalho Chehab					and supports the following values:
2757ebd8b66SMauro Carvalho Chehab
2767ebd8b66SMauro Carvalho Chehab						- 1: temp1
2777ebd8b66SMauro Carvalho Chehab						- 2: temp2
2787ebd8b66SMauro Carvalho Chehab						- 4: temp3
2797ebd8b66SMauro Carvalho Chehabzone[1-3]_auto_point1_temp_hyst	RW	Auto PWM temp point1 hysteresis. The
2807ebd8b66SMauro Carvalho Chehab					output of the corresponding PWM is set
2817ebd8b66SMauro Carvalho Chehab					to the pwm_auto_min value if the temp
2827ebd8b66SMauro Carvalho Chehab					falls below the auto_point1_temp_hyst
2837ebd8b66SMauro Carvalho Chehab					value.
2847ebd8b66SMauro Carvalho Chehabzone[1-3]_auto_point[1-3]_temp	RW	Auto PWM temp points. Auto_point1 is
2857ebd8b66SMauro Carvalho Chehab					the low-speed temp, auto_point2 is the
2867ebd8b66SMauro Carvalho Chehab					full-speed temp, and auto_point3 is the
2877ebd8b66SMauro Carvalho Chehab					temp at which all PWM outputs are set
2887ebd8b66SMauro Carvalho Chehab					to full-speed (100% duty-cycle).
2897ebd8b66SMauro Carvalho Chehab
2907ebd8b66SMauro Carvalho Chehabfan[1-6]_input			RO	Measured fan speed in RPM.
2917ebd8b66SMauro Carvalho Chehabfan[1-6]_min			RW	Low limit for fan input.
2927ebd8b66SMauro Carvalho Chehabfan[1-6]_alarm			RO	Alarm for fan input. Returns 1 if fan
2937ebd8b66SMauro Carvalho Chehab					input is or went below the associated
2947ebd8b66SMauro Carvalho Chehab					min value, 0 otherwise.
2957ebd8b66SMauro Carvalho Chehabfan[1-4]_type			RW	Type of attached fan. Expressed in
2967ebd8b66SMauro Carvalho Chehab					number of pulses per revolution that
2977ebd8b66SMauro Carvalho Chehab					the fan generates. Supported values are
2987ebd8b66SMauro Carvalho Chehab					1, 2, and 4.
2997ebd8b66SMauro Carvalho Chehabfan[5-6]_max			RW	Max attainable RPM at 100% duty-cycle.
3007ebd8b66SMauro Carvalho Chehab					Required for chip to adjust the
3017ebd8b66SMauro Carvalho Chehab					sampling rate accordingly.
3027ebd8b66SMauro Carvalho Chehab
3037ebd8b66SMauro Carvalho Chehabpmw[1-3,5-6]			RO/RW	Duty-cycle of PWM output. Supported
3047ebd8b66SMauro Carvalho Chehab					values are 0-255 (0%-100%). Only
3057ebd8b66SMauro Carvalho Chehab					writeable if the associated PWM is in
3067ebd8b66SMauro Carvalho Chehab					manual mode.
3077ebd8b66SMauro Carvalho Chehabpwm[1-3]_enable			RW	Enable of PWM outputs 1-3. Supported
3087ebd8b66SMauro Carvalho Chehab					values are:
3097ebd8b66SMauro Carvalho Chehab
3107ebd8b66SMauro Carvalho Chehab						- 0: turned off (output @ 100%)
3117ebd8b66SMauro Carvalho Chehab						- 1: manual mode
3127ebd8b66SMauro Carvalho Chehab						- 2: automatic mode
3137ebd8b66SMauro Carvalho Chehabpwm[5-6]_enable			RO	Enable of PWM outputs 5-6. Always
3147ebd8b66SMauro Carvalho Chehab					returns 1 since these 2 outputs are
3157ebd8b66SMauro Carvalho Chehab					hard-wired to manual mode.
3167ebd8b66SMauro Carvalho Chehabpmw[1-3,5-6]_freq		RW	Frequency of PWM output. Supported
3177ebd8b66SMauro Carvalho Chehab					values are in the range 11Hz-30000Hz
3187ebd8b66SMauro Carvalho Chehab					(default is 25000Hz).
3197ebd8b66SMauro Carvalho Chehabpmw[1-3]_ramp_rate		RW	Ramp rate of PWM output. Determines how
3207ebd8b66SMauro Carvalho Chehab					fast the PWM duty-cycle will change
3217ebd8b66SMauro Carvalho Chehab					when the PWM is in automatic mode.
3227ebd8b66SMauro Carvalho Chehab					Expressed in ms per PWM step. Supported
3237ebd8b66SMauro Carvalho Chehab					values are in the range 0ms-206ms
3247ebd8b66SMauro Carvalho Chehab					(default is 0, which means the duty-
3257ebd8b66SMauro Carvalho Chehab					cycle changes instantly).
3267ebd8b66SMauro Carvalho Chehabpwm[1-3]_auto_channels_zone	RW	PWM output to temperature zone mapping.
3277ebd8b66SMauro Carvalho Chehab					This attribute is a bitfield and
3287ebd8b66SMauro Carvalho Chehab					supports the following values:
3297ebd8b66SMauro Carvalho Chehab
3307ebd8b66SMauro Carvalho Chehab						- 1: zone1
3317ebd8b66SMauro Carvalho Chehab						- 2: zone2
3327ebd8b66SMauro Carvalho Chehab						- 4: zone3
3337ebd8b66SMauro Carvalho Chehab						- 6: highest of zone[2-3]
3347ebd8b66SMauro Carvalho Chehab						- 7: highest of zone[1-3]
3357ebd8b66SMauro Carvalho Chehabpwm[1-3]_auto_pwm_min		RW	Auto PWM min pwm. Minimum PWM duty-
3367ebd8b66SMauro Carvalho Chehab					cycle. Supported values are 0 or
3377ebd8b66SMauro Carvalho Chehab					auto_point1_pwm.
3387ebd8b66SMauro Carvalho Chehabpwm[1-3]_auto_point1_pwm	RW	Auto PWM pwm point. Auto_point1 is the
3397ebd8b66SMauro Carvalho Chehab					low-speed duty-cycle.
3407ebd8b66SMauro Carvalho Chehabpwm[1-3]_auto_point2_pwm	RO	Auto PWM pwm point. Auto_point2 is the
3417ebd8b66SMauro Carvalho Chehab					full-speed duty-cycle which is hard-
3427ebd8b66SMauro Carvalho Chehab					wired to 255 (100% duty-cycle).
3437ebd8b66SMauro Carvalho Chehab=============================== ======= =======================================
3447ebd8b66SMauro Carvalho Chehab
3457ebd8b66SMauro Carvalho ChehabChip Differences
3467ebd8b66SMauro Carvalho Chehab----------------
3477ebd8b66SMauro Carvalho Chehab
3487ebd8b66SMauro Carvalho Chehab======================= ======= ======= ======= =======
3497ebd8b66SMauro Carvalho ChehabFeature			dme1737	sch311x	sch5027	sch5127
3507ebd8b66SMauro Carvalho Chehab======================= ======= ======= ======= =======
3517ebd8b66SMauro Carvalho Chehabtemp[1-3]_offset	yes	yes
3527ebd8b66SMauro Carvalho Chehabvid			yes
3537ebd8b66SMauro Carvalho Chehabzone3			yes	yes	yes
3547ebd8b66SMauro Carvalho Chehabzone[1-3]_hyst		yes	yes
3557ebd8b66SMauro Carvalho Chehabpwm min/off		yes	yes
3567ebd8b66SMauro Carvalho Chehabfan3			opt	yes	opt	yes
3577ebd8b66SMauro Carvalho Chehabpwm3			opt	yes	opt	yes
3587ebd8b66SMauro Carvalho Chehabfan4			opt		opt
3597ebd8b66SMauro Carvalho Chehabfan5			opt		opt
3607ebd8b66SMauro Carvalho Chehabpwm5			opt		opt
3617ebd8b66SMauro Carvalho Chehabfan6			opt		opt
3627ebd8b66SMauro Carvalho Chehabpwm6			opt		opt
3637ebd8b66SMauro Carvalho Chehabin7						yes
3647ebd8b66SMauro Carvalho Chehab======================= ======= ======= ======= =======
365