diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-14 17:57:58 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-14 17:57:58 -0400 |
commit | d310ad0c9d6354affc8abdcfb189ae1a434f18ae (patch) | |
tree | b4daa9dc377e30087b6433a6ab95cc9ef0768528 /Documentation | |
parent | c29c08b59875fe053471cf9eb66f8cfef39bc509 (diff) | |
parent | f279941863f0d39fa8285b84449b52b8286a254b (diff) |
Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging
* 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: (22 commits)
hwmon: (via-cputemp) Remove bogus "SHOW" global variable
hwmon: jc42 depends on I2C
hwmon: (pc87427) Add a maintainer
hwmon: (pc87427) Move sysfs file removal to a separate function
hwmon: (pc87427) Add temperature monitoring support
hwmon: (pc87427) Add support for the second logical device
hwmon: (pc87427) Add support for manual fan speed control
hwmon: (pc87427) Minor style cleanups
hwmon: (pc87427) Handle disabled fan inputs properly
hwmon: (w83627ehf) Add support for W83667HG-B
hwmon: (w83627ehf) Driver cleanup
hwmon: Add driver for SMSC EMC2103 temperature monitor and fan controller
hwmon: Remove in[0-*]_fault from sysfs-interface
hwmon: Add 4 current alarm/beep attributes to sysfs-interface
hwmon: Add 3 critical limit attributes to sysfs-interface
hwmon: (asc7621) Clean up and improve detect function
hwmon: (it87) Export labels for internal sensors
hwmon: (lm75) Add suspend/resume feature
hwmon: (emc1403) Add power support
hwmon: (ltc4245) Expose all GPIO pins as analog voltages
...
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/hwmon/emc2103 | 33 | ||||
-rw-r--r-- | Documentation/hwmon/ltc4245 | 24 | ||||
-rw-r--r-- | Documentation/hwmon/pc87427 | 27 | ||||
-rw-r--r-- | Documentation/hwmon/sysfs-interface | 29 | ||||
-rw-r--r-- | Documentation/hwmon/w83627ehf | 15 |
5 files changed, 114 insertions, 14 deletions
diff --git a/Documentation/hwmon/emc2103 b/Documentation/hwmon/emc2103 new file mode 100644 index 000000000000..a12b2c127140 --- /dev/null +++ b/Documentation/hwmon/emc2103 | |||
@@ -0,0 +1,33 @@ | |||
1 | Kernel driver emc2103 | ||
2 | ====================== | ||
3 | |||
4 | Supported chips: | ||
5 | * SMSC EMC2103 | ||
6 | Addresses scanned: I2C 0x2e | ||
7 | Prefix: 'emc2103' | ||
8 | Datasheet: Not public | ||
9 | |||
10 | Authors: | ||
11 | Steve Glendinning <steve.glendinning@smsc.com> | ||
12 | |||
13 | Description | ||
14 | ----------- | ||
15 | |||
16 | The Standard Microsystems Corporation (SMSC) EMC2103 chips | ||
17 | contain up to 4 temperature sensors and a single fan controller. | ||
18 | |||
19 | Fan rotation speeds are reported in RPM (rotations per minute). An alarm is | ||
20 | triggered if the rotation speed has dropped below a programmable limit. Fan | ||
21 | readings can be divided by a programmable divider (1, 2, 4 or 8) to give | ||
22 | the readings more range or accuracy. Not all RPM values can accurately be | ||
23 | represented, so some rounding is done. With a divider of 1, the lowest | ||
24 | representable value is 480 RPM. | ||
25 | |||
26 | This driver supports RPM based control, to use this a fan target | ||
27 | should be written to fan1_target and pwm1_enable should be set to 3. | ||
28 | |||
29 | The 2103-2 and 2103-4 variants have a third temperature sensor, which can | ||
30 | be connected to two anti-parallel diodes. These values can be read | ||
31 | as temp3 and temp4. If only one diode is attached to this channel, temp4 | ||
32 | will show as "fault". The module parameter "apd=0" can be used to suppress | ||
33 | this 4th channel when anti-parallel diodes are not fitted. | ||
diff --git a/Documentation/hwmon/ltc4245 b/Documentation/hwmon/ltc4245 index 86b5880d8502..b478b0864965 100644 --- a/Documentation/hwmon/ltc4245 +++ b/Documentation/hwmon/ltc4245 | |||
@@ -72,9 +72,31 @@ in6_min_alarm 5v output undervoltage alarm | |||
72 | in7_min_alarm 3v output undervoltage alarm | 72 | in7_min_alarm 3v output undervoltage alarm |
73 | in8_min_alarm Vee (-12v) output undervoltage alarm | 73 | in8_min_alarm Vee (-12v) output undervoltage alarm |
74 | 74 | ||
75 | in9_input GPIO voltage data | 75 | in9_input GPIO voltage data (see note 1) |
76 | in10_input GPIO voltage data (see note 1) | ||
77 | in11_input GPIO voltage data (see note 1) | ||
76 | 78 | ||
77 | power1_input 12v power usage (mW) | 79 | power1_input 12v power usage (mW) |
78 | power2_input 5v power usage (mW) | 80 | power2_input 5v power usage (mW) |
79 | power3_input 3v power usage (mW) | 81 | power3_input 3v power usage (mW) |
80 | power4_input Vee (-12v) power usage (mW) | 82 | power4_input Vee (-12v) power usage (mW) |
83 | |||
84 | |||
85 | Note 1 | ||
86 | ------ | ||
87 | |||
88 | If you have NOT configured the driver to sample all GPIO pins as analog | ||
89 | voltages, then the in10_input and in11_input sysfs attributes will not be | ||
90 | created. The driver will sample the GPIO pin that is currently connected to the | ||
91 | ADC as an analog voltage, and report the value in in9_input. | ||
92 | |||
93 | If you have configured the driver to sample all GPIO pins as analog voltages, | ||
94 | then they will be sampled in round-robin fashion. If userspace reads too | ||
95 | slowly, -EAGAIN will be returned when you read the sysfs attribute containing | ||
96 | the sensor reading. | ||
97 | |||
98 | The LTC4245 chip can be configured to sample all GPIO pins with two methods: | ||
99 | 1) platform data -- see include/linux/i2c/ltc4245.h | ||
100 | 2) OF device tree -- add the "ltc4245,use-extra-gpios" property to each chip | ||
101 | |||
102 | The default mode of operation is to sample a single GPIO pin. | ||
diff --git a/Documentation/hwmon/pc87427 b/Documentation/hwmon/pc87427 index db5cc1227a83..8fdd08c9e48b 100644 --- a/Documentation/hwmon/pc87427 +++ b/Documentation/hwmon/pc87427 | |||
@@ -18,10 +18,11 @@ Description | |||
18 | 18 | ||
19 | The National Semiconductor Super I/O chip includes complete hardware | 19 | The National Semiconductor Super I/O chip includes complete hardware |
20 | monitoring capabilities. It can monitor up to 18 voltages, 8 fans and | 20 | monitoring capabilities. It can monitor up to 18 voltages, 8 fans and |
21 | 6 temperature sensors. Only the fans are supported at the moment. | 21 | 6 temperature sensors. Only the fans and temperatures are supported at |
22 | the moment, voltages aren't. | ||
22 | 23 | ||
23 | This chip also has fan controlling features, which are not yet supported | 24 | This chip also has fan controlling features (up to 4 PWM outputs), |
24 | by this driver either. | 25 | which are partly supported by this driver. |
25 | 26 | ||
26 | The driver assumes that no more than one chip is present, which seems | 27 | The driver assumes that no more than one chip is present, which seems |
27 | reasonable. | 28 | reasonable. |
@@ -36,3 +37,23 @@ signal. Speeds down to 83 RPM can be measured. | |||
36 | An alarm is triggered if the rotation speed drops below a programmable | 37 | An alarm is triggered if the rotation speed drops below a programmable |
37 | limit. Another alarm is triggered if the speed is too low to be measured | 38 | limit. Another alarm is triggered if the speed is too low to be measured |
38 | (including stalled or missing fan). | 39 | (including stalled or missing fan). |
40 | |||
41 | |||
42 | Fan Speed Control | ||
43 | ----------------- | ||
44 | |||
45 | Fan speed can be controlled by PWM outputs. There are 4 possible modes: | ||
46 | always off, always on, manual and automatic. The latter isn't supported | ||
47 | by the driver: you can only return to that mode if it was the original | ||
48 | setting, and the configuration interface is missing. | ||
49 | |||
50 | |||
51 | Temperature Monitoring | ||
52 | ---------------------- | ||
53 | |||
54 | The PC87427 relies on external sensors (following the SensorPath | ||
55 | standard), so the resolution and range depend on the type of sensor | ||
56 | connected. The integer part can be 8-bit or 9-bit, and can be signed or | ||
57 | not. I couldn't find a way to figure out the external sensor data | ||
58 | temperature format, so user-space adjustment (typically by a factor 2) | ||
59 | may be required. | ||
diff --git a/Documentation/hwmon/sysfs-interface b/Documentation/hwmon/sysfs-interface index d4e2917c6f18..ff45d1f837c8 100644 --- a/Documentation/hwmon/sysfs-interface +++ b/Documentation/hwmon/sysfs-interface | |||
@@ -107,10 +107,24 @@ in[0-*]_min Voltage min value. | |||
107 | Unit: millivolt | 107 | Unit: millivolt |
108 | RW | 108 | RW |
109 | 109 | ||
110 | in[0-*]_lcrit Voltage critical min value. | ||
111 | Unit: millivolt | ||
112 | RW | ||
113 | If voltage drops to or below this limit, the system may | ||
114 | take drastic action such as power down or reset. At the very | ||
115 | least, it should report a fault. | ||
116 | |||
110 | in[0-*]_max Voltage max value. | 117 | in[0-*]_max Voltage max value. |
111 | Unit: millivolt | 118 | Unit: millivolt |
112 | RW | 119 | RW |
113 | 120 | ||
121 | in[0-*]_crit Voltage critical max value. | ||
122 | Unit: millivolt | ||
123 | RW | ||
124 | If voltage reaches or exceeds this limit, the system may | ||
125 | take drastic action such as power down or reset. At the very | ||
126 | least, it should report a fault. | ||
127 | |||
114 | in[0-*]_input Voltage input value. | 128 | in[0-*]_input Voltage input value. |
115 | Unit: millivolt | 129 | Unit: millivolt |
116 | RO | 130 | RO |
@@ -284,7 +298,7 @@ temp[1-*]_input Temperature input value. | |||
284 | Unit: millidegree Celsius | 298 | Unit: millidegree Celsius |
285 | RO | 299 | RO |
286 | 300 | ||
287 | temp[1-*]_crit Temperature critical value, typically greater than | 301 | temp[1-*]_crit Temperature critical max value, typically greater than |
288 | corresponding temp_max values. | 302 | corresponding temp_max values. |
289 | Unit: millidegree Celsius | 303 | Unit: millidegree Celsius |
290 | RW | 304 | RW |
@@ -296,6 +310,11 @@ temp[1-*]_crit_hyst | |||
296 | from the critical value. | 310 | from the critical value. |
297 | RW | 311 | RW |
298 | 312 | ||
313 | temp[1-*]_lcrit Temperature critical min value, typically lower than | ||
314 | corresponding temp_min values. | ||
315 | Unit: millidegree Celsius | ||
316 | RW | ||
317 | |||
299 | temp[1-*]_offset | 318 | temp[1-*]_offset |
300 | Temperature offset which is added to the temperature reading | 319 | Temperature offset which is added to the temperature reading |
301 | by the chip. | 320 | by the chip. |
@@ -344,9 +363,6 @@ Also see the Alarms section for status flags associated with temperatures. | |||
344 | * Currents * | 363 | * Currents * |
345 | ************ | 364 | ************ |
346 | 365 | ||
347 | Note that no known chip provides current measurements as of writing, | ||
348 | so this part is theoretical, so to say. | ||
349 | |||
350 | curr[1-*]_max Current max value | 366 | curr[1-*]_max Current max value |
351 | Unit: milliampere | 367 | Unit: milliampere |
352 | RW | 368 | RW |
@@ -471,6 +487,7 @@ limit-related alarms, not both. The driver should just reflect the hardware | |||
471 | implementation. | 487 | implementation. |
472 | 488 | ||
473 | in[0-*]_alarm | 489 | in[0-*]_alarm |
490 | curr[1-*]_alarm | ||
474 | fan[1-*]_alarm | 491 | fan[1-*]_alarm |
475 | temp[1-*]_alarm | 492 | temp[1-*]_alarm |
476 | Channel alarm | 493 | Channel alarm |
@@ -482,6 +499,8 @@ OR | |||
482 | 499 | ||
483 | in[0-*]_min_alarm | 500 | in[0-*]_min_alarm |
484 | in[0-*]_max_alarm | 501 | in[0-*]_max_alarm |
502 | curr[1-*]_min_alarm | ||
503 | curr[1-*]_max_alarm | ||
485 | fan[1-*]_min_alarm | 504 | fan[1-*]_min_alarm |
486 | fan[1-*]_max_alarm | 505 | fan[1-*]_max_alarm |
487 | temp[1-*]_min_alarm | 506 | temp[1-*]_min_alarm |
@@ -497,7 +516,6 @@ to notify open diodes, unconnected fans etc. where the hardware | |||
497 | supports it. When this boolean has value 1, the measurement for that | 516 | supports it. When this boolean has value 1, the measurement for that |
498 | channel should not be trusted. | 517 | channel should not be trusted. |
499 | 518 | ||
500 | in[0-*]_fault | ||
501 | fan[1-*]_fault | 519 | fan[1-*]_fault |
502 | temp[1-*]_fault | 520 | temp[1-*]_fault |
503 | Input fault condition | 521 | Input fault condition |
@@ -513,6 +531,7 @@ beep_enable Master beep enable | |||
513 | RW | 531 | RW |
514 | 532 | ||
515 | in[0-*]_beep | 533 | in[0-*]_beep |
534 | curr[1-*]_beep | ||
516 | fan[1-*]_beep | 535 | fan[1-*]_beep |
517 | temp[1-*]_beep | 536 | temp[1-*]_beep |
518 | Channel beep | 537 | Channel beep |
diff --git a/Documentation/hwmon/w83627ehf b/Documentation/hwmon/w83627ehf index b7e42ec4b26b..13d556112fc0 100644 --- a/Documentation/hwmon/w83627ehf +++ b/Documentation/hwmon/w83627ehf | |||
@@ -20,6 +20,10 @@ Supported chips: | |||
20 | Prefix: 'w83667hg' | 20 | Prefix: 'w83667hg' |
21 | Addresses scanned: ISA address retrieved from Super I/O registers | 21 | Addresses scanned: ISA address retrieved from Super I/O registers |
22 | Datasheet: not available | 22 | Datasheet: not available |
23 | * Winbond W83667HG-B | ||
24 | Prefix: 'w83667hg' | ||
25 | Addresses scanned: ISA address retrieved from Super I/O registers | ||
26 | Datasheet: Available from Nuvoton upon request | ||
23 | 27 | ||
24 | Authors: | 28 | Authors: |
25 | Jean Delvare <khali@linux-fr.org> | 29 | Jean Delvare <khali@linux-fr.org> |
@@ -32,8 +36,8 @@ Description | |||
32 | ----------- | 36 | ----------- |
33 | 37 | ||
34 | This driver implements support for the Winbond W83627EHF, W83627EHG, | 38 | This driver implements support for the Winbond W83627EHF, W83627EHG, |
35 | W83627DHG, W83627DHG-P and W83667HG super I/O chips. We will refer to them | 39 | W83627DHG, W83627DHG-P, W83667HG and W83667HG-B super I/O chips. |
36 | collectively as Winbond chips. | 40 | We will refer to them collectively as Winbond chips. |
37 | 41 | ||
38 | The chips implement three temperature sensors, five fan rotation | 42 | The chips implement three temperature sensors, five fan rotation |
39 | speed sensors, ten analog voltage sensors (only nine for the 627DHG), one | 43 | speed sensors, ten analog voltage sensors (only nine for the 627DHG), one |
@@ -68,14 +72,15 @@ follows: | |||
68 | temp1 -> pwm1 | 72 | temp1 -> pwm1 |
69 | temp2 -> pwm2 | 73 | temp2 -> pwm2 |
70 | temp3 -> pwm3 | 74 | temp3 -> pwm3 |
71 | prog -> pwm4 (not on 667HG; the programmable setting is not supported by | 75 | prog -> pwm4 (not on 667HG and 667HG-B; the programmable setting is not |
72 | the driver) | 76 | supported by the driver) |
73 | 77 | ||
74 | /sys files | 78 | /sys files |
75 | ---------- | 79 | ---------- |
76 | 80 | ||
77 | name - this is a standard hwmon device entry. For the W83627EHF and W83627EHG, | 81 | name - this is a standard hwmon device entry. For the W83627EHF and W83627EHG, |
78 | it is set to "w83627ehf" and for the W83627DHG it is set to "w83627dhg" | 82 | it is set to "w83627ehf", for the W83627DHG it is set to "w83627dhg", |
83 | and for the W83667HG it is set to "w83667hg". | ||
79 | 84 | ||
80 | pwm[1-4] - this file stores PWM duty cycle or DC value (fan speed) in range: | 85 | pwm[1-4] - this file stores PWM duty cycle or DC value (fan speed) in range: |
81 | 0 (stop) to 255 (full) | 86 | 0 (stop) to 255 (full) |