Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d1e0fe25 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: (23 commits)
  hwmon: (lm75) Add support for the Texas Instruments TMP105
  hwmon: (ltc4245) Read only one GPIO pin
  hwmon: (dme1737) Add SCH5127 support
  hwmon: (tmp102) Don't always stop chip at exit
  hwmon: (tmp102) Fix suspend and resume functions
  hwmon: (tmp102) Various fixes
  hwmon: Driver for TI TMP102 temperature sensor
  hwmon: EMC1403 thermal sensor support
  hwmon: (applesmc) Add temperature sensor labels to sysfs interface
  hwmon: (applesmc) Add generic support for MacBook Pro 7
  hwmon: (applesmc) Add generic support for MacBook Pro 6
  hwmon: (applesmc) Add support for MacBook Pro 5,3 and 5,4
  hwmon: (tmp401) Reorganize code to get rid of static forward declarations
  hwmon: (tmp401) Use constants for sysfs file permissions
  hwmon: (adm1031) Allow setting update rate
  hwmon: Add description of the update_rate sysfs attribute
  hwmon: (lm90) Use programmed update rate
  hwmon: (f71882fg) Acquire I/O regions while we're working with them
  hwmon: (f71882fg) Code cleanup
  hwmon: (f71882fg) Use strict_stro(l|ul) instead of simple_strto$1
  ...
parents cc106eb3 6d034059
Loading
Loading
Loading
Loading
+41 −10
Original line number Diff line number Diff line
@@ -9,11 +9,15 @@ Supported chips:
  * SMSC SCH3112, SCH3114, SCH3116
    Prefix: 'sch311x'
    Addresses scanned: none, address read from Super-I/O config space
    Datasheet: http://www.nuhorizons.com/FeaturedProducts/Volume1/SMSC/311x.pdf
    Datasheet: Available on the Internet
  * SMSC SCH5027
    Prefix: 'sch5027'
    Addresses scanned: I2C 0x2c, 0x2d, 0x2e
    Datasheet: Provided by SMSC upon request and under NDA
  * SMSC SCH5127
    Prefix: 'sch5127'
    Addresses scanned: none, address read from Super-I/O config space
    Datasheet: Provided by SMSC upon request and under NDA

Authors:
    Juerg Haefliger <juergh@gmail.com>
@@ -36,8 +40,8 @@ Description
-----------

This driver implements support for the hardware monitoring capabilities of the
SMSC DME1737 and Asus A8000 (which are the same), SMSC SCH5027, and SMSC
SCH311x Super-I/O chips. These chips feature monitoring of 3 temp sensors
SMSC DME1737 and Asus A8000 (which are the same), SMSC SCH5027, SCH311x,
and SCH5127 Super-I/O chips. These chips feature monitoring of 3 temp sensors
temp[1-3] (2 remote diodes and 1 internal), 7 voltages in[0-6] (6 external and
1 internal) and up to 6 fan speeds fan[1-6]. Additionally, the chips implement
up to 5 PWM outputs pwm[1-3,5-6] for controlling fan speeds both manually and
@@ -48,14 +52,14 @@ Fan[3-6] and pwm[3,5-6] are optional features and their availability depends on
the configuration of the chip. The driver will detect which features are
present during initialization and create the sysfs attributes accordingly.

For the SCH311x, fan[1-3] and pwm[1-3] are always present and fan[4-6] and
pwm[5-6] don't exist.
For the SCH311x and SCH5127, fan[1-3] and pwm[1-3] are always present and
fan[4-6] and pwm[5-6] don't exist.

The hardware monitoring features of the DME1737, A8000, and SCH5027 are only
accessible via SMBus, while the SCH311x only provides access via the ISA bus.
The driver will therefore register itself as an I2C client driver if it detects
a DME1737, A8000, or SCH5027 and as a platform driver if it detects a SCH311x
chip.
accessible via SMBus, while the SCH311x and SCH5127 only provide access via
the ISA bus. The driver will therefore register itself as an I2C client driver
if it detects a DME1737, A8000, or SCH5027 and as a platform driver if it
detects a SCH311x or SCH5127 chip.


Voltage Monitoring
@@ -76,7 +80,7 @@ DME1737, A8000:
	in6: Vbat	(+3.0V)			0V - 4.38V

SCH311x:
	in0: +2.5V				0V - 6.64V
	in0: +2.5V				0V - 3.32V
	in1: Vccp	(processor core)	0V - 2V
	in2: VCC	(internal +3.3V)	0V - 4.38V
	in3: +5V				0V - 6.64V
@@ -93,6 +97,15 @@ SCH5027:
	in5: VTR	(+3.3V standby)		0V - 4.38V
	in6: Vbat	(+3.0V)			0V - 4.38V

SCH5127:
	in0: +2.5				0V - 3.32V
	in1: Vccp	(processor core)	0V - 3V
	in2: VCC	(internal +3.3V)	0V - 4.38V
	in3: V2_IN				0V - 1.5V
	in4: V1_IN				0V - 1.5V
	in5: VTR	(+3.3V standby)		0V - 4.38V
	in6: Vbat	(+3.0V)			0V - 4.38V

Each voltage input has associated min and max limits which trigger an alarm
when crossed.

@@ -293,3 +306,21 @@ pwm[1-3]_auto_point1_pwm RW Auto PWM pwm point. Auto_point1 is the
pwm[1-3]_auto_point2_pwm	RO	Auto PWM pwm point. Auto_point2 is the
					full-speed duty-cycle which is hard-
					wired to 255 (100% duty-cycle).

Chip Differences
----------------

Feature			dme1737	sch311x	sch5027	sch5127
-------------------------------------------------------
temp[1-3]_offset	yes	yes
vid			yes
zone3			yes	yes	yes
zone[1-3]_hyst		yes	yes
pwm min/off		yes	yes
fan3			opt	yes	opt	yes
pwm3			opt	yes	opt	yes
fan4			opt		opt
fan5			opt		opt
pwm5			opt		opt
fan6			opt		opt
pwm6			opt		opt
+7 −0
Original line number Diff line number Diff line
@@ -7,6 +7,11 @@ Supported chips:
    Addresses scanned: I2C 0x4c
    Datasheet: Publicly available at the National Semiconductor website
               http://www.national.com/pf/LM/LM63.html
  * National Semiconductor LM64
    Prefix: 'lm64'
    Addresses scanned: I2C 0x18 and 0x4e
    Datasheet: Publicly available at the National Semiconductor website
               http://www.national.com/pf/LM/LM64.html

Author: Jean Delvare <khali@linux-fr.org>

@@ -55,3 +60,5 @@ The lm63 driver will not update its values more frequently than every
second; reading them more often will do no harm, but will return 'old'
values.

The LM64 is effectively an LM63 with GPIO lines. The driver does not
support these GPIO lines at present.
+1 −3
Original line number Diff line number Diff line
@@ -72,9 +72,7 @@ in6_min_alarm 5v output undervoltage alarm
in7_min_alarm		3v  output undervoltage alarm
in8_min_alarm		Vee (-12v) output undervoltage alarm

in9_input		GPIO #1 voltage data
in10_input		GPIO #2 voltage data
in11_input		GPIO #3 voltage data
in9_input		GPIO voltage data

power1_input		12v power usage (mW)
power2_input		5v  power usage (mW)
+10 −3
Original line number Diff line number Diff line
@@ -80,9 +80,9 @@ All entries (except name) are optional, and should only be created in a
given driver if the chip has the feature.


********
* Name *
********
*********************
* Global attributes *
*********************

name		The chip name.
		This should be a short, lowercase string, not containing
@@ -91,6 +91,13 @@ name The chip name.
		I2C devices get this attribute created automatically.
		RO

update_rate	The rate at which the chip will update readings.
		Unit: millisecond
		RW
		Some devices have a variable update rate. This attribute
		can be used to change the update rate to the desired
		frequency.


************
* Voltages *
+26 −0
Original line number Diff line number Diff line
Kernel driver tmp102
====================

Supported chips:
  * Texas Instruments TMP102
    Prefix: 'tmp102'
    Addresses scanned: none
    Datasheet: http://focus.ti.com/docs/prod/folders/print/tmp102.html

Author:
	Steven King <sfking@fdwdc.com>

Description
-----------

The Texas Instruments TMP102 implements one temperature sensor.  Limits can be
set through the Overtemperature Shutdown register and Hysteresis register.  The
sensor is accurate to 0.5 degree over the range of -25 to +85 C, and to 1.0
degree from -40 to +125 C. Resolution of the sensor is 0.0625 degree.  The
operating temperature has a minimum of -55 C and a maximum of +150 C.

The TMP102 has a programmable update rate that can select between 8, 4, 1, and
0.5 Hz. (Currently the driver only supports the default of 4 Hz).

The driver provides the common sysfs-interface for temperatures (see
Documentation/hwmon/sysfs-interface under Temperatures).
Loading