diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
commit | 8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch) | |
tree | a8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /Documentation/hwmon | |
parent | 406089d01562f1e2bf9f089fd7637009ebaad589 (diff) |
Patched in Tegra support.
Diffstat (limited to 'Documentation/hwmon')
39 files changed, 159 insertions, 1296 deletions
diff --git a/Documentation/hwmon/ad7314 b/Documentation/hwmon/ad7314 deleted file mode 100644 index 1912549c746..00000000000 --- a/Documentation/hwmon/ad7314 +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | Kernel driver ad7314 | ||
2 | ==================== | ||
3 | |||
4 | Supported chips: | ||
5 | * Analog Devices AD7314 | ||
6 | Prefix: 'ad7314' | ||
7 | Datasheet: Publicly available at Analog Devices website. | ||
8 | * Analog Devices ADT7301 | ||
9 | Prefix: 'adt7301' | ||
10 | Datasheet: Publicly available at Analog Devices website. | ||
11 | * Analog Devices ADT7302 | ||
12 | Prefix: 'adt7302' | ||
13 | Datasheet: Publicly available at Analog Devices website. | ||
14 | |||
15 | Description | ||
16 | ----------- | ||
17 | |||
18 | Driver supports the above parts. The ad7314 has a 10 bit | ||
19 | sensor with 1lsb = 0.25 degrees centigrade. The adt7301 and | ||
20 | adt7302 have 14 bit sensors with 1lsb = 0.03125 degrees centigrade. | ||
21 | |||
22 | Notes | ||
23 | ----- | ||
24 | |||
25 | Currently power down mode is not supported. | ||
diff --git a/Documentation/hwmon/adm1275 b/Documentation/hwmon/adm1275 index 2cfa2566712..097b3ccc4be 100644 --- a/Documentation/hwmon/adm1275 +++ b/Documentation/hwmon/adm1275 | |||
@@ -2,18 +2,10 @@ Kernel driver adm1275 | |||
2 | ===================== | 2 | ===================== |
3 | 3 | ||
4 | Supported chips: | 4 | Supported chips: |
5 | * Analog Devices ADM1075 | ||
6 | Prefix: 'adm1075' | ||
7 | Addresses scanned: - | ||
8 | Datasheet: www.analog.com/static/imported-files/data_sheets/ADM1075.pdf | ||
9 | * Analog Devices ADM1275 | 5 | * Analog Devices ADM1275 |
10 | Prefix: 'adm1275' | 6 | Prefix: 'adm1275' |
11 | Addresses scanned: - | 7 | Addresses scanned: - |
12 | Datasheet: www.analog.com/static/imported-files/data_sheets/ADM1275.pdf | 8 | Datasheet: www.analog.com/static/imported-files/data_sheets/ADM1275.pdf |
13 | * Analog Devices ADM1276 | ||
14 | Prefix: 'adm1276' | ||
15 | Addresses scanned: - | ||
16 | Datasheet: www.analog.com/static/imported-files/data_sheets/ADM1276.pdf | ||
17 | 9 | ||
18 | Author: Guenter Roeck <guenter.roeck@ericsson.com> | 10 | Author: Guenter Roeck <guenter.roeck@ericsson.com> |
19 | 11 | ||
@@ -21,13 +13,13 @@ Author: Guenter Roeck <guenter.roeck@ericsson.com> | |||
21 | Description | 13 | Description |
22 | ----------- | 14 | ----------- |
23 | 15 | ||
24 | This driver supports hardware montoring for Analog Devices ADM1075, ADM1275, | 16 | This driver supports hardware montoring for Analog Devices ADM1275 Hot-Swap |
25 | and ADM1276 Hot-Swap Controller and Digital Power Monitor. | 17 | Controller and Digital Power Monitor. |
26 | 18 | ||
27 | ADM1075, ADM1275, and ADM1276 are hot-swap controllers that allow a circuit | 19 | The ADM1275 is a hot-swap controller that allows a circuit board to be removed |
28 | board to be removed from or inserted into a live backplane. They also feature | 20 | from or inserted into a live backplane. It also features current and voltage |
29 | current and voltage readback via an integrated 12-bit analog-to-digital | 21 | readback via an integrated 12-bit analog-to-digital converter (ADC), accessed |
30 | converter (ADC), accessed using a PMBus interface. | 22 | using a PMBus. interface. |
31 | 23 | ||
32 | The driver is a client driver to the core PMBus driver. Please see | 24 | The driver is a client driver to the core PMBus driver. Please see |
33 | Documentation/hwmon/pmbus for details on PMBus client drivers. | 25 | Documentation/hwmon/pmbus for details on PMBus client drivers. |
@@ -40,10 +32,6 @@ This driver does not auto-detect devices. You will have to instantiate the | |||
40 | devices explicitly. Please see Documentation/i2c/instantiating-devices for | 32 | devices explicitly. Please see Documentation/i2c/instantiating-devices for |
41 | details. | 33 | details. |
42 | 34 | ||
43 | The ADM1075, unlike many other PMBus devices, does not support internal voltage | ||
44 | or current scaling. Reported voltages, currents, and power are raw measurements, | ||
45 | and will typically have to be scaled. | ||
46 | |||
47 | 35 | ||
48 | Platform data support | 36 | Platform data support |
49 | --------------------- | 37 | --------------------- |
@@ -59,34 +47,18 @@ The following attributes are supported. Limits are read-write, history reset | |||
59 | attributes are write-only, all other attributes are read-only. | 47 | attributes are write-only, all other attributes are read-only. |
60 | 48 | ||
61 | in1_label "vin1" or "vout1" depending on chip variant and | 49 | in1_label "vin1" or "vout1" depending on chip variant and |
62 | configuration. On ADM1075, vout1 reports the voltage on | 50 | configuration. |
63 | the VAUX pin. | 51 | in1_input Measured voltage. From READ_VOUT register. |
64 | in1_input Measured voltage. | 52 | in1_min Minumum Voltage. From VOUT_UV_WARN_LIMIT register. |
65 | in1_min Minimum Voltage. | 53 | in1_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. |
66 | in1_max Maximum voltage. | 54 | in1_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. |
67 | in1_min_alarm Voltage low alarm. | 55 | in1_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. |
68 | in1_max_alarm Voltage high alarm. | ||
69 | in1_highest Historical maximum voltage. | 56 | in1_highest Historical maximum voltage. |
70 | in1_reset_history Write any value to reset history. | 57 | in1_reset_history Write any value to reset history. |
71 | 58 | ||
72 | curr1_label "iout1" | 59 | curr1_label "iout1" |
73 | curr1_input Measured current. | 60 | curr1_input Measured current. From READ_IOUT register. |
74 | curr1_max Maximum current. | 61 | curr1_max Maximum current. From IOUT_OC_WARN_LIMIT register. |
75 | curr1_max_alarm Current high alarm. | 62 | curr1_max_alarm Current high alarm. From IOUT_OC_WARN_LIMIT register. |
76 | curr1_lcrit Critical minimum current. Depending on the chip | ||
77 | configuration, either curr1_lcrit or curr1_crit is | ||
78 | supported, but not both. | ||
79 | curr1_lcrit_alarm Critical current low alarm. | ||
80 | curr1_crit Critical maximum current. Depending on the chip | ||
81 | configuration, either curr1_lcrit or curr1_crit is | ||
82 | supported, but not both. | ||
83 | curr1_crit_alarm Critical current high alarm. | ||
84 | curr1_highest Historical maximum current. | 63 | curr1_highest Historical maximum current. |
85 | curr1_reset_history Write any value to reset history. | 64 | curr1_reset_history Write any value to reset history. |
86 | |||
87 | power1_label "pin1" | ||
88 | power1_input Input power. | ||
89 | power1_reset_history Write any value to reset history. | ||
90 | |||
91 | Power attributes are supported on ADM1075 and ADM1276 | ||
92 | only. | ||
diff --git a/Documentation/hwmon/ads7828 b/Documentation/hwmon/ads7828 index f6e263e0f60..2bbebe6f771 100644 --- a/Documentation/hwmon/ads7828 +++ b/Documentation/hwmon/ads7828 | |||
@@ -4,47 +4,29 @@ Kernel driver ads7828 | |||
4 | Supported chips: | 4 | Supported chips: |
5 | * Texas Instruments/Burr-Brown ADS7828 | 5 | * Texas Instruments/Burr-Brown ADS7828 |
6 | Prefix: 'ads7828' | 6 | Prefix: 'ads7828' |
7 | Datasheet: Publicly available at the Texas Instruments website: | 7 | Addresses scanned: I2C 0x48, 0x49, 0x4a, 0x4b |
8 | Datasheet: Publicly available at the Texas Instruments website : | ||
8 | http://focus.ti.com/lit/ds/symlink/ads7828.pdf | 9 | http://focus.ti.com/lit/ds/symlink/ads7828.pdf |
9 | 10 | ||
10 | * Texas Instruments ADS7830 | ||
11 | Prefix: 'ads7830' | ||
12 | Datasheet: Publicly available at the Texas Instruments website: | ||
13 | http://focus.ti.com/lit/ds/symlink/ads7830.pdf | ||
14 | |||
15 | Authors: | 11 | Authors: |
16 | Steve Hardy <shardy@redhat.com> | 12 | Steve Hardy <shardy@redhat.com> |
17 | Vivien Didelot <vivien.didelot@savoirfairelinux.com> | ||
18 | Guillaume Roguez <guillaume.roguez@savoirfairelinux.com> | ||
19 | |||
20 | Platform data | ||
21 | ------------- | ||
22 | |||
23 | The ads7828 driver accepts an optional ads7828_platform_data structure (defined | ||
24 | in include/linux/platform_data/ads7828.h). The structure fields are: | ||
25 | 13 | ||
26 | * diff_input: (bool) Differential operation | 14 | Module Parameters |
27 | set to true for differential mode, false for default single ended mode. | 15 | ----------------- |
28 | 16 | ||
29 | * ext_vref: (bool) External reference | 17 | * se_input: bool (default Y) |
30 | set to true if it operates with an external reference, false for default | 18 | Single ended operation - set to N for differential mode |
31 | internal reference. | 19 | * int_vref: bool (default Y) |
32 | 20 | Operate with the internal 2.5V reference - set to N for external reference | |
33 | * vref_mv: (unsigned int) Voltage reference | 21 | * vref_mv: int (default 2500) |
34 | if using an external reference, set this to the reference voltage in mV, | 22 | If using an external reference, set this to the reference voltage in mV |
35 | otherwise it will default to the internal value (2500mV). This value will be | ||
36 | bounded with limits accepted by the chip, described in the datasheet. | ||
37 | |||
38 | If no structure is provided, the configuration defaults to single ended | ||
39 | operation and internal voltage reference (2.5V). | ||
40 | 23 | ||
41 | Description | 24 | Description |
42 | ----------- | 25 | ----------- |
43 | 26 | ||
44 | This driver implements support for the Texas Instruments ADS7828 and ADS7830. | 27 | This driver implements support for the Texas Instruments ADS7828. |
45 | 28 | ||
46 | The ADS7828 device is a 12-bit 8-channel A/D converter, while the ADS7830 does | 29 | This device is a 12-bit 8-channel A-D converter. |
47 | 8-bit sampling. | ||
48 | 30 | ||
49 | It can operate in single ended mode (8 +ve inputs) or in differential mode, | 31 | It can operate in single ended mode (8 +ve inputs) or in differential mode, |
50 | where 4 differential pairs can be measured. | 32 | where 4 differential pairs can be measured. |
@@ -52,7 +34,3 @@ where 4 differential pairs can be measured. | |||
52 | The chip also has the facility to use an external voltage reference. This | 34 | The chip also has the facility to use an external voltage reference. This |
53 | may be required if your hardware supplies the ADS7828 from a 5V supply, see | 35 | may be required if your hardware supplies the ADS7828 from a 5V supply, see |
54 | the datasheet for more details. | 36 | the datasheet for more details. |
55 | |||
56 | There is no reliable way to identify this chip, so the driver will not scan | ||
57 | some addresses to try to auto-detect it. That means that you will have to | ||
58 | statically declare the device in the platform support code. | ||
diff --git a/Documentation/hwmon/adt7410 b/Documentation/hwmon/adt7410 deleted file mode 100644 index 96004000dc2..00000000000 --- a/Documentation/hwmon/adt7410 +++ /dev/null | |||
@@ -1,51 +0,0 @@ | |||
1 | Kernel driver adt7410 | ||
2 | ===================== | ||
3 | |||
4 | Supported chips: | ||
5 | * Analog Devices ADT7410 | ||
6 | Prefix: 'adt7410' | ||
7 | Addresses scanned: I2C 0x48 - 0x4B | ||
8 | Datasheet: Publicly available at the Analog Devices website | ||
9 | http://www.analog.com/static/imported-files/data_sheets/ADT7410.pdf | ||
10 | |||
11 | Author: Hartmut Knaack <knaack.h@gmx.de> | ||
12 | |||
13 | Description | ||
14 | ----------- | ||
15 | |||
16 | The ADT7410 is a temperature sensor with rated temperature range of -55°C to | ||
17 | +150°C. It has a high accuracy of +/-0.5°C and can be operated at a resolution | ||
18 | of 13 bits (0.0625°C) or 16 bits (0.0078°C). The sensor provides an INT pin to | ||
19 | indicate that a minimum or maximum temperature set point has been exceeded, as | ||
20 | well as a critical temperature (CT) pin to indicate that the critical | ||
21 | temperature set point has been exceeded. Both pins can be set up with a common | ||
22 | hysteresis of 0°C - 15°C and a fault queue, ranging from 1 to 4 events. Both | ||
23 | pins can individually set to be active-low or active-high, while the whole | ||
24 | device can either run in comparator mode or interrupt mode. The ADT7410 | ||
25 | supports continous temperature sampling, as well as sampling one temperature | ||
26 | value per second or even justget one sample on demand for power saving. | ||
27 | Besides, it can completely power down its ADC, if power management is | ||
28 | required. | ||
29 | |||
30 | Configuration Notes | ||
31 | ------------------- | ||
32 | |||
33 | Since the device uses one hysteresis value, which is an offset to minimum, | ||
34 | maximum and critical temperature, it can only be set for temp#_max_hyst. | ||
35 | However, temp#_min_hyst and temp#_crit_hyst show their corresponding | ||
36 | hysteresis. | ||
37 | The device is set to 16 bit resolution and comparator mode. | ||
38 | |||
39 | sysfs-Interface | ||
40 | --------------- | ||
41 | |||
42 | temp#_input - temperature input | ||
43 | temp#_min - temperature minimum setpoint | ||
44 | temp#_max - temperature maximum setpoint | ||
45 | temp#_crit - critical temperature setpoint | ||
46 | temp#_min_hyst - hysteresis for temperature minimum (read-only) | ||
47 | temp#_max_hyst - hysteresis for temperature maximum (read/write) | ||
48 | temp#_crit_hyst - hysteresis for critical temperature (read-only) | ||
49 | temp#_min_alarm - temperature minimum alarm flag | ||
50 | temp#_max_alarm - temperature maximum alarm flag | ||
51 | temp#_crit_alarm - critical temperature alarm flag | ||
diff --git a/Documentation/hwmon/coretemp b/Documentation/hwmon/coretemp index 3374c085678..84d46c0c71a 100644 --- a/Documentation/hwmon/coretemp +++ b/Documentation/hwmon/coretemp | |||
@@ -6,9 +6,7 @@ Supported chips: | |||
6 | Prefix: 'coretemp' | 6 | Prefix: 'coretemp' |
7 | CPUID: family 0x6, models 0xe (Pentium M DC), 0xf (Core 2 DC 65nm), | 7 | CPUID: family 0x6, models 0xe (Pentium M DC), 0xf (Core 2 DC 65nm), |
8 | 0x16 (Core 2 SC 65nm), 0x17 (Penryn 45nm), | 8 | 0x16 (Core 2 SC 65nm), 0x17 (Penryn 45nm), |
9 | 0x1a (Nehalem), 0x1c (Atom), 0x1e (Lynnfield), | 9 | 0x1a (Nehalem), 0x1c (Atom), 0x1e (Lynnfield) |
10 | 0x26 (Tunnel Creek Atom), 0x27 (Medfield Atom), | ||
11 | 0x36 (Cedar Trail Atom) | ||
12 | Datasheet: Intel 64 and IA-32 Architectures Software Developer's Manual | 10 | Datasheet: Intel 64 and IA-32 Architectures Software Developer's Manual |
13 | Volume 3A: System Programming Guide | 11 | Volume 3A: System Programming Guide |
14 | http://softwarecommunity.intel.com/Wiki/Mobility/720.htm | 12 | http://softwarecommunity.intel.com/Wiki/Mobility/720.htm |
@@ -54,17 +52,6 @@ Some information comes from ark.intel.com | |||
54 | 52 | ||
55 | Process Processor TjMax(C) | 53 | Process Processor TjMax(C) |
56 | 54 | ||
57 | 22nm Core i5/i7 Processors | ||
58 | i7 3920XM, 3820QM, 3720QM, 3667U, 3520M 105 | ||
59 | i5 3427U, 3360M/3320M 105 | ||
60 | i7 3770/3770K 105 | ||
61 | i5 3570/3570K, 3550, 3470/3450 105 | ||
62 | i7 3770S 103 | ||
63 | i5 3570S/3550S, 3475S/3470S/3450S 103 | ||
64 | i7 3770T 94 | ||
65 | i5 3570T 94 | ||
66 | i5 3470T 91 | ||
67 | |||
68 | 32nm Core i3/i5/i7 Processors | 55 | 32nm Core i3/i5/i7 Processors |
69 | i7 660UM/640/620, 640LM/620, 620M, 610E 105 | 56 | i7 660UM/640/620, 640LM/620, 620M, 610E 105 |
70 | i5 540UM/520/430, 540M/520/450/430 105 | 57 | i5 540UM/520/430, 540M/520/450/430 105 |
@@ -78,11 +65,6 @@ Process Processor TjMax(C) | |||
78 | U3400 105 | 65 | U3400 105 |
79 | P4505/P4500 90 | 66 | P4505/P4500 90 |
80 | 67 | ||
81 | 32nm Atom Processors | ||
82 | Z2460 90 | ||
83 | D2700/2550/2500 100 | ||
84 | N2850/2800/2650/2600 100 | ||
85 | |||
86 | 45nm Xeon Processors 5400 Quad-Core | 68 | 45nm Xeon Processors 5400 Quad-Core |
87 | X5492, X5482, X5472, X5470, X5460, X5450 85 | 69 | X5492, X5482, X5472, X5470, X5460, X5450 85 |
88 | E5472, E5462, E5450/40/30/20/10/05 85 | 70 | E5472, E5462, E5450/40/30/20/10/05 85 |
@@ -98,16 +80,11 @@ Process Processor TjMax(C) | |||
98 | 80 | ||
99 | 45nm Atom Processors | 81 | 45nm Atom Processors |
100 | D525/510/425/410 100 | 82 | D525/510/425/410 100 |
101 | Z670/650 90 | ||
102 | Z560/550/540/530P/530/520PT/520/515/510PT/510P 90 | 83 | Z560/550/540/530P/530/520PT/520/515/510PT/510P 90 |
103 | Z510/500 90 | 84 | Z510/500 90 |
104 | N570/550 100 | ||
105 | N475/470/455/450 100 | 85 | N475/470/455/450 100 |
106 | N280/270 90 | 86 | N280/270 90 |
107 | 330/230 125 | 87 | 330/230 125 |
108 | E680/660/640/620 90 | ||
109 | E680T/660T/640T/620T 110 | ||
110 | CE4170/4150/4110 110 | ||
111 | 88 | ||
112 | 45nm Core2 Processors | 89 | 45nm Core2 Processors |
113 | Solo ULV SU3500/3300 100 | 90 | Solo ULV SU3500/3300 100 |
diff --git a/Documentation/hwmon/da9052 b/Documentation/hwmon/da9052 deleted file mode 100644 index 5bc51346b68..00000000000 --- a/Documentation/hwmon/da9052 +++ /dev/null | |||
@@ -1,61 +0,0 @@ | |||
1 | Supported chips: | ||
2 | * Dialog Semiconductors DA9052-BC and DA9053-AA/Bx PMICs | ||
3 | Prefix: 'da9052' | ||
4 | Datasheet: Datasheet is not publicly available. | ||
5 | |||
6 | Authors: David Dajun Chen <dchen@diasemi.com> | ||
7 | |||
8 | Description | ||
9 | ----------- | ||
10 | |||
11 | The DA9052/53 provides an Analogue to Digital Converter (ADC) with 10 bits | ||
12 | resolution and track and hold circuitry combined with an analogue input | ||
13 | multiplexer. The analogue input multiplexer will allow conversion of up to 10 | ||
14 | different inputs. The track and hold circuit ensures stable input voltages at | ||
15 | the input of the ADC during the conversion. | ||
16 | |||
17 | The ADC is used to measure the following inputs: | ||
18 | Channel 0: VDDOUT - measurement of the system voltage | ||
19 | Channel 1: ICH - internal battery charger current measurement | ||
20 | Channel 2: TBAT - output from the battery NTC | ||
21 | Channel 3: VBAT - measurement of the battery voltage | ||
22 | Channel 4: ADC_IN4 - high impedance input (0 - 2.5V) | ||
23 | Channel 5: ADC_IN5 - high impedance input (0 - 2.5V) | ||
24 | Channel 6: ADC_IN6 - high impedance input (0 - 2.5V) | ||
25 | Channel 7: XY - TSI interface to measure the X and Y voltage of the touch | ||
26 | screen resistive potentiometers | ||
27 | Channel 8: Internal Tjunc. - sense (internal temp. sensor) | ||
28 | Channel 9: VBBAT - measurement of the backup battery voltage | ||
29 | |||
30 | By using sysfs attributes we can measure the system voltage VDDOUT, the battery | ||
31 | charging current ICH, battery temperature TBAT, battery junction temperature | ||
32 | TJUNC, battery voltage VBAT and the back up battery voltage VBBAT. | ||
33 | |||
34 | Voltage Monitoring | ||
35 | ------------------ | ||
36 | |||
37 | Voltages are sampled by a 10 bit ADC. | ||
38 | |||
39 | The battery voltage is calculated as: | ||
40 | Milli volt = ((ADC value * 1000) / 512) + 2500 | ||
41 | |||
42 | The backup battery voltage is calculated as: | ||
43 | Milli volt = (ADC value * 2500) / 512; | ||
44 | |||
45 | The voltages on ADC channels 4, 5 and 6 are calculated as: | ||
46 | Milli volt = (ADC value * 2500) / 1023 | ||
47 | |||
48 | Temperature Monitoring | ||
49 | ---------------------- | ||
50 | |||
51 | Temperatures are sampled by a 10 bit ADC. Junction and battery temperatures | ||
52 | are monitored by the ADC channels. | ||
53 | |||
54 | The junction temperature is calculated: | ||
55 | Degrees celsius = 1.708 * (TJUNC_RES - T_OFFSET) - 108.8 | ||
56 | The junction temperature attribute is supported by the driver. | ||
57 | |||
58 | The battery temperature is calculated: | ||
59 | Degree Celsius = 1 / (t1 + 1/298)- 273 | ||
60 | where t1 = (1/B)* ln(( ADCval * 2.5)/(R25*ITBAT*255)) | ||
61 | Default values of R25, B, ITBAT are 10e3, 3380 and 50e-6 respectively. | ||
diff --git a/Documentation/hwmon/da9055 b/Documentation/hwmon/da9055 deleted file mode 100644 index 855c3f536e0..00000000000 --- a/Documentation/hwmon/da9055 +++ /dev/null | |||
@@ -1,47 +0,0 @@ | |||
1 | Supported chips: | ||
2 | * Dialog Semiconductors DA9055 PMIC | ||
3 | Prefix: 'da9055' | ||
4 | Datasheet: Datasheet is not publicly available. | ||
5 | |||
6 | Authors: David Dajun Chen <dchen@diasemi.com> | ||
7 | |||
8 | Description | ||
9 | ----------- | ||
10 | |||
11 | The DA9055 provides an Analogue to Digital Converter (ADC) with 10 bits | ||
12 | resolution and track and hold circuitry combined with an analogue input | ||
13 | multiplexer. The analogue input multiplexer will allow conversion of up to 5 | ||
14 | different inputs. The track and hold circuit ensures stable input voltages at | ||
15 | the input of the ADC during the conversion. | ||
16 | |||
17 | The ADC is used to measure the following inputs: | ||
18 | Channel 0: VDDOUT - measurement of the system voltage | ||
19 | Channel 1: ADC_IN1 - high impedance input (0 - 2.5V) | ||
20 | Channel 2: ADC_IN2 - high impedance input (0 - 2.5V) | ||
21 | Channel 3: ADC_IN3 - high impedance input (0 - 2.5V) | ||
22 | Channel 4: Internal Tjunc. - sense (internal temp. sensor) | ||
23 | |||
24 | By using sysfs attributes we can measure the system voltage VDDOUT, | ||
25 | chip junction temperature and auxiliary channels voltages. | ||
26 | |||
27 | Voltage Monitoring | ||
28 | ------------------ | ||
29 | |||
30 | Voltages are sampled in a AUTO mode it can be manually sampled too and results | ||
31 | are stored in a 10 bit ADC. | ||
32 | |||
33 | The system voltage is calculated as: | ||
34 | Milli volt = ((ADC value * 1000) / 85) + 2500 | ||
35 | |||
36 | The voltages on ADC channels 1, 2 and 3 are calculated as: | ||
37 | Milli volt = (ADC value * 1000) / 102 | ||
38 | |||
39 | Temperature Monitoring | ||
40 | ---------------------- | ||
41 | |||
42 | Temperatures are sampled by a 10 bit ADC. Junction temperatures | ||
43 | are monitored by the ADC channels. | ||
44 | |||
45 | The junction temperature is calculated: | ||
46 | Degrees celsius = -0.4084 * (ADC_RES - T_OFFSET) + 307.6332 | ||
47 | The junction temperature attribute is supported by the driver. | ||
diff --git a/Documentation/hwmon/fam15h_power b/Documentation/hwmon/fam15h_power index 80654813d04..a92918e0bd6 100644 --- a/Documentation/hwmon/fam15h_power +++ b/Documentation/hwmon/fam15h_power | |||
@@ -10,7 +10,7 @@ Supported chips: | |||
10 | BIOS and Kernel Developer's Guide (BKDG) For AMD Family 15h Processors | 10 | BIOS and Kernel Developer's Guide (BKDG) For AMD Family 15h Processors |
11 | (not yet published) | 11 | (not yet published) |
12 | 12 | ||
13 | Author: Andreas Herrmann <herrmann.der.user@googlemail.com> | 13 | Author: Andreas Herrmann <andreas.herrmann3@amd.com> |
14 | 14 | ||
15 | Description | 15 | Description |
16 | ----------- | 16 | ----------- |
diff --git a/Documentation/hwmon/hih6130 b/Documentation/hwmon/hih6130 deleted file mode 100644 index 73dae918ea7..00000000000 --- a/Documentation/hwmon/hih6130 +++ /dev/null | |||
@@ -1,37 +0,0 @@ | |||
1 | Kernel driver hih6130 | ||
2 | ===================== | ||
3 | |||
4 | Supported chips: | ||
5 | * Honeywell HIH-6130 / HIH-6131 | ||
6 | Prefix: 'hih6130' | ||
7 | Addresses scanned: none | ||
8 | Datasheet: Publicly available at the Honeywell website | ||
9 | http://sensing.honeywell.com/index.php?ci_id=3106&la_id=1&defId=44872 | ||
10 | |||
11 | Author: | ||
12 | Iain Paton <ipaton0@gmail.com> | ||
13 | |||
14 | Description | ||
15 | ----------- | ||
16 | |||
17 | The HIH-6130 & HIH-6131 are humidity and temperature sensors in a SO8 package. | ||
18 | The difference between the two devices is that the HIH-6131 has a condensation | ||
19 | filter. | ||
20 | |||
21 | The devices communicate with the I2C protocol. All sensors are set to the same | ||
22 | I2C address 0x27 by default, so an entry with I2C_BOARD_INFO("hih6130", 0x27) | ||
23 | can be used in the board setup code. | ||
24 | |||
25 | Please see Documentation/i2c/instantiating-devices for details on how to | ||
26 | instantiate I2C devices. | ||
27 | |||
28 | sysfs-Interface | ||
29 | --------------- | ||
30 | |||
31 | temp1_input - temperature input | ||
32 | humidity1_input - humidity input | ||
33 | |||
34 | Notes | ||
35 | ----- | ||
36 | |||
37 | Command mode and alarms are not currently supported. | ||
diff --git a/Documentation/hwmon/ina2xx b/Documentation/hwmon/ina2xx deleted file mode 100644 index 03444f9d833..00000000000 --- a/Documentation/hwmon/ina2xx +++ /dev/null | |||
@@ -1,47 +0,0 @@ | |||
1 | Kernel driver ina2xx | ||
2 | ==================== | ||
3 | |||
4 | Supported chips: | ||
5 | * Texas Instruments INA219 | ||
6 | Prefix: 'ina219' | ||
7 | Addresses: I2C 0x40 - 0x4f | ||
8 | Datasheet: Publicly available at the Texas Instruments website | ||
9 | http://www.ti.com/ | ||
10 | |||
11 | * Texas Instruments INA220 | ||
12 | Prefix: 'ina220' | ||
13 | Addresses: I2C 0x40 - 0x4f | ||
14 | Datasheet: Publicly available at the Texas Instruments website | ||
15 | http://www.ti.com/ | ||
16 | |||
17 | * Texas Instruments INA226 | ||
18 | Prefix: 'ina226' | ||
19 | Addresses: I2C 0x40 - 0x4f | ||
20 | Datasheet: Publicly available at the Texas Instruments website | ||
21 | http://www.ti.com/ | ||
22 | |||
23 | * Texas Instruments INA230 | ||
24 | Prefix: 'ina230' | ||
25 | Addresses: I2C 0x40 - 0x4f | ||
26 | Datasheet: Publicly available at the Texas Instruments website | ||
27 | http://www.ti.com/ | ||
28 | |||
29 | Author: Lothar Felten <l-felten@ti.com> | ||
30 | |||
31 | Description | ||
32 | ----------- | ||
33 | |||
34 | The INA219 is a high-side current shunt and power monitor with an I2C | ||
35 | interface. The INA219 monitors both shunt drop and supply voltage, with | ||
36 | programmable conversion times and filtering. | ||
37 | |||
38 | The INA220 is a high or low side current shunt and power monitor with an I2C | ||
39 | interface. The INA220 monitors both shunt drop and supply voltage. | ||
40 | |||
41 | The INA226 is a current shunt and power monitor with an I2C interface. | ||
42 | The INA226 monitors both a shunt voltage drop and bus supply voltage. | ||
43 | |||
44 | The INA230 is a high or low side current shunt and power monitor with an I2C | ||
45 | interface. The INA230 monitors both a shunt voltage drop and bus supply voltage. | ||
46 | |||
47 | The shunt value in micro-ohms can be set via platform data. | ||
diff --git a/Documentation/hwmon/it87 b/Documentation/hwmon/it87 index 8386aadc0a8..6f496a58673 100644 --- a/Documentation/hwmon/it87 +++ b/Documentation/hwmon/it87 | |||
@@ -26,18 +26,6 @@ Supported chips: | |||
26 | Prefix: 'it8721' | 26 | Prefix: 'it8721' |
27 | Addresses scanned: from Super I/O config space (8 I/O ports) | 27 | Addresses scanned: from Super I/O config space (8 I/O ports) |
28 | Datasheet: Not publicly available | 28 | Datasheet: Not publicly available |
29 | * IT8728F | ||
30 | Prefix: 'it8728' | ||
31 | Addresses scanned: from Super I/O config space (8 I/O ports) | ||
32 | Datasheet: Not publicly available | ||
33 | * IT8782F | ||
34 | Prefix: 'it8782' | ||
35 | Addresses scanned: from Super I/O config space (8 I/O ports) | ||
36 | Datasheet: Not publicly available | ||
37 | * IT8783E/F | ||
38 | Prefix: 'it8783' | ||
39 | Addresses scanned: from Super I/O config space (8 I/O ports) | ||
40 | Datasheet: Not publicly available | ||
41 | * SiS950 [clone of IT8705F] | 29 | * SiS950 [clone of IT8705F] |
42 | Prefix: 'it87' | 30 | Prefix: 'it87' |
43 | Addresses scanned: from Super I/O config space (8 I/O ports) | 31 | Addresses scanned: from Super I/O config space (8 I/O ports) |
@@ -71,7 +59,7 @@ Module Parameters | |||
71 | Hardware Interfaces | 59 | Hardware Interfaces |
72 | ------------------- | 60 | ------------------- |
73 | 61 | ||
74 | All the chips supported by this driver are LPC Super-I/O chips, accessed | 62 | All the chips suported by this driver are LPC Super-I/O chips, accessed |
75 | through the LPC bus (ISA-like I/O ports). The IT8712F additionally has an | 63 | through the LPC bus (ISA-like I/O ports). The IT8712F additionally has an |
76 | SMBus interface to the hardware monitoring functions. This driver no | 64 | SMBus interface to the hardware monitoring functions. This driver no |
77 | longer supports this interface though, as it is slower and less reliable | 65 | longer supports this interface though, as it is slower and less reliable |
@@ -83,8 +71,7 @@ Description | |||
83 | ----------- | 71 | ----------- |
84 | 72 | ||
85 | This driver implements support for the IT8705F, IT8712F, IT8716F, | 73 | This driver implements support for the IT8705F, IT8712F, IT8716F, |
86 | IT8718F, IT8720F, IT8721F, IT8726F, IT8728F, IT8758E, IT8781F, IT8782F, | 74 | IT8718F, IT8720F, IT8721F, IT8726F, IT8758E and SiS950 chips. |
87 | IT8783E/F, and SiS950 chips. | ||
88 | 75 | ||
89 | These chips are 'Super I/O chips', supporting floppy disks, infrared ports, | 76 | These chips are 'Super I/O chips', supporting floppy disks, infrared ports, |
90 | joysticks and other miscellaneous stuff. For hardware monitoring, they | 77 | joysticks and other miscellaneous stuff. For hardware monitoring, they |
@@ -108,19 +95,16 @@ The IT8716F, IT8718F, IT8720F, IT8721F/IT8758E and later IT8712F revisions | |||
108 | have support for 2 additional fans. The additional fans are supported by the | 95 | have support for 2 additional fans. The additional fans are supported by the |
109 | driver. | 96 | driver. |
110 | 97 | ||
111 | The IT8716F, IT8718F, IT8720F, IT8721F/IT8758E, IT8782F, IT8783E/F, and late | 98 | The IT8716F, IT8718F, IT8720F and IT8721F/IT8758E, and late IT8712F and |
112 | IT8712F and IT8705F also have optional 16-bit tachometer counters for fans 1 to | 99 | IT8705F also have optional 16-bit tachometer counters for fans 1 to 3. This |
113 | 3. This is better (no more fan clock divider mess) but not compatible with the | 100 | is better (no more fan clock divider mess) but not compatible with the older |
114 | older chips and revisions. The 16-bit tachometer mode is enabled by the driver | 101 | chips and revisions. The 16-bit tachometer mode is enabled by the driver when |
115 | when one of the above chips is detected. | 102 | one of the above chips is detected. |
116 | 103 | ||
117 | The IT8726F is just bit enhanced IT8716F with additional hardware | 104 | The IT8726F is just bit enhanced IT8716F with additional hardware |
118 | for AMD power sequencing. Therefore the chip will appear as IT8716F | 105 | for AMD power sequencing. Therefore the chip will appear as IT8716F |
119 | to userspace applications. | 106 | to userspace applications. |
120 | 107 | ||
121 | The IT8728F is considered compatible with the IT8721F, until a datasheet | ||
122 | becomes available (hopefully.) | ||
123 | |||
124 | Temperatures are measured in degrees Celsius. An alarm is triggered once | 108 | Temperatures are measured in degrees Celsius. An alarm is triggered once |
125 | when the Overtemperature Shutdown limit is crossed. | 109 | when the Overtemperature Shutdown limit is crossed. |
126 | 110 | ||
@@ -137,13 +121,12 @@ alarm is triggered if the voltage has crossed a programmable minimum or | |||
137 | maximum limit. Note that minimum in this case always means 'closest to | 121 | maximum limit. Note that minimum in this case always means 'closest to |
138 | zero'; this is important for negative voltage measurements. All voltage | 122 | zero'; this is important for negative voltage measurements. All voltage |
139 | inputs can measure voltages between 0 and 4.08 volts, with a resolution of | 123 | inputs can measure voltages between 0 and 4.08 volts, with a resolution of |
140 | 0.016 volt (except IT8721F/IT8758E and IT8728F: 0.012 volt.) The battery | 124 | 0.016 volt (except IT8721F/IT8758E: 0.012 volt.) The battery voltage in8 does |
141 | voltage in8 does not have limit registers. | 125 | not have limit registers. |
142 | 126 | ||
143 | On the IT8721F/IT8758E, IT8782F, and IT8783E/F, some voltage inputs are | 127 | On the IT8721F/IT8758E, some voltage inputs are internal and scaled inside |
144 | internal and scaled inside the chip (in7 (optional for IT8782F and IT8783E/F), | 128 | the chip (in7, in8 and optionally in3). The driver handles this transparently |
145 | in8 and optionally in3). The driver handles this transparently so user-space | 129 | so user-space doesn't have to care. |
146 | doesn't have to care. | ||
147 | 130 | ||
148 | The VID lines (IT8712F/IT8716F/IT8718F/IT8720F) encode the core voltage value: | 131 | The VID lines (IT8712F/IT8716F/IT8718F/IT8720F) encode the core voltage value: |
149 | the voltage level your processor should work with. This is hardcoded by | 132 | the voltage level your processor should work with. This is hardcoded by |
@@ -209,13 +192,3 @@ doesn't use CPU cycles. | |||
209 | Trip points must be set properly before switching to automatic fan speed | 192 | Trip points must be set properly before switching to automatic fan speed |
210 | control mode. The driver will perform basic integrity checks before | 193 | control mode. The driver will perform basic integrity checks before |
211 | actually switching to automatic control mode. | 194 | actually switching to automatic control mode. |
212 | |||
213 | |||
214 | Temperature offset attributes | ||
215 | ----------------------------- | ||
216 | |||
217 | The driver supports temp[1-3]_offset sysfs attributes to adjust the reported | ||
218 | temperature for thermal diodes or diode-connected thermal transistors. | ||
219 | If a temperature sensor is configured for thermistors, the attribute values | ||
220 | are ignored. If the thermal sensor type is Intel PECI, the temperature offset | ||
221 | must be programmed to the critical CPU temperature. | ||
diff --git a/Documentation/hwmon/jc42 b/Documentation/hwmon/jc42 index 66ecb9fc824..a22ecf48f25 100644 --- a/Documentation/hwmon/jc42 +++ b/Documentation/hwmon/jc42 | |||
@@ -3,49 +3,56 @@ Kernel driver jc42 | |||
3 | 3 | ||
4 | Supported chips: | 4 | Supported chips: |
5 | * Analog Devices ADT7408 | 5 | * Analog Devices ADT7408 |
6 | Prefix: 'adt7408' | ||
7 | Addresses scanned: I2C 0x18 - 0x1f | ||
6 | Datasheets: | 8 | Datasheets: |
7 | http://www.analog.com/static/imported-files/data_sheets/ADT7408.pdf | 9 | http://www.analog.com/static/imported-files/data_sheets/ADT7408.pdf |
8 | * Atmel AT30TS00 | 10 | * IDT TSE2002B3, TS3000B3 |
9 | Datasheets: | 11 | Prefix: 'tse2002b3', 'ts3000b3' |
10 | http://www.atmel.com/Images/doc8585.pdf | 12 | Addresses scanned: I2C 0x18 - 0x1f |
11 | * IDT TSE2002B3, TSE2002GB2, TS3000B3, TS3000GB2 | ||
12 | Datasheets: | 13 | Datasheets: |
13 | http://www.idt.com/sites/default/files/documents/IDT_TSE2002B3C_DST_20100512_120303152056.pdf | 14 | http://www.idt.com/products/getdoc.cfm?docid=18715691 |
14 | http://www.idt.com/sites/default/files/documents/IDT_TSE2002GB2A1_DST_20111107_120303145914.pdf | 15 | http://www.idt.com/products/getdoc.cfm?docid=18715692 |
15 | http://www.idt.com/sites/default/files/documents/IDT_TS3000B3A_DST_20101129_120303152013.pdf | ||
16 | http://www.idt.com/sites/default/files/documents/IDT_TS3000GB2A1_DST_20111104_120303151012.pdf | ||
17 | * Maxim MAX6604 | 16 | * Maxim MAX6604 |
17 | Prefix: 'max6604' | ||
18 | Addresses scanned: I2C 0x18 - 0x1f | ||
18 | Datasheets: | 19 | Datasheets: |
19 | http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf | 20 | http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf |
20 | * Microchip MCP9804, MCP9805, MCP98242, MCP98243, MCP9843 | 21 | * Microchip MCP9805, MCP98242, MCP98243, MCP9843 |
22 | Prefixes: 'mcp9805', 'mcp98242', 'mcp98243', 'mcp9843' | ||
23 | Addresses scanned: I2C 0x18 - 0x1f | ||
21 | Datasheets: | 24 | Datasheets: |
22 | http://ww1.microchip.com/downloads/en/DeviceDoc/22203C.pdf | ||
23 | http://ww1.microchip.com/downloads/en/DeviceDoc/21977b.pdf | 25 | http://ww1.microchip.com/downloads/en/DeviceDoc/21977b.pdf |
24 | http://ww1.microchip.com/downloads/en/DeviceDoc/21996a.pdf | 26 | http://ww1.microchip.com/downloads/en/DeviceDoc/21996a.pdf |
25 | http://ww1.microchip.com/downloads/en/DeviceDoc/22153c.pdf | 27 | http://ww1.microchip.com/downloads/en/DeviceDoc/22153c.pdf |
26 | * NXP Semiconductors SE97, SE97B, SE98, SE98A | 28 | * NXP Semiconductors SE97, SE97B |
29 | Prefix: 'se97' | ||
30 | Addresses scanned: I2C 0x18 - 0x1f | ||
27 | Datasheets: | 31 | Datasheets: |
28 | http://www.nxp.com/documents/data_sheet/SE97.pdf | 32 | http://www.nxp.com/documents/data_sheet/SE97.pdf |
29 | http://www.nxp.com/documents/data_sheet/SE97B.pdf | 33 | http://www.nxp.com/documents/data_sheet/SE97B.pdf |
34 | * NXP Semiconductors SE98 | ||
35 | Prefix: 'se98' | ||
36 | Addresses scanned: I2C 0x18 - 0x1f | ||
37 | Datasheets: | ||
30 | http://www.nxp.com/documents/data_sheet/SE98.pdf | 38 | http://www.nxp.com/documents/data_sheet/SE98.pdf |
31 | http://www.nxp.com/documents/data_sheet/SE98A.pdf | ||
32 | * ON Semiconductor CAT34TS02, CAT6095 | 39 | * ON Semiconductor CAT34TS02, CAT6095 |
40 | Prefix: 'cat34ts02', 'cat6095' | ||
41 | Addresses scanned: I2C 0x18 - 0x1f | ||
33 | Datasheet: | 42 | Datasheet: |
34 | http://www.onsemi.com/pub_link/Collateral/CAT34TS02-D.PDF | 43 | http://www.onsemi.com/pub_link/Collateral/CAT34TS02-D.PDF |
35 | http://www.onsemi.com/pub/Collateral/CAT6095-D.PDF | 44 | http://www.onsemi.com/pub/Collateral/CAT6095-D.PDF |
36 | * ST Microelectronics STTS424, STTS424E02, STTS2002, STTS3000 | 45 | * ST Microelectronics STTS424, STTS424E02 |
46 | Prefix: 'stts424' | ||
47 | Addresses scanned: I2C 0x18 - 0x1f | ||
37 | Datasheets: | 48 | Datasheets: |
38 | http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00157556.pdf | 49 | http://www.st.com/stonline/products/literature/ds/13447/stts424.pdf |
39 | http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00157558.pdf | 50 | http://www.st.com/stonline/products/literature/ds/13448/stts424e02.pdf |
40 | http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00225278.pdf | ||
41 | http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATA_BRIEF/CD00270920.pdf | ||
42 | * JEDEC JC 42.4 compliant temperature sensor chips | 51 | * JEDEC JC 42.4 compliant temperature sensor chips |
43 | Datasheet: | ||
44 | http://www.jedec.org/sites/default/files/docs/4_01_04R19.pdf | ||
45 | |||
46 | Common for all chips: | ||
47 | Prefix: 'jc42' | 52 | Prefix: 'jc42' |
48 | Addresses scanned: I2C 0x18 - 0x1f | 53 | Addresses scanned: I2C 0x18 - 0x1f |
54 | Datasheet: | ||
55 | http://www.jedec.org/sites/default/files/docs/4_01_04R19.pdf | ||
49 | 56 | ||
50 | Author: | 57 | Author: |
51 | Guenter Roeck <guenter.roeck@ericsson.com> | 58 | Guenter Roeck <guenter.roeck@ericsson.com> |
diff --git a/Documentation/hwmon/k10temp b/Documentation/hwmon/k10temp index 90956b61802..a10f73624ad 100644 --- a/Documentation/hwmon/k10temp +++ b/Documentation/hwmon/k10temp | |||
@@ -11,7 +11,7 @@ Supported chips: | |||
11 | Socket S1G2: Athlon (X2), Sempron (X2), Turion X2 (Ultra) | 11 | Socket S1G2: Athlon (X2), Sempron (X2), Turion X2 (Ultra) |
12 | * AMD Family 12h processors: "Llano" (E2/A4/A6/A8-Series) | 12 | * AMD Family 12h processors: "Llano" (E2/A4/A6/A8-Series) |
13 | * AMD Family 14h processors: "Brazos" (C/E/G/Z-Series) | 13 | * AMD Family 14h processors: "Brazos" (C/E/G/Z-Series) |
14 | * AMD Family 15h processors: "Bulldozer" (FX-Series), "Trinity" | 14 | * AMD Family 15h processors: "Bulldozer" |
15 | 15 | ||
16 | Prefix: 'k10temp' | 16 | Prefix: 'k10temp' |
17 | Addresses scanned: PCI space | 17 | Addresses scanned: PCI space |
diff --git a/Documentation/hwmon/lm63 b/Documentation/hwmon/lm63 index 4d30d209881..b9843eab1af 100644 --- a/Documentation/hwmon/lm63 +++ b/Documentation/hwmon/lm63 | |||
@@ -12,11 +12,6 @@ Supported chips: | |||
12 | Addresses scanned: I2C 0x18 and 0x4e | 12 | Addresses scanned: I2C 0x18 and 0x4e |
13 | Datasheet: Publicly available at the National Semiconductor website | 13 | Datasheet: Publicly available at the National Semiconductor website |
14 | http://www.national.com/pf/LM/LM64.html | 14 | http://www.national.com/pf/LM/LM64.html |
15 | * National Semiconductor LM96163 | ||
16 | Prefix: 'lm96163' | ||
17 | Addresses scanned: I2C 0x4c | ||
18 | Datasheet: Publicly available at the National Semiconductor website | ||
19 | http://www.national.com/pf/LM/LM96163.html | ||
20 | 15 | ||
21 | Author: Jean Delvare <khali@linux-fr.org> | 16 | Author: Jean Delvare <khali@linux-fr.org> |
22 | 17 | ||
@@ -54,24 +49,16 @@ value for measuring the speed of the fan. It can measure fan speeds down to | |||
54 | Note that the pin used for fan monitoring is shared with an alert out | 49 | Note that the pin used for fan monitoring is shared with an alert out |
55 | function. Depending on how the board designer wanted to use the chip, fan | 50 | function. Depending on how the board designer wanted to use the chip, fan |
56 | speed monitoring will or will not be possible. The proper chip configuration | 51 | speed monitoring will or will not be possible. The proper chip configuration |
57 | is left to the BIOS, and the driver will blindly trust it. Only the original | 52 | is left to the BIOS, and the driver will blindly trust it. |
58 | LM63 suffers from this limitation, the LM64 and LM96163 have separate pins | ||
59 | for fan monitoring and alert out. On the LM64, monitoring is always enabled; | ||
60 | on the LM96163 it can be disabled. | ||
61 | 53 | ||
62 | A PWM output can be used to control the speed of the fan. The LM63 has two | 54 | A PWM output can be used to control the speed of the fan. The LM63 has two |
63 | PWM modes: manual and automatic. Automatic mode is not fully implemented yet | 55 | PWM modes: manual and automatic. Automatic mode is not fully implemented yet |
64 | (you cannot define your custom PWM/temperature curve), and mode change isn't | 56 | (you cannot define your custom PWM/temperature curve), and mode change isn't |
65 | supported either. | 57 | supported either. |
66 | 58 | ||
67 | The lm63 driver will not update its values more frequently than configured with | 59 | The lm63 driver will not update its values more frequently than every |
68 | the update_interval sysfs attribute; reading them more often will do no harm, | 60 | second; reading them more often will do no harm, but will return 'old' |
69 | but will return 'old' values. Values in the automatic fan control lookup table | 61 | values. |
70 | (attributes pwm1_auto_*) have their own independent lifetime of 5 seconds. | ||
71 | 62 | ||
72 | The LM64 is effectively an LM63 with GPIO lines. The driver does not | 63 | The LM64 is effectively an LM63 with GPIO lines. The driver does not |
73 | support these GPIO lines at present. | 64 | support these GPIO lines at present. |
74 | |||
75 | The LM96163 is an enhanced version of LM63 with improved temperature accuracy | ||
76 | and better PWM resolution. For LM96163, the external temperature sensor type is | ||
77 | configurable as CPU embedded diode(1) or 3904 transistor(2). | ||
diff --git a/Documentation/hwmon/lm70 b/Documentation/hwmon/lm70 index 86d182942c5..0d240291e3c 100644 --- a/Documentation/hwmon/lm70 +++ b/Documentation/hwmon/lm70 | |||
@@ -6,10 +6,6 @@ Supported chips: | |||
6 | Datasheet: http://www.national.com/pf/LM/LM70.html | 6 | Datasheet: http://www.national.com/pf/LM/LM70.html |
7 | * Texas Instruments TMP121/TMP123 | 7 | * Texas Instruments TMP121/TMP123 |
8 | Information: http://focus.ti.com/docs/prod/folders/print/tmp121.html | 8 | Information: http://focus.ti.com/docs/prod/folders/print/tmp121.html |
9 | * National Semiconductor LM71 | ||
10 | Datasheet: http://www.ti.com/product/LM71 | ||
11 | * National Semiconductor LM74 | ||
12 | Datasheet: http://www.ti.com/product/LM74 | ||
13 | 9 | ||
14 | Author: | 10 | Author: |
15 | Kaiwan N Billimoria <kaiwan@designergraphix.com> | 11 | Kaiwan N Billimoria <kaiwan@designergraphix.com> |
@@ -35,11 +31,9 @@ As a real (in-tree) example of this "SPI protocol driver" interfacing | |||
35 | with a "SPI master controller driver", see drivers/spi/spi_lm70llp.c | 31 | with a "SPI master controller driver", see drivers/spi/spi_lm70llp.c |
36 | and its associated documentation. | 32 | and its associated documentation. |
37 | 33 | ||
38 | The LM74 and TMP121/TMP123 are very similar; main difference is 13-bit | 34 | The TMP121/TMP123 are very similar; main differences are 4 wire SPI inter- |
39 | temperature data (0.0625 degrees celsius resolution). | 35 | face (read only) and 13-bit temperature data (0.0625 degrees celsius reso- |
40 | 36 | lution). | |
41 | The LM71 is also very similar; main difference is 14-bit temperature | ||
42 | data (0.03125 degrees celsius resolution). | ||
43 | 37 | ||
44 | Thanks to | 38 | Thanks to |
45 | --------- | 39 | --------- |
diff --git a/Documentation/hwmon/lm75 b/Documentation/hwmon/lm75 index c91a1d15fa2..a1790401fdd 100644 --- a/Documentation/hwmon/lm75 +++ b/Documentation/hwmon/lm75 | |||
@@ -12,46 +12,26 @@ Supported chips: | |||
12 | Addresses scanned: I2C 0x48 - 0x4f | 12 | Addresses scanned: I2C 0x48 - 0x4f |
13 | Datasheet: Publicly available at the National Semiconductor website | 13 | Datasheet: Publicly available at the National Semiconductor website |
14 | http://www.national.com/ | 14 | http://www.national.com/ |
15 | * Dallas Semiconductor DS75, DS1775 | 15 | * Dallas Semiconductor DS75 |
16 | Prefixes: 'ds75', 'ds1775' | 16 | Prefix: 'lm75' |
17 | Addresses scanned: none | 17 | Addresses scanned: I2C 0x48 - 0x4f |
18 | Datasheet: Publicly available at the Dallas Semiconductor website | ||
19 | http://www.maxim-ic.com/ | ||
20 | * Dallas Semiconductor DS1775 | ||
21 | Prefix: 'lm75' | ||
22 | Addresses scanned: I2C 0x48 - 0x4f | ||
18 | Datasheet: Publicly available at the Dallas Semiconductor website | 23 | Datasheet: Publicly available at the Dallas Semiconductor website |
19 | http://www.maxim-ic.com/ | 24 | http://www.maxim-ic.com/ |
20 | * Maxim MAX6625, MAX6626 | 25 | * Maxim MAX6625, MAX6626 |
21 | Prefixes: 'max6625', 'max6626' | 26 | Prefix: 'lm75' |
22 | Addresses scanned: none | 27 | Addresses scanned: I2C 0x48 - 0x4b |
23 | Datasheet: Publicly available at the Maxim website | 28 | Datasheet: Publicly available at the Maxim website |
24 | http://www.maxim-ic.com/ | 29 | http://www.maxim-ic.com/ |
25 | * Microchip (TelCom) TCN75 | 30 | * Microchip (TelCom) TCN75 |
26 | Prefix: 'lm75' | 31 | Prefix: 'lm75' |
27 | Addresses scanned: none | 32 | Addresses scanned: I2C 0x48 - 0x4f |
28 | Datasheet: Publicly available at the Microchip website | ||
29 | http://www.microchip.com/ | ||
30 | * Microchip MCP9800, MCP9801, MCP9802, MCP9803 | ||
31 | Prefix: 'mcp980x' | ||
32 | Addresses scanned: none | ||
33 | Datasheet: Publicly available at the Microchip website | 33 | Datasheet: Publicly available at the Microchip website |
34 | http://www.microchip.com/ | 34 | http://www.microchip.com/ |
35 | * Analog Devices ADT75 | ||
36 | Prefix: 'adt75' | ||
37 | Addresses scanned: none | ||
38 | Datasheet: Publicly available at the Analog Devices website | ||
39 | http://www.analog.com/adt75 | ||
40 | * ST Microelectronics STDS75 | ||
41 | Prefix: 'stds75' | ||
42 | Addresses scanned: none | ||
43 | Datasheet: Publicly available at the ST website | ||
44 | http://www.st.com/internet/analog/product/121769.jsp | ||
45 | * Texas Instruments TMP100, TMP101, TMP105, TMP75, TMP175, TMP275 | ||
46 | Prefixes: 'tmp100', 'tmp101', 'tmp105', 'tmp175', 'tmp75', 'tmp275' | ||
47 | Addresses scanned: none | ||
48 | Datasheet: Publicly available at the Texas Instruments website | ||
49 | http://www.ti.com/product/tmp100 | ||
50 | http://www.ti.com/product/tmp101 | ||
51 | http://www.ti.com/product/tmp105 | ||
52 | http://www.ti.com/product/tmp75 | ||
53 | http://www.ti.com/product/tmp175 | ||
54 | http://www.ti.com/product/tmp275 | ||
55 | 35 | ||
56 | Author: Frodo Looijaard <frodol@dds.nl> | 36 | Author: Frodo Looijaard <frodol@dds.nl> |
57 | 37 | ||
@@ -70,16 +50,21 @@ range of -55 to +125 degrees. | |||
70 | The LM75 only updates its values each 1.5 seconds; reading it more often | 50 | The LM75 only updates its values each 1.5 seconds; reading it more often |
71 | will do no harm, but will return 'old' values. | 51 | will do no harm, but will return 'old' values. |
72 | 52 | ||
73 | The original LM75 was typically used in combination with LM78-like chips | 53 | The LM75 is usually used in combination with LM78-like chips, to measure |
74 | on PC motherboards, to measure the temperature of the processor(s). Clones | 54 | the temperature of the processor(s). |
75 | are now used in various embedded designs. | 55 | |
56 | The DS75, DS1775, MAX6625, and MAX6626 are supported as well. | ||
57 | They are not distinguished from an LM75. While most of these chips | ||
58 | have three additional bits of accuracy (12 vs. 9 for the LM75), | ||
59 | the additional bits are not supported. Not only that, but these chips will | ||
60 | not be detected if not in 9-bit precision mode (use the force parameter if | ||
61 | needed). | ||
62 | |||
63 | The TCN75 is supported as well, and is not distinguished from an LM75. | ||
76 | 64 | ||
77 | The LM75 is essentially an industry standard; there may be other | 65 | The LM75 is essentially an industry standard; there may be other |
78 | LM75 clones not listed here, with or without various enhancements, | 66 | LM75 clones not listed here, with or without various enhancements, |
79 | that are supported. The clones are not detected by the driver, unless | 67 | that are supported. |
80 | they reproduce the exact register tricks of the original LM75, and must | ||
81 | therefore be instantiated explicitly. The specific enhancements (such as | ||
82 | higher resolution) are not currently supported by the driver. | ||
83 | 68 | ||
84 | The LM77 is not supported, contrary to what we pretended for a long time. | 69 | The LM77 is not supported, contrary to what we pretended for a long time. |
85 | Both chips are simply not compatible, value encoding differs. | 70 | Both chips are simply not compatible, value encoding differs. |
diff --git a/Documentation/hwmon/lm80 b/Documentation/hwmon/lm80 index a60b43efc32..cb5b407ba3e 100644 --- a/Documentation/hwmon/lm80 +++ b/Documentation/hwmon/lm80 | |||
@@ -7,11 +7,6 @@ Supported chips: | |||
7 | Addresses scanned: I2C 0x28 - 0x2f | 7 | Addresses scanned: I2C 0x28 - 0x2f |
8 | Datasheet: Publicly available at the National Semiconductor website | 8 | Datasheet: Publicly available at the National Semiconductor website |
9 | http://www.national.com/ | 9 | http://www.national.com/ |
10 | * National Semiconductor LM96080 | ||
11 | Prefix: 'lm96080' | ||
12 | Addresses scanned: I2C 0x28 - 0x2f | ||
13 | Datasheet: Publicly available at the National Semiconductor website | ||
14 | http://www.national.com/ | ||
15 | 10 | ||
16 | Authors: | 11 | Authors: |
17 | Frodo Looijaard <frodol@dds.nl>, | 12 | Frodo Looijaard <frodol@dds.nl>, |
@@ -22,9 +17,7 @@ Description | |||
22 | 17 | ||
23 | This driver implements support for the National Semiconductor LM80. | 18 | This driver implements support for the National Semiconductor LM80. |
24 | It is described as a 'Serial Interface ACPI-Compatible Microprocessor | 19 | It is described as a 'Serial Interface ACPI-Compatible Microprocessor |
25 | System Hardware Monitor'. The LM96080 is a more recent incarnation, | 20 | System Hardware Monitor'. |
26 | it is pin and register compatible, with a few additional features not | ||
27 | yet supported by the driver. | ||
28 | 21 | ||
29 | The LM80 implements one temperature sensor, two fan rotation speed sensors, | 22 | The LM80 implements one temperature sensor, two fan rotation speed sensors, |
30 | seven voltage sensors, alarms, and some miscellaneous stuff. | 23 | seven voltage sensors, alarms, and some miscellaneous stuff. |
diff --git a/Documentation/hwmon/lm90 b/Documentation/hwmon/lm90 index b466974e142..9cd14cfe651 100644 --- a/Documentation/hwmon/lm90 +++ b/Documentation/hwmon/lm90 | |||
@@ -118,10 +118,6 @@ Supported chips: | |||
118 | Addresses scanned: I2C 0x48 through 0x4F | 118 | Addresses scanned: I2C 0x48 through 0x4F |
119 | Datasheet: Publicly available at NXP website | 119 | Datasheet: Publicly available at NXP website |
120 | http://ics.nxp.com/products/interface/datasheet/sa56004x.pdf | 120 | http://ics.nxp.com/products/interface/datasheet/sa56004x.pdf |
121 | * GMT G781 | ||
122 | Prefix: 'g781' | ||
123 | Addresses scanned: I2C 0x4c, 0x4d | ||
124 | Datasheet: Not publicly available from GMT | ||
125 | 121 | ||
126 | Author: Jean Delvare <khali@linux-fr.org> | 122 | Author: Jean Delvare <khali@linux-fr.org> |
127 | 123 | ||
diff --git a/Documentation/hwmon/ltc2978 b/Documentation/hwmon/ltc2978 deleted file mode 100644 index c365f9beb5d..00000000000 --- a/Documentation/hwmon/ltc2978 +++ /dev/null | |||
@@ -1,103 +0,0 @@ | |||
1 | Kernel driver ltc2978 | ||
2 | ===================== | ||
3 | |||
4 | Supported chips: | ||
5 | * Linear Technology LTC2978 | ||
6 | Prefix: 'ltc2978' | ||
7 | Addresses scanned: - | ||
8 | Datasheet: http://cds.linear.com/docs/Datasheet/2978fa.pdf | ||
9 | * Linear Technology LTC3880 | ||
10 | Prefix: 'ltc3880' | ||
11 | Addresses scanned: - | ||
12 | Datasheet: http://cds.linear.com/docs/Datasheet/3880f.pdf | ||
13 | |||
14 | Author: Guenter Roeck <guenter.roeck@ericsson.com> | ||
15 | |||
16 | |||
17 | Description | ||
18 | ----------- | ||
19 | |||
20 | The LTC2978 is an octal power supply monitor, supervisor, sequencer and | ||
21 | margin controller. The LTC3880 is a dual, PolyPhase DC/DC synchronous | ||
22 | step-down switching regulator controller. | ||
23 | |||
24 | |||
25 | Usage Notes | ||
26 | ----------- | ||
27 | |||
28 | This driver does not probe for PMBus devices. You will have to instantiate | ||
29 | devices explicitly. | ||
30 | |||
31 | Example: the following commands will load the driver for an LTC2978 at address | ||
32 | 0x60 on I2C bus #1: | ||
33 | |||
34 | # modprobe ltc2978 | ||
35 | # echo ltc2978 0x60 > /sys/bus/i2c/devices/i2c-1/new_device | ||
36 | |||
37 | |||
38 | Sysfs attributes | ||
39 | ---------------- | ||
40 | |||
41 | in1_label "vin" | ||
42 | in1_input Measured input voltage. | ||
43 | in1_min Minimum input voltage. | ||
44 | in1_max Maximum input voltage. | ||
45 | in1_lcrit Critical minimum input voltage. | ||
46 | in1_crit Critical maximum input voltage. | ||
47 | in1_min_alarm Input voltage low alarm. | ||
48 | in1_max_alarm Input voltage high alarm. | ||
49 | in1_lcrit_alarm Input voltage critical low alarm. | ||
50 | in1_crit_alarm Input voltage critical high alarm. | ||
51 | in1_lowest Lowest input voltage. LTC2978 only. | ||
52 | in1_highest Highest input voltage. | ||
53 | in1_reset_history Reset history. Writing into this attribute will reset | ||
54 | history for all attributes. | ||
55 | |||
56 | in[2-9]_label "vout[1-8]". Channels 3 to 9 on LTC2978 only. | ||
57 | in[2-9]_input Measured output voltage. | ||
58 | in[2-9]_min Minimum output voltage. | ||
59 | in[2-9]_max Maximum output voltage. | ||
60 | in[2-9]_lcrit Critical minimum output voltage. | ||
61 | in[2-9]_crit Critical maximum output voltage. | ||
62 | in[2-9]_min_alarm Output voltage low alarm. | ||
63 | in[2-9]_max_alarm Output voltage high alarm. | ||
64 | in[2-9]_lcrit_alarm Output voltage critical low alarm. | ||
65 | in[2-9]_crit_alarm Output voltage critical high alarm. | ||
66 | in[2-9]_lowest Lowest output voltage. LTC2978 only. | ||
67 | in[2-9]_highest Lowest output voltage. | ||
68 | in[2-9]_reset_history Reset history. Writing into this attribute will reset | ||
69 | history for all attributes. | ||
70 | |||
71 | temp[1-3]_input Measured temperature. | ||
72 | On LTC2978, only one temperature measurement is | ||
73 | supported and reflects the internal temperature. | ||
74 | On LTC3880, temp1 and temp2 report external | ||
75 | temperatures, and temp3 reports the internal | ||
76 | temperature. | ||
77 | temp[1-3]_min Mimimum temperature. | ||
78 | temp[1-3]_max Maximum temperature. | ||
79 | temp[1-3]_lcrit Critical low temperature. | ||
80 | temp[1-3]_crit Critical high temperature. | ||
81 | temp[1-3]_min_alarm Chip temperature low alarm. | ||
82 | temp[1-3]_max_alarm Chip temperature high alarm. | ||
83 | temp[1-3]_lcrit_alarm Chip temperature critical low alarm. | ||
84 | temp[1-3]_crit_alarm Chip temperature critical high alarm. | ||
85 | temp[1-3]_lowest Lowest measured temperature. LTC2978 only. | ||
86 | temp[1-3]_highest Highest measured temperature. | ||
87 | temp[1-3]_reset_history Reset history. Writing into this attribute will reset | ||
88 | history for all attributes. | ||
89 | |||
90 | power[1-2]_label "pout[1-2]". LTC3880 only. | ||
91 | power[1-2]_input Measured power. | ||
92 | |||
93 | curr1_label "iin". LTC3880 only. | ||
94 | curr1_input Measured input current. | ||
95 | curr1_max Maximum input current. | ||
96 | curr1_max_alarm Input current high alarm. | ||
97 | |||
98 | curr[2-3]_label "iout[1-2]". LTC3880 only. | ||
99 | curr[2-3]_input Measured input current. | ||
100 | curr[2-3]_max Maximum input current. | ||
101 | curr[2-3]_crit Critical input current. | ||
102 | curr[2-3]_max_alarm Input current high alarm. | ||
103 | curr[2-3]_crit_alarm Input current critical high alarm. | ||
diff --git a/Documentation/hwmon/max16064 b/Documentation/hwmon/max16064 index f8b478076f6..f6e8bcbfacc 100644 --- a/Documentation/hwmon/max16064 +++ b/Documentation/hwmon/max16064 | |||
@@ -42,9 +42,9 @@ attributes are read-only. | |||
42 | 42 | ||
43 | in[1-4]_label "vout[1-4]" | 43 | in[1-4]_label "vout[1-4]" |
44 | in[1-4]_input Measured voltage. From READ_VOUT register. | 44 | in[1-4]_input Measured voltage. From READ_VOUT register. |
45 | in[1-4]_min Minimum Voltage. From VOUT_UV_WARN_LIMIT register. | 45 | in[1-4]_min Minumum Voltage. From VOUT_UV_WARN_LIMIT register. |
46 | in[1-4]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. | 46 | in[1-4]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. |
47 | in[1-4]_lcrit Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register. | 47 | in[1-4]_lcrit Critical minumum Voltage. VOUT_UV_FAULT_LIMIT register. |
48 | in[1-4]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. | 48 | in[1-4]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. |
49 | in[1-4]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. | 49 | in[1-4]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. |
50 | in[1-4]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. | 50 | in[1-4]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. |
diff --git a/Documentation/hwmon/max1619 b/Documentation/hwmon/max1619 index e6d87398cc8..d6f8d9cd7d7 100644 --- a/Documentation/hwmon/max1619 +++ b/Documentation/hwmon/max1619 | |||
@@ -9,7 +9,7 @@ Supported chips: | |||
9 | http://pdfserv.maxim-ic.com/en/ds/MAX1619.pdf | 9 | http://pdfserv.maxim-ic.com/en/ds/MAX1619.pdf |
10 | 10 | ||
11 | Authors: | 11 | Authors: |
12 | Oleksij Rempel <bug-track@fisher-privat.net>, | 12 | Alexey Fisher <fishor@mail.ru>, |
13 | Jean Delvare <khali@linux-fr.org> | 13 | Jean Delvare <khali@linux-fr.org> |
14 | 14 | ||
15 | Description | 15 | Description |
diff --git a/Documentation/hwmon/max197 b/Documentation/hwmon/max197 deleted file mode 100644 index 8d89b9009df..00000000000 --- a/Documentation/hwmon/max197 +++ /dev/null | |||
@@ -1,60 +0,0 @@ | |||
1 | Maxim MAX197 driver | ||
2 | =================== | ||
3 | |||
4 | Author: | ||
5 | * Vivien Didelot <vivien.didelot@savoirfairelinux.com> | ||
6 | |||
7 | Supported chips: | ||
8 | * Maxim MAX197 | ||
9 | Prefix: 'max197' | ||
10 | Datasheet: http://datasheets.maxim-ic.com/en/ds/MAX197.pdf | ||
11 | |||
12 | * Maxim MAX199 | ||
13 | Prefix: 'max199' | ||
14 | Datasheet: http://datasheets.maxim-ic.com/en/ds/MAX199.pdf | ||
15 | |||
16 | Description | ||
17 | ----------- | ||
18 | |||
19 | The A/D converters MAX197, and MAX199 are both 8-Channel, Multi-Range, 5V, | ||
20 | 12-Bit DAS with 8+4 Bus Interface and Fault Protection. | ||
21 | |||
22 | The available ranges for the MAX197 are {0,-5V} to 5V, and {0,-10V} to 10V, | ||
23 | while they are {0,-2V} to 2V, and {0,-4V} to 4V on the MAX199. | ||
24 | |||
25 | Platform data | ||
26 | ------------- | ||
27 | |||
28 | The MAX197 platform data (defined in linux/platform_data/max197.h) should be | ||
29 | filled with a pointer to a conversion function, defined like: | ||
30 | |||
31 | int convert(u8 ctrl); | ||
32 | |||
33 | ctrl is the control byte to write to start a new conversion. | ||
34 | On success, the function must return the 12-bit raw value read from the chip, | ||
35 | or a negative error code otherwise. | ||
36 | |||
37 | Control byte format: | ||
38 | |||
39 | Bit Name Description | ||
40 | 7,6 PD1,PD0 Clock and Power-Down modes | ||
41 | 5 ACQMOD Internal or External Controlled Acquisition | ||
42 | 4 RNG Full-scale voltage magnitude at the input | ||
43 | 3 BIP Unipolar or Bipolar conversion mode | ||
44 | 2,1,0 A2,A1,A0 Channel | ||
45 | |||
46 | Sysfs interface | ||
47 | --------------- | ||
48 | |||
49 | * in[0-7]_input: The conversion value for the corresponding channel. | ||
50 | RO | ||
51 | |||
52 | * in[0-7]_min: The lower limit (in mV) for the corresponding channel. | ||
53 | For the MAX197, it will be adjusted to -10000, -5000, or 0. | ||
54 | For the MAX199, it will be adjusted to -4000, -2000, or 0. | ||
55 | RW | ||
56 | |||
57 | * in[0-7]_max: The higher limit (in mV) for the corresponding channel. | ||
58 | For the MAX197, it will be adjusted to 0, 5000, or 10000. | ||
59 | For the MAX199, it will be adjusted to 0, 2000, or 4000. | ||
60 | RW | ||
diff --git a/Documentation/hwmon/max34440 b/Documentation/hwmon/max34440 index 04482226db2..8ab51536a1e 100644 --- a/Documentation/hwmon/max34440 +++ b/Documentation/hwmon/max34440 | |||
@@ -11,11 +11,6 @@ Supported chips: | |||
11 | Prefixes: 'max34441' | 11 | Prefixes: 'max34441' |
12 | Addresses scanned: - | 12 | Addresses scanned: - |
13 | Datasheet: http://datasheets.maxim-ic.com/en/ds/MAX34441.pdf | 13 | Datasheet: http://datasheets.maxim-ic.com/en/ds/MAX34441.pdf |
14 | * Maxim MAX34446 | ||
15 | PMBus Power-Supply Data Logger | ||
16 | Prefixes: 'max34446' | ||
17 | Addresses scanned: - | ||
18 | Datasheet: http://datasheets.maxim-ic.com/en/ds/MAX34446.pdf | ||
19 | 14 | ||
20 | Author: Guenter Roeck <guenter.roeck@ericsson.com> | 15 | Author: Guenter Roeck <guenter.roeck@ericsson.com> |
21 | 16 | ||
@@ -24,8 +19,8 @@ Description | |||
24 | ----------- | 19 | ----------- |
25 | 20 | ||
26 | This driver supports hardware montoring for Maxim MAX34440 PMBus 6-Channel | 21 | This driver supports hardware montoring for Maxim MAX34440 PMBus 6-Channel |
27 | Power-Supply Manager, MAX34441 PMBus 5-Channel Power-Supply Manager | 22 | Power-Supply Manager and MAX34441 PMBus 5-Channel Power-Supply Manager |
28 | and Intelligent Fan Controller, and MAX34446 PMBus Power-Supply Data Logger. | 23 | and Intelligent Fan Controller. |
29 | 24 | ||
30 | The driver is a client driver to the core PMBus driver. Please see | 25 | The driver is a client driver to the core PMBus driver. Please see |
31 | Documentation/hwmon/pmbus for details on PMBus client drivers. | 26 | Documentation/hwmon/pmbus for details on PMBus client drivers. |
@@ -38,13 +33,6 @@ This driver does not auto-detect devices. You will have to instantiate the | |||
38 | devices explicitly. Please see Documentation/i2c/instantiating-devices for | 33 | devices explicitly. Please see Documentation/i2c/instantiating-devices for |
39 | details. | 34 | details. |
40 | 35 | ||
41 | For MAX34446, the value of the currX_crit attribute determines if current or | ||
42 | voltage measurement is enabled for a given channel. Voltage measurement is | ||
43 | enabled if currX_crit is set to 0; current measurement is enabled if the | ||
44 | attribute is set to a positive value. Power measurement is only enabled if | ||
45 | channel 1 (3) is configured for voltage measurement, and channel 2 (4) is | ||
46 | configured for current measurement. | ||
47 | |||
48 | 36 | ||
49 | Platform data support | 37 | Platform data support |
50 | --------------------- | 38 | --------------------- |
@@ -60,39 +48,27 @@ attributes are read-only. | |||
60 | 48 | ||
61 | in[1-6]_label "vout[1-6]". | 49 | in[1-6]_label "vout[1-6]". |
62 | in[1-6]_input Measured voltage. From READ_VOUT register. | 50 | in[1-6]_input Measured voltage. From READ_VOUT register. |
63 | in[1-6]_min Minimum Voltage. From VOUT_UV_WARN_LIMIT register. | 51 | in[1-6]_min Minumum Voltage. From VOUT_UV_WARN_LIMIT register. |
64 | in[1-6]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. | 52 | in[1-6]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. |
65 | in[1-6]_lcrit Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register. | 53 | in[1-6]_lcrit Critical minumum Voltage. VOUT_UV_FAULT_LIMIT register. |
66 | in[1-6]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. | 54 | in[1-6]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. |
67 | in[1-6]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. | 55 | in[1-6]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. |
68 | in[1-6]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. | 56 | in[1-6]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. |
69 | in[1-6]_lcrit_alarm Voltage critical low alarm. From VOLTAGE_UV_FAULT status. | 57 | in[1-6]_lcrit_alarm Voltage critical low alarm. From VOLTAGE_UV_FAULT status. |
70 | in[1-6]_crit_alarm Voltage critical high alarm. From VOLTAGE_OV_FAULT status. | 58 | in[1-6]_crit_alarm Voltage critical high alarm. From VOLTAGE_OV_FAULT status. |
71 | in[1-6]_lowest Historical minimum voltage. | ||
72 | in[1-6]_highest Historical maximum voltage. | 59 | in[1-6]_highest Historical maximum voltage. |
73 | in[1-6]_reset_history Write any value to reset history. | 60 | in[1-6]_reset_history Write any value to reset history. |
74 | 61 | ||
75 | MAX34446 only supports in[1-4]. | ||
76 | |||
77 | curr[1-6]_label "iout[1-6]". | 62 | curr[1-6]_label "iout[1-6]". |
78 | curr[1-6]_input Measured current. From READ_IOUT register. | 63 | curr[1-6]_input Measured current. From READ_IOUT register. |
79 | curr[1-6]_max Maximum current. From IOUT_OC_WARN_LIMIT register. | 64 | curr[1-6]_max Maximum current. From IOUT_OC_WARN_LIMIT register. |
80 | curr[1-6]_crit Critical maximum current. From IOUT_OC_FAULT_LIMIT register. | 65 | curr[1-6]_crit Critical maximum current. From IOUT_OC_FAULT_LIMIT register. |
81 | curr[1-6]_max_alarm Current high alarm. From IOUT_OC_WARNING status. | 66 | curr[1-6]_max_alarm Current high alarm. From IOUT_OC_WARNING status. |
82 | curr[1-6]_crit_alarm Current critical high alarm. From IOUT_OC_FAULT status. | 67 | curr[1-6]_crit_alarm Current critical high alarm. From IOUT_OC_FAULT status. |
83 | curr[1-4]_average Historical average current (MAX34446 only). | ||
84 | curr[1-6]_highest Historical maximum current. | 68 | curr[1-6]_highest Historical maximum current. |
85 | curr[1-6]_reset_history Write any value to reset history. | 69 | curr[1-6]_reset_history Write any value to reset history. |
86 | 70 | ||
87 | in6 and curr6 attributes only exist for MAX34440. | 71 | in6 and curr6 attributes only exist for MAX34440. |
88 | MAX34446 only supports curr[1-4]. | ||
89 | |||
90 | power[1,3]_label "pout[1,3]" | ||
91 | power[1,3]_input Measured power. | ||
92 | power[1,3]_average Historical average power. | ||
93 | power[1,3]_highest Historical maximum power. | ||
94 | |||
95 | Power attributes only exist for MAX34446. | ||
96 | 72 | ||
97 | temp[1-8]_input Measured temperatures. From READ_TEMPERATURE_1 register. | 73 | temp[1-8]_input Measured temperatures. From READ_TEMPERATURE_1 register. |
98 | temp1 is the chip's internal temperature. temp2..temp5 | 74 | temp1 is the chip's internal temperature. temp2..temp5 |
@@ -103,9 +79,7 @@ temp[1-8]_max Maximum temperature. From OT_WARN_LIMIT register. | |||
103 | temp[1-8]_crit Critical high temperature. From OT_FAULT_LIMIT register. | 79 | temp[1-8]_crit Critical high temperature. From OT_FAULT_LIMIT register. |
104 | temp[1-8]_max_alarm Temperature high alarm. | 80 | temp[1-8]_max_alarm Temperature high alarm. |
105 | temp[1-8]_crit_alarm Temperature critical high alarm. | 81 | temp[1-8]_crit_alarm Temperature critical high alarm. |
106 | temp[1-8]_average Historical average temperature (MAX34446 only). | ||
107 | temp[1-8]_highest Historical maximum temperature. | 82 | temp[1-8]_highest Historical maximum temperature. |
108 | temp[1-8]_reset_history Write any value to reset history. | 83 | temp[1-8]_reset_history Write any value to reset history. |
109 | 84 | ||
110 | temp7 and temp8 attributes only exist for MAX34440. | 85 | temp7 and temp8 attributes only exist for MAX34440. |
111 | MAX34446 only supports temp[1-3]. | ||
diff --git a/Documentation/hwmon/max8688 b/Documentation/hwmon/max8688 index fe849871df3..71ed10a3c94 100644 --- a/Documentation/hwmon/max8688 +++ b/Documentation/hwmon/max8688 | |||
@@ -42,9 +42,9 @@ attributes are read-only. | |||
42 | 42 | ||
43 | in1_label "vout1" | 43 | in1_label "vout1" |
44 | in1_input Measured voltage. From READ_VOUT register. | 44 | in1_input Measured voltage. From READ_VOUT register. |
45 | in1_min Minimum Voltage. From VOUT_UV_WARN_LIMIT register. | 45 | in1_min Minumum Voltage. From VOUT_UV_WARN_LIMIT register. |
46 | in1_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. | 46 | in1_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. |
47 | in1_lcrit Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register. | 47 | in1_lcrit Critical minumum Voltage. VOUT_UV_FAULT_LIMIT register. |
48 | in1_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. | 48 | in1_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. |
49 | in1_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. | 49 | in1_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. |
50 | in1_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. | 50 | in1_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. |
diff --git a/Documentation/hwmon/mc13783-adc b/Documentation/hwmon/mc13783-adc index d0e7b3fa9e7..044531a8640 100644 --- a/Documentation/hwmon/mc13783-adc +++ b/Documentation/hwmon/mc13783-adc | |||
@@ -3,11 +3,8 @@ Kernel driver mc13783-adc | |||
3 | 3 | ||
4 | Supported chips: | 4 | Supported chips: |
5 | * Freescale Atlas MC13783 | 5 | * Freescale Atlas MC13783 |
6 | Prefix: 'mc13783' | 6 | Prefix: 'mc13783_adc' |
7 | Datasheet: http://www.freescale.com/files/rf_if/doc/data_sheet/MC13783.pdf?fsrch=1 | 7 | Datasheet: http://www.freescale.com/files/rf_if/doc/data_sheet/MC13783.pdf?fsrch=1 |
8 | * Freescale Atlas MC13892 | ||
9 | Prefix: 'mc13892' | ||
10 | Datasheet: http://cache.freescale.com/files/analog/doc/data_sheet/MC13892.pdf?fsrch=1&sr=1 | ||
11 | 8 | ||
12 | Authors: | 9 | Authors: |
13 | Sascha Hauer <s.hauer@pengutronix.de> | 10 | Sascha Hauer <s.hauer@pengutronix.de> |
@@ -16,21 +13,20 @@ Authors: | |||
16 | Description | 13 | Description |
17 | ----------- | 14 | ----------- |
18 | 15 | ||
19 | The Freescale MC13783 and MC13892 are Power Management and Audio Circuits. | 16 | The Freescale MC13783 is a Power Management and Audio Circuit. Among |
20 | Among other things they contain a 10-bit A/D converter. The converter has 16 | 17 | other things it contains a 10-bit A/D converter. The converter has 16 |
21 | (MC13783) resp. 12 (MC13892) channels which can be used in different modes. The | 18 | channels which can be used in different modes. |
22 | A/D converter has a resolution of 2.25mV. | 19 | The A/D converter has a resolution of 2.25mV. Channels 0-4 have |
20 | a dedicated meaning with chip internal scaling applied. Channels 5-7 | ||
21 | can be used as general purpose inputs or alternatively in a dedicated | ||
22 | mode. Channels 12-15 are occupied by the touchscreen if it's active. | ||
23 | 23 | ||
24 | Some channels can be used as General Purpose inputs or in a dedicated mode with | 24 | Currently the driver only supports channels 2 and 5-15 with no alternative |
25 | a chip internal scaling applied . | 25 | modes for channels 5-7. |
26 | 26 | ||
27 | Currently the driver only supports the Application Supply channel (BP / BPSNS), | 27 | See this table for the meaning of the different channels and their chip |
28 | the General Purpose inputs and touchscreen. | 28 | internal scaling: |
29 | 29 | ||
30 | See the following tables for the meaning of the different channels and their | ||
31 | chip internal scaling: | ||
32 | |||
33 | MC13783: | ||
34 | Channel Signal Input Range Scaling | 30 | Channel Signal Input Range Scaling |
35 | ------------------------------------------------------------------------------- | 31 | ------------------------------------------------------------------------------- |
36 | 0 Battery Voltage (BATT) 2.50 - 4.65V -2.40V | 32 | 0 Battery Voltage (BATT) 2.50 - 4.65V -2.40V |
@@ -38,7 +34,7 @@ Channel Signal Input Range Scaling | |||
38 | 2 Application Supply (BP) 2.50 - 4.65V -2.40V | 34 | 2 Application Supply (BP) 2.50 - 4.65V -2.40V |
39 | 3 Charger Voltage (CHRGRAW) 0 - 10V / /5 | 35 | 3 Charger Voltage (CHRGRAW) 0 - 10V / /5 |
40 | 0 - 20V /10 | 36 | 0 - 20V /10 |
41 | 4 Charger Current (CHRGISNSP-CHRGISNSN) -0.25 - 0.25V x4 | 37 | 4 Charger Current (CHRGISNSP-CHRGISNSN) -0.25V - 0.25V x4 |
42 | 5 General Purpose ADIN5 / Battery Pack Thermistor 0 - 2.30V No | 38 | 5 General Purpose ADIN5 / Battery Pack Thermistor 0 - 2.30V No |
43 | 6 General Purpose ADIN6 / Backup Voltage (LICELL) 0 - 2.30V / No / | 39 | 6 General Purpose ADIN6 / Backup Voltage (LICELL) 0 - 2.30V / No / |
44 | 1.50 - 3.50V -1.20V | 40 | 1.50 - 3.50V -1.20V |
@@ -52,23 +48,3 @@ Channel Signal Input Range Scaling | |||
52 | 13 General Purpose TSX2 / Touchscreen X-plate 2 0 - 2.30V No | 48 | 13 General Purpose TSX2 / Touchscreen X-plate 2 0 - 2.30V No |
53 | 14 General Purpose TSY1 / Touchscreen Y-plate 1 0 - 2.30V No | 49 | 14 General Purpose TSY1 / Touchscreen Y-plate 1 0 - 2.30V No |
54 | 15 General Purpose TSY2 / Touchscreen Y-plate 2 0 - 2.30V No | 50 | 15 General Purpose TSY2 / Touchscreen Y-plate 2 0 - 2.30V No |
55 | |||
56 | MC13892: | ||
57 | Channel Signal Input Range Scaling | ||
58 | ------------------------------------------------------------------------------- | ||
59 | 0 Battery Voltage (BATT) 0 - 4.8V /2 | ||
60 | 1 Battery Current (BATT - BATTISNSCC) -60 - 60 mV x20 | ||
61 | 2 Application Supply (BPSNS) 0 - 4.8V /2 | ||
62 | 3 Charger Voltage (CHRGRAW) 0 - 12V / /5 | ||
63 | 0 - 20V /10 | ||
64 | 4 Charger Current (CHRGISNS-BPSNS) / -0.3 - 0.3V / x4 / | ||
65 | Touchscreen X-plate 1 0 - 2.4V No | ||
66 | 5 General Purpose ADIN5 / Battery Pack Thermistor 0 - 2.4V No | ||
67 | 6 General Purpose ADIN6 / Backup Voltage (LICELL) 0 - 2.4V / No | ||
68 | Backup Voltage (LICELL) 0 - 3.6V x2/3 | ||
69 | 7 General Purpose ADIN7 / UID / Die Temperature 0 - 2.4V / No / | ||
70 | 0 - 4.8V /2 | ||
71 | 12 General Purpose TSX1 / Touchscreen X-plate 1 0 - 2.4V No | ||
72 | 13 General Purpose TSX2 / Touchscreen X-plate 2 0 - 2.4V No | ||
73 | 14 General Purpose TSY1 / Touchscreen Y-plate 1 0 - 2.4V No | ||
74 | 15 General Purpose TSY2 / Touchscreen Y-plate 2 0 - 2.4V No | ||
diff --git a/Documentation/hwmon/mcp3021 b/Documentation/hwmon/mcp3021 deleted file mode 100644 index 74a6b72adf5..00000000000 --- a/Documentation/hwmon/mcp3021 +++ /dev/null | |||
@@ -1,29 +0,0 @@ | |||
1 | Kernel driver MCP3021 | ||
2 | ====================== | ||
3 | |||
4 | Supported chips: | ||
5 | * Microchip Technology MCP3021 | ||
6 | Prefix: 'mcp3021' | ||
7 | Datasheet: http://ww1.microchip.com/downloads/en/DeviceDoc/21805a.pdf | ||
8 | * Microchip Technology MCP3221 | ||
9 | Prefix: 'mcp3221' | ||
10 | Datasheet: http://ww1.microchip.com/downloads/en/DeviceDoc/21732c.pdf | ||
11 | |||
12 | Authors: | ||
13 | Mingkai Hu | ||
14 | Sven Schuchmann <schuchmann@schleissheimer.de> | ||
15 | |||
16 | Description | ||
17 | ----------- | ||
18 | |||
19 | This driver implements support for the Microchip Technology MCP3021 and | ||
20 | MCP3221 chip. | ||
21 | |||
22 | The Microchip Technology Inc. MCP3021 is a successive approximation A/D | ||
23 | converter (ADC) with 10-bit resolution. The MCP3221 has 12-bit resolution. | ||
24 | |||
25 | These devices provide one single-ended input with very low power consumption. | ||
26 | Communication to the MCP3021/MCP3221 is performed using a 2-wire I2C | ||
27 | compatible interface. Standard (100 kHz) and Fast (400 kHz) I2C modes are | ||
28 | available. The default I2C device address is 0x4d (contact the Microchip | ||
29 | factory for additional address options). | ||
diff --git a/Documentation/hwmon/pmbus b/Documentation/hwmon/pmbus index 3d3a0f97f96..c36c1c1a62b 100644 --- a/Documentation/hwmon/pmbus +++ b/Documentation/hwmon/pmbus | |||
@@ -2,11 +2,17 @@ Kernel driver pmbus | |||
2 | ==================== | 2 | ==================== |
3 | 3 | ||
4 | Supported chips: | 4 | Supported chips: |
5 | * Ericsson BMR453, BMR454 | 5 | * Ericsson BMR45X series |
6 | Prefixes: 'bmr453', 'bmr454' | 6 | DC/DC Converter |
7 | Prefixes: 'bmr450', 'bmr451', 'bmr453', 'bmr454' | ||
7 | Addresses scanned: - | 8 | Addresses scanned: - |
8 | Datasheet: | 9 | Datasheet: |
9 | http://archive.ericsson.net/service/internet/picov/get?DocNo=28701-EN/LZT146395 | 10 | http://archive.ericsson.net/service/internet/picov/get?DocNo=28701-EN/LZT146395 |
11 | * Linear Technology LTC2978 | ||
12 | Octal PMBus Power Supply Monitor and Controller | ||
13 | Prefix: 'ltc2978' | ||
14 | Addresses scanned: - | ||
15 | Datasheet: http://cds.linear.com/docs/Datasheet/2978fa.pdf | ||
10 | * ON Semiconductor ADP4000, NCP4200, NCP4208 | 16 | * ON Semiconductor ADP4000, NCP4200, NCP4208 |
11 | Prefixes: 'adp4000', 'ncp4200', 'ncp4208' | 17 | Prefixes: 'adp4000', 'ncp4200', 'ncp4208' |
12 | Addresses scanned: - | 18 | Addresses scanned: - |
@@ -14,21 +20,6 @@ Supported chips: | |||
14 | http://www.onsemi.com/pub_link/Collateral/ADP4000-D.PDF | 20 | http://www.onsemi.com/pub_link/Collateral/ADP4000-D.PDF |
15 | http://www.onsemi.com/pub_link/Collateral/NCP4200-D.PDF | 21 | http://www.onsemi.com/pub_link/Collateral/NCP4200-D.PDF |
16 | http://www.onsemi.com/pub_link/Collateral/JUNE%202009-%20REV.%200.PDF | 22 | http://www.onsemi.com/pub_link/Collateral/JUNE%202009-%20REV.%200.PDF |
17 | * Lineage Power | ||
18 | Prefixes: 'mdt040', 'pdt003', 'pdt006', 'pdt012', 'udt020' | ||
19 | Addresses scanned: - | ||
20 | Datasheets: | ||
21 | http://www.lineagepower.com/oem/pdf/PDT003A0X.pdf | ||
22 | http://www.lineagepower.com/oem/pdf/PDT006A0X.pdf | ||
23 | http://www.lineagepower.com/oem/pdf/PDT012A0X.pdf | ||
24 | http://www.lineagepower.com/oem/pdf/UDT020A0X.pdf | ||
25 | http://www.lineagepower.com/oem/pdf/MDT040A0X.pdf | ||
26 | * Texas Instruments TPS40400, TPS40422 | ||
27 | Prefixes: 'tps40400', 'tps40422' | ||
28 | Addresses scanned: - | ||
29 | Datasheets: | ||
30 | http://www.ti.com/lit/gpn/tps40400 | ||
31 | http://www.ti.com/lit/gpn/tps40422 | ||
32 | * Generic PMBus devices | 23 | * Generic PMBus devices |
33 | Prefix: 'pmbus' | 24 | Prefix: 'pmbus' |
34 | Addresses scanned: - | 25 | Addresses scanned: - |
@@ -138,7 +129,7 @@ Sysfs entries | |||
138 | 129 | ||
139 | When probing the chip, the driver identifies which PMBus registers are | 130 | When probing the chip, the driver identifies which PMBus registers are |
140 | supported, and determines available sensors from this information. | 131 | supported, and determines available sensors from this information. |
141 | Attribute files only exist if respective sensors are supported by the chip. | 132 | Attribute files only exist if respective sensors are suported by the chip. |
142 | Labels are provided to inform the user about the sensor associated with | 133 | Labels are provided to inform the user about the sensor associated with |
143 | a given sysfs entry. | 134 | a given sysfs entry. |
144 | 135 | ||
diff --git a/Documentation/hwmon/pmbus-core b/Documentation/hwmon/pmbus-core deleted file mode 100644 index 31e4720fed1..00000000000 --- a/Documentation/hwmon/pmbus-core +++ /dev/null | |||
@@ -1,283 +0,0 @@ | |||
1 | PMBus core driver and internal API | ||
2 | ================================== | ||
3 | |||
4 | Introduction | ||
5 | ============ | ||
6 | |||
7 | [from pmbus.org] The Power Management Bus (PMBus) is an open standard | ||
8 | power-management protocol with a fully defined command language that facilitates | ||
9 | communication with power converters and other devices in a power system. The | ||
10 | protocol is implemented over the industry-standard SMBus serial interface and | ||
11 | enables programming, control, and real-time monitoring of compliant power | ||
12 | conversion products. This flexible and highly versatile standard allows for | ||
13 | communication between devices based on both analog and digital technologies, and | ||
14 | provides true interoperability which will reduce design complexity and shorten | ||
15 | time to market for power system designers. Pioneered by leading power supply and | ||
16 | semiconductor companies, this open power system standard is maintained and | ||
17 | promoted by the PMBus Implementers Forum (PMBus-IF), comprising 30+ adopters | ||
18 | with the objective to provide support to, and facilitate adoption among, users. | ||
19 | |||
20 | Unfortunately, while PMBus commands are standardized, there are no mandatory | ||
21 | commands, and manufacturers can add as many non-standard commands as they like. | ||
22 | Also, different PMBUs devices act differently if non-supported commands are | ||
23 | executed. Some devices return an error, some devices return 0xff or 0xffff and | ||
24 | set a status error flag, and some devices may simply hang up. | ||
25 | |||
26 | Despite all those difficulties, a generic PMBus device driver is still useful | ||
27 | and supported since kernel version 2.6.39. However, it was necessary to support | ||
28 | device specific extensions in addition to the core PMBus driver, since it is | ||
29 | simply unknown what new device specific functionality PMBus device developers | ||
30 | come up with next. | ||
31 | |||
32 | To make device specific extensions as scalable as possible, and to avoid having | ||
33 | to modify the core PMBus driver repeatedly for new devices, the PMBus driver was | ||
34 | split into core, generic, and device specific code. The core code (in | ||
35 | pmbus_core.c) provides generic functionality. The generic code (in pmbus.c) | ||
36 | provides support for generic PMBus devices. Device specific code is responsible | ||
37 | for device specific initialization and, if needed, maps device specific | ||
38 | functionality into generic functionality. This is to some degree comparable | ||
39 | to PCI code, where generic code is augmented as needed with quirks for all kinds | ||
40 | of devices. | ||
41 | |||
42 | PMBus device capabilities auto-detection | ||
43 | ======================================== | ||
44 | |||
45 | For generic PMBus devices, code in pmbus.c attempts to auto-detect all supported | ||
46 | PMBus commands. Auto-detection is somewhat limited, since there are simply too | ||
47 | many variables to consider. For example, it is almost impossible to autodetect | ||
48 | which PMBus commands are paged and which commands are replicated across all | ||
49 | pages (see the PMBus specification for details on multi-page PMBus devices). | ||
50 | |||
51 | For this reason, it often makes sense to provide a device specific driver if not | ||
52 | all commands can be auto-detected. The data structures in this driver can be | ||
53 | used to inform the core driver about functionality supported by individual | ||
54 | chips. | ||
55 | |||
56 | Some commands are always auto-detected. This applies to all limit commands | ||
57 | (lcrit, min, max, and crit attributes) as well as associated alarm attributes. | ||
58 | Limits and alarm attributes are auto-detected because there are simply too many | ||
59 | possible combinations to provide a manual configuration interface. | ||
60 | |||
61 | PMBus internal API | ||
62 | ================== | ||
63 | |||
64 | The API between core and device specific PMBus code is defined in | ||
65 | drivers/hwmon/pmbus/pmbus.h. In addition to the internal API, pmbus.h defines | ||
66 | standard PMBus commands and virtual PMBus commands. | ||
67 | |||
68 | Standard PMBus commands | ||
69 | ----------------------- | ||
70 | |||
71 | Standard PMBus commands (commands values 0x00 to 0xff) are defined in the PMBUs | ||
72 | specification. | ||
73 | |||
74 | Virtual PMBus commands | ||
75 | ---------------------- | ||
76 | |||
77 | Virtual PMBus commands are provided to enable support for non-standard | ||
78 | functionality which has been implemented by several chip vendors and is thus | ||
79 | desirable to support. | ||
80 | |||
81 | Virtual PMBus commands start with command value 0x100 and can thus easily be | ||
82 | distinguished from standard PMBus commands (which can not have values larger | ||
83 | than 0xff). Support for virtual PMBus commands is device specific and thus has | ||
84 | to be implemented in device specific code. | ||
85 | |||
86 | Virtual commands are named PMBUS_VIRT_xxx and start with PMBUS_VIRT_BASE. All | ||
87 | virtual commands are word sized. | ||
88 | |||
89 | There are currently two types of virtual commands. | ||
90 | |||
91 | - READ commands are read-only; writes are either ignored or return an error. | ||
92 | - RESET commands are read/write. Reading reset registers returns zero | ||
93 | (used for detection), writing any value causes the associated history to be | ||
94 | reset. | ||
95 | |||
96 | Virtual commands have to be handled in device specific driver code. Chip driver | ||
97 | code returns non-negative values if a virtual command is supported, or a | ||
98 | negative error code if not. The chip driver may return -ENODATA or any other | ||
99 | Linux error code in this case, though an error code other than -ENODATA is | ||
100 | handled more efficiently and thus preferred. Either case, the calling PMBus | ||
101 | core code will abort if the chip driver returns an error code when reading | ||
102 | or writing virtual registers (in other words, the PMBus core code will never | ||
103 | send a virtual command to a chip). | ||
104 | |||
105 | PMBus driver information | ||
106 | ------------------------ | ||
107 | |||
108 | PMBus driver information, defined in struct pmbus_driver_info, is the main means | ||
109 | for device specific drivers to pass information to the core PMBus driver. | ||
110 | Specifically, it provides the following information. | ||
111 | |||
112 | - For devices supporting its data in Direct Data Format, it provides coefficients | ||
113 | for converting register values into normalized data. This data is usually | ||
114 | provided by chip manufacturers in device datasheets. | ||
115 | - Supported chip functionality can be provided to the core driver. This may be | ||
116 | necessary for chips which react badly if non-supported commands are executed, | ||
117 | and/or to speed up device detection and initialization. | ||
118 | - Several function entry points are provided to support overriding and/or | ||
119 | augmenting generic command execution. This functionality can be used to map | ||
120 | non-standard PMBus commands to standard commands, or to augment standard | ||
121 | command return values with device specific information. | ||
122 | |||
123 | API functions | ||
124 | ------------- | ||
125 | |||
126 | Functions provided by chip driver | ||
127 | --------------------------------- | ||
128 | |||
129 | All functions return the command return value (read) or zero (write) if | ||
130 | successful. A return value of -ENODATA indicates that there is no manufacturer | ||
131 | specific command, but that a standard PMBus command may exist. Any other | ||
132 | negative return value indicates that the commands does not exist for this | ||
133 | chip, and that no attempt should be made to read or write the standard | ||
134 | command. | ||
135 | |||
136 | As mentioned above, an exception to this rule applies to virtual commands, | ||
137 | which _must_ be handled in driver specific code. See "Virtual PMBus Commands" | ||
138 | above for more details. | ||
139 | |||
140 | Command execution in the core PMBus driver code is as follows. | ||
141 | |||
142 | if (chip_access_function) { | ||
143 | status = chip_access_function(); | ||
144 | if (status != -ENODATA) | ||
145 | return status; | ||
146 | } | ||
147 | if (command >= PMBUS_VIRT_BASE) /* For word commands/registers only */ | ||
148 | return -EINVAL; | ||
149 | return generic_access(); | ||
150 | |||
151 | Chip drivers may provide pointers to the following functions in struct | ||
152 | pmbus_driver_info. All functions are optional. | ||
153 | |||
154 | int (*read_byte_data)(struct i2c_client *client, int page, int reg); | ||
155 | |||
156 | Read byte from page <page>, register <reg>. | ||
157 | <page> may be -1, which means "current page". | ||
158 | |||
159 | int (*read_word_data)(struct i2c_client *client, int page, int reg); | ||
160 | |||
161 | Read word from page <page>, register <reg>. | ||
162 | |||
163 | int (*write_word_data)(struct i2c_client *client, int page, int reg, | ||
164 | u16 word); | ||
165 | |||
166 | Write word to page <page>, register <reg>. | ||
167 | |||
168 | int (*write_byte)(struct i2c_client *client, int page, u8 value); | ||
169 | |||
170 | Write byte to page <page>, register <reg>. | ||
171 | <page> may be -1, which means "current page". | ||
172 | |||
173 | int (*identify)(struct i2c_client *client, struct pmbus_driver_info *info); | ||
174 | |||
175 | Determine supported PMBus functionality. This function is only necessary | ||
176 | if a chip driver supports multiple chips, and the chip functionality is not | ||
177 | pre-determined. It is currently only used by the generic pmbus driver | ||
178 | (pmbus.c). | ||
179 | |||
180 | Functions exported by core driver | ||
181 | --------------------------------- | ||
182 | |||
183 | Chip drivers are expected to use the following functions to read or write | ||
184 | PMBus registers. Chip drivers may also use direct I2C commands. If direct I2C | ||
185 | commands are used, the chip driver code must not directly modify the current | ||
186 | page, since the selected page is cached in the core driver and the core driver | ||
187 | will assume that it is selected. Using pmbus_set_page() to select a new page | ||
188 | is mandatory. | ||
189 | |||
190 | int pmbus_set_page(struct i2c_client *client, u8 page); | ||
191 | |||
192 | Set PMBus page register to <page> for subsequent commands. | ||
193 | |||
194 | int pmbus_read_word_data(struct i2c_client *client, u8 page, u8 reg); | ||
195 | |||
196 | Read word data from <page>, <reg>. Similar to i2c_smbus_read_word_data(), but | ||
197 | selects page first. | ||
198 | |||
199 | int pmbus_write_word_data(struct i2c_client *client, u8 page, u8 reg, | ||
200 | u16 word); | ||
201 | |||
202 | Write word data to <page>, <reg>. Similar to i2c_smbus_write_word_data(), but | ||
203 | selects page first. | ||
204 | |||
205 | int pmbus_read_byte_data(struct i2c_client *client, int page, u8 reg); | ||
206 | |||
207 | Read byte data from <page>, <reg>. Similar to i2c_smbus_read_byte_data(), but | ||
208 | selects page first. <page> may be -1, which means "current page". | ||
209 | |||
210 | int pmbus_write_byte(struct i2c_client *client, int page, u8 value); | ||
211 | |||
212 | Write byte data to <page>, <reg>. Similar to i2c_smbus_write_byte(), but | ||
213 | selects page first. <page> may be -1, which means "current page". | ||
214 | |||
215 | void pmbus_clear_faults(struct i2c_client *client); | ||
216 | |||
217 | Execute PMBus "Clear Fault" command on all chip pages. | ||
218 | This function calls the device specific write_byte function if defined. | ||
219 | Therefore, it must _not_ be called from that function. | ||
220 | |||
221 | bool pmbus_check_byte_register(struct i2c_client *client, int page, int reg); | ||
222 | |||
223 | Check if byte register exists. Return true if the register exists, false | ||
224 | otherwise. | ||
225 | This function calls the device specific write_byte function if defined to | ||
226 | obtain the chip status. Therefore, it must _not_ be called from that function. | ||
227 | |||
228 | bool pmbus_check_word_register(struct i2c_client *client, int page, int reg); | ||
229 | |||
230 | Check if word register exists. Return true if the register exists, false | ||
231 | otherwise. | ||
232 | This function calls the device specific write_byte function if defined to | ||
233 | obtain the chip status. Therefore, it must _not_ be called from that function. | ||
234 | |||
235 | int pmbus_do_probe(struct i2c_client *client, const struct i2c_device_id *id, | ||
236 | struct pmbus_driver_info *info); | ||
237 | |||
238 | Execute probe function. Similar to standard probe function for other drivers, | ||
239 | with the pointer to struct pmbus_driver_info as additional argument. Calls | ||
240 | identify function if supported. Must only be called from device probe | ||
241 | function. | ||
242 | |||
243 | void pmbus_do_remove(struct i2c_client *client); | ||
244 | |||
245 | Execute driver remove function. Similar to standard driver remove function. | ||
246 | |||
247 | const struct pmbus_driver_info | ||
248 | *pmbus_get_driver_info(struct i2c_client *client); | ||
249 | |||
250 | Return pointer to struct pmbus_driver_info as passed to pmbus_do_probe(). | ||
251 | |||
252 | |||
253 | PMBus driver platform data | ||
254 | ========================== | ||
255 | |||
256 | PMBus platform data is defined in include/linux/i2c/pmbus.h. Platform data | ||
257 | currently only provides a flag field with a single bit used. | ||
258 | |||
259 | #define PMBUS_SKIP_STATUS_CHECK (1 << 0) | ||
260 | |||
261 | struct pmbus_platform_data { | ||
262 | u32 flags; /* Device specific flags */ | ||
263 | }; | ||
264 | |||
265 | |||
266 | Flags | ||
267 | ----- | ||
268 | |||
269 | PMBUS_SKIP_STATUS_CHECK | ||
270 | |||
271 | During register detection, skip checking the status register for | ||
272 | communication or command errors. | ||
273 | |||
274 | Some PMBus chips respond with valid data when trying to read an unsupported | ||
275 | register. For such chips, checking the status register is mandatory when | ||
276 | trying to determine if a chip register exists or not. | ||
277 | Other PMBus chips don't support the STATUS_CML register, or report | ||
278 | communication errors for no explicable reason. For such chips, checking the | ||
279 | status register must be disabled. | ||
280 | |||
281 | Some i2c controllers do not support single-byte commands (write commands with | ||
282 | no data, i2c_smbus_write_byte()). With such controllers, clearing the status | ||
283 | register is impossible, and the PMBUS_SKIP_STATUS_CHECK flag must be set. | ||
diff --git a/Documentation/hwmon/sch5627 b/Documentation/hwmon/sch5627 index 0551d266c51..446a054e491 100644 --- a/Documentation/hwmon/sch5627 +++ b/Documentation/hwmon/sch5627 | |||
@@ -16,11 +16,6 @@ Description | |||
16 | SMSC SCH5627 Super I/O chips include complete hardware monitoring | 16 | SMSC SCH5627 Super I/O chips include complete hardware monitoring |
17 | capabilities. They can monitor up to 5 voltages, 4 fans and 8 temperatures. | 17 | capabilities. They can monitor up to 5 voltages, 4 fans and 8 temperatures. |
18 | 18 | ||
19 | The SMSC SCH5627 hardware monitoring part also contains an integrated | ||
20 | watchdog. In order for this watchdog to function some motherboard specific | ||
21 | initialization most be done by the BIOS, so if the watchdog is not enabled | ||
22 | by the BIOS the sch5627 driver will not register a watchdog device. | ||
23 | |||
24 | The hardware monitoring part of the SMSC SCH5627 is accessed by talking | 19 | The hardware monitoring part of the SMSC SCH5627 is accessed by talking |
25 | through an embedded microcontroller. An application note describing the | 20 | through an embedded microcontroller. An application note describing the |
26 | protocol for communicating with the microcontroller is available upon | 21 | protocol for communicating with the microcontroller is available upon |
diff --git a/Documentation/hwmon/sch5636 b/Documentation/hwmon/sch5636 index 7b0a01da071..f83bd1c260f 100644 --- a/Documentation/hwmon/sch5636 +++ b/Documentation/hwmon/sch5636 | |||
@@ -26,9 +26,6 @@ temperatures. Note that the driver detects how many fan headers / | |||
26 | temperature sensors are actually implemented on the motherboard, so you will | 26 | temperature sensors are actually implemented on the motherboard, so you will |
27 | likely see fewer temperature and fan inputs. | 27 | likely see fewer temperature and fan inputs. |
28 | 28 | ||
29 | The Fujitsu Theseus hwmon solution also contains an integrated watchdog. | ||
30 | This watchdog is fully supported by the sch5636 driver. | ||
31 | |||
32 | An application note describing the Theseus' registers, as well as an | 29 | An application note describing the Theseus' registers, as well as an |
33 | application note describing the protocol for communicating with the | 30 | application note describing the protocol for communicating with the |
34 | microcontroller is available upon request. Please mail me if you want a copy. | 31 | microcontroller is available upon request. Please mail me if you want a copy. |
diff --git a/Documentation/hwmon/submitting-patches b/Documentation/hwmon/submitting-patches index 843751c41fe..86f42e8e9e4 100644 --- a/Documentation/hwmon/submitting-patches +++ b/Documentation/hwmon/submitting-patches | |||
@@ -60,7 +60,8 @@ increase the chances of your change being accepted. | |||
60 | 60 | ||
61 | * Add the driver to Kconfig and Makefile in alphabetical order. | 61 | * Add the driver to Kconfig and Makefile in alphabetical order. |
62 | 62 | ||
63 | * Make sure that all dependencies are listed in Kconfig. | 63 | * Make sure that all dependencies are listed in Kconfig. For new drivers, it |
64 | is most likely prudent to add a dependency on EXPERIMENTAL. | ||
64 | 65 | ||
65 | * Avoid forward declarations if you can. Rearrange the code if necessary. | 66 | * Avoid forward declarations if you can. Rearrange the code if necessary. |
66 | 67 | ||
@@ -69,9 +70,6 @@ increase the chances of your change being accepted. | |||
69 | review more difficult. It may also result in code which is more complicated | 70 | review more difficult. It may also result in code which is more complicated |
70 | than necessary. Use inline functions or just regular functions instead. | 71 | than necessary. Use inline functions or just regular functions instead. |
71 | 72 | ||
72 | * Use devres functions whenever possible to allocate resources. For rationale | ||
73 | and supported functions, please see Documentation/driver-model/devres.txt. | ||
74 | |||
75 | * If the driver has a detect function, make sure it is silent. Debug messages | 73 | * If the driver has a detect function, make sure it is silent. Debug messages |
76 | and messages printed after a successful detection are acceptable, but it | 74 | and messages printed after a successful detection are acceptable, but it |
77 | must not print messages such as "Chip XXX not found/supported". | 75 | must not print messages such as "Chip XXX not found/supported". |
diff --git a/Documentation/hwmon/sysfs-interface b/Documentation/hwmon/sysfs-interface index 1f4dd855a29..a4aa8f600e0 100644 --- a/Documentation/hwmon/sysfs-interface +++ b/Documentation/hwmon/sysfs-interface | |||
@@ -304,7 +304,7 @@ value (fastest fan speed) wins. | |||
304 | temp[1-*]_type Sensor type selection. | 304 | temp[1-*]_type Sensor type selection. |
305 | Integers 1 to 6 | 305 | Integers 1 to 6 |
306 | RW | 306 | RW |
307 | 1: CPU embedded diode | 307 | 1: PII/Celeron Diode |
308 | 2: 3904 transistor | 308 | 2: 3904 transistor |
309 | 3: thermal diode | 309 | 3: thermal diode |
310 | 4: thermistor | 310 | 4: thermistor |
diff --git a/Documentation/hwmon/twl4030-madc-hwmon b/Documentation/hwmon/twl4030-madc-hwmon index c3a3a5be10a..ef7984317ce 100644 --- a/Documentation/hwmon/twl4030-madc-hwmon +++ b/Documentation/hwmon/twl4030-madc-hwmon | |||
@@ -41,5 +41,5 @@ Channel Signal | |||
41 | 41 | ||
42 | The Sysfs nodes will represent the voltage in the units of mV, | 42 | The Sysfs nodes will represent the voltage in the units of mV, |
43 | the temperature channel shows the converted temperature in | 43 | the temperature channel shows the converted temperature in |
44 | degree Celsius. The Battery charging current channel represents | 44 | degree celcius. The Battery charging current channel represents |
45 | battery charging current in mA. | 45 | battery charging current in mA. |
diff --git a/Documentation/hwmon/ucd9000 b/Documentation/hwmon/ucd9000 index 0df5f276505..40ca6db50c4 100644 --- a/Documentation/hwmon/ucd9000 +++ b/Documentation/hwmon/ucd9000 | |||
@@ -70,9 +70,9 @@ attributes are read-only. | |||
70 | 70 | ||
71 | in[1-12]_label "vout[1-12]". | 71 | in[1-12]_label "vout[1-12]". |
72 | in[1-12]_input Measured voltage. From READ_VOUT register. | 72 | in[1-12]_input Measured voltage. From READ_VOUT register. |
73 | in[1-12]_min Minimum Voltage. From VOUT_UV_WARN_LIMIT register. | 73 | in[1-12]_min Minumum Voltage. From VOUT_UV_WARN_LIMIT register. |
74 | in[1-12]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. | 74 | in[1-12]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. |
75 | in[1-12]_lcrit Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register. | 75 | in[1-12]_lcrit Critical minumum Voltage. VOUT_UV_FAULT_LIMIT register. |
76 | in[1-12]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. | 76 | in[1-12]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. |
77 | in[1-12]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. | 77 | in[1-12]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. |
78 | in[1-12]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. | 78 | in[1-12]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. |
@@ -82,7 +82,7 @@ in[1-12]_crit_alarm Voltage critical high alarm. From VOLTAGE_OV_FAULT status. | |||
82 | curr[1-12]_label "iout[1-12]". | 82 | curr[1-12]_label "iout[1-12]". |
83 | curr[1-12]_input Measured current. From READ_IOUT register. | 83 | curr[1-12]_input Measured current. From READ_IOUT register. |
84 | curr[1-12]_max Maximum current. From IOUT_OC_WARN_LIMIT register. | 84 | curr[1-12]_max Maximum current. From IOUT_OC_WARN_LIMIT register. |
85 | curr[1-12]_lcrit Critical minimum output current. From IOUT_UC_FAULT_LIMIT | 85 | curr[1-12]_lcrit Critical minumum output current. From IOUT_UC_FAULT_LIMIT |
86 | register. | 86 | register. |
87 | curr[1-12]_crit Critical maximum current. From IOUT_OC_FAULT_LIMIT register. | 87 | curr[1-12]_crit Critical maximum current. From IOUT_OC_FAULT_LIMIT register. |
88 | curr[1-12]_max_alarm Current high alarm. From IOUT_OC_WARNING status. | 88 | curr[1-12]_max_alarm Current high alarm. From IOUT_OC_WARNING status. |
diff --git a/Documentation/hwmon/ucd9200 b/Documentation/hwmon/ucd9200 index fd7d07b1908..3c58607f72f 100644 --- a/Documentation/hwmon/ucd9200 +++ b/Documentation/hwmon/ucd9200 | |||
@@ -54,9 +54,9 @@ attributes are read-only. | |||
54 | 54 | ||
55 | in1_label "vin". | 55 | in1_label "vin". |
56 | in1_input Measured voltage. From READ_VIN register. | 56 | in1_input Measured voltage. From READ_VIN register. |
57 | in1_min Minimum Voltage. From VIN_UV_WARN_LIMIT register. | 57 | in1_min Minumum Voltage. From VIN_UV_WARN_LIMIT register. |
58 | in1_max Maximum voltage. From VIN_OV_WARN_LIMIT register. | 58 | in1_max Maximum voltage. From VIN_OV_WARN_LIMIT register. |
59 | in1_lcrit Critical minimum Voltage. VIN_UV_FAULT_LIMIT register. | 59 | in1_lcrit Critical minumum Voltage. VIN_UV_FAULT_LIMIT register. |
60 | in1_crit Critical maximum voltage. From VIN_OV_FAULT_LIMIT register. | 60 | in1_crit Critical maximum voltage. From VIN_OV_FAULT_LIMIT register. |
61 | in1_min_alarm Voltage low alarm. From VIN_UV_WARNING status. | 61 | in1_min_alarm Voltage low alarm. From VIN_UV_WARNING status. |
62 | in1_max_alarm Voltage high alarm. From VIN_OV_WARNING status. | 62 | in1_max_alarm Voltage high alarm. From VIN_OV_WARNING status. |
@@ -65,9 +65,9 @@ in1_crit_alarm Voltage critical high alarm. From VIN_OV_FAULT status. | |||
65 | 65 | ||
66 | in[2-5]_label "vout[1-4]". | 66 | in[2-5]_label "vout[1-4]". |
67 | in[2-5]_input Measured voltage. From READ_VOUT register. | 67 | in[2-5]_input Measured voltage. From READ_VOUT register. |
68 | in[2-5]_min Minimum Voltage. From VOUT_UV_WARN_LIMIT register. | 68 | in[2-5]_min Minumum Voltage. From VOUT_UV_WARN_LIMIT register. |
69 | in[2-5]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. | 69 | in[2-5]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register. |
70 | in[2-5]_lcrit Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register. | 70 | in[2-5]_lcrit Critical minumum Voltage. VOUT_UV_FAULT_LIMIT register. |
71 | in[2-5]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. | 71 | in[2-5]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT register. |
72 | in[2-5]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. | 72 | in[2-5]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status. |
73 | in[2-5]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. | 73 | in[2-5]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status. |
@@ -80,7 +80,7 @@ curr1_input Measured current. From READ_IIN register. | |||
80 | curr[2-5]_label "iout[1-4]". | 80 | curr[2-5]_label "iout[1-4]". |
81 | curr[2-5]_input Measured current. From READ_IOUT register. | 81 | curr[2-5]_input Measured current. From READ_IOUT register. |
82 | curr[2-5]_max Maximum current. From IOUT_OC_WARN_LIMIT register. | 82 | curr[2-5]_max Maximum current. From IOUT_OC_WARN_LIMIT register. |
83 | curr[2-5]_lcrit Critical minimum output current. From IOUT_UC_FAULT_LIMIT | 83 | curr[2-5]_lcrit Critical minumum output current. From IOUT_UC_FAULT_LIMIT |
84 | register. | 84 | register. |
85 | curr[2-5]_crit Critical maximum current. From IOUT_OC_FAULT_LIMIT register. | 85 | curr[2-5]_crit Critical maximum current. From IOUT_OC_FAULT_LIMIT register. |
86 | curr[2-5]_max_alarm Current high alarm. From IOUT_OC_WARNING status. | 86 | curr[2-5]_max_alarm Current high alarm. From IOUT_OC_WARNING status. |
diff --git a/Documentation/hwmon/vexpress b/Documentation/hwmon/vexpress deleted file mode 100644 index 557d6d5ad90..00000000000 --- a/Documentation/hwmon/vexpress +++ /dev/null | |||
@@ -1,34 +0,0 @@ | |||
1 | Kernel driver vexpress | ||
2 | ====================== | ||
3 | |||
4 | Supported systems: | ||
5 | * ARM Ltd. Versatile Express platform | ||
6 | Prefix: 'vexpress' | ||
7 | Datasheets: | ||
8 | * "Hardware Description" sections of the Technical Reference Manuals | ||
9 | for the Versatile Express boards: | ||
10 | http://infocenter.arm.com/help/topic/com.arm.doc.subset.boards.express/index.html | ||
11 | * Section "4.4.14. System Configuration registers" of the V2M-P1 TRM: | ||
12 | http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0447-/index.html | ||
13 | |||
14 | Author: Pawel Moll | ||
15 | |||
16 | Description | ||
17 | ----------- | ||
18 | |||
19 | Versatile Express platform (http://www.arm.com/versatileexpress/) is a | ||
20 | reference & prototyping system for ARM Ltd. processors. It can be set up | ||
21 | from a wide range of boards, each of them containing (apart of the main | ||
22 | chip/FPGA) a number of microcontrollers responsible for platform | ||
23 | configuration and control. Theses microcontrollers can also monitor the | ||
24 | board and its environment by a number of internal and external sensors, | ||
25 | providing information about power lines voltages and currents, board | ||
26 | temperature and power usage. Some of them also calculate consumed energy | ||
27 | and provide a cumulative use counter. | ||
28 | |||
29 | The configuration devices are _not_ memory mapped and must be accessed | ||
30 | via a custom interface, abstracted by the "vexpress_config" API. | ||
31 | |||
32 | As these devices are non-discoverable, they must be described in a Device | ||
33 | Tree passed to the kernel. Details of the DT binding for them can be found | ||
34 | in Documentation/devicetree/bindings/hwmon/vexpress.txt. | ||
diff --git a/Documentation/hwmon/w83627ehf b/Documentation/hwmon/w83627ehf index ceaf6f652b0..76ffef94ed7 100644 --- a/Documentation/hwmon/w83627ehf +++ b/Documentation/hwmon/w83627ehf | |||
@@ -14,10 +14,6 @@ Supported chips: | |||
14 | Prefix: 'w83627dhg' | 14 | Prefix: 'w83627dhg' |
15 | Addresses scanned: ISA address retrieved from Super I/O registers | 15 | Addresses scanned: ISA address retrieved from Super I/O registers |
16 | Datasheet: not available | 16 | Datasheet: not available |
17 | * Winbond W83627UHG | ||
18 | Prefix: 'w83627uhg' | ||
19 | Addresses scanned: ISA address retrieved from Super I/O registers | ||
20 | Datasheet: available from www.nuvoton.com | ||
21 | * Winbond W83667HG | 17 | * Winbond W83667HG |
22 | Prefix: 'w83667hg' | 18 | Prefix: 'w83667hg' |
23 | Addresses scanned: ISA address retrieved from Super I/O registers | 19 | Addresses scanned: ISA address retrieved from Super I/O registers |
@@ -46,13 +42,14 @@ Description | |||
46 | ----------- | 42 | ----------- |
47 | 43 | ||
48 | This driver implements support for the Winbond W83627EHF, W83627EHG, | 44 | This driver implements support for the Winbond W83627EHF, W83627EHG, |
49 | W83627DHG, W83627DHG-P, W83627UHG, W83667HG, W83667HG-B, W83667HG-I | 45 | W83627DHG, W83627DHG-P, W83667HG, W83667HG-B, W83667HG-I (NCT6775F), |
50 | (NCT6775F), and NCT6776F super I/O chips. We will refer to them collectively | 46 | and NCT6776F super I/O chips. We will refer to them collectively as |
51 | as Winbond chips. | 47 | Winbond chips. |
52 | 48 | ||
53 | The chips implement 3 to 4 temperature sensors (9 for NCT6775F and NCT6776F), | 49 | The chips implement three temperature sensors (up to four for 667HG-B, and nine |
54 | 2 to 5 fan rotation speed sensors, 8 to 10 analog voltage sensors, one VID | 50 | for NCT6775F and NCT6776F), five fan rotation speed sensors, ten analog voltage |
55 | (except for 627UHG), alarms with beep warnings (control unimplemented), | 51 | sensors (only nine for the 627DHG), one VID (6 pins for the 627EHF/EHG, 8 pins |
52 | for the 627DHG and 667HG), alarms with beep warnings (control unimplemented), | ||
56 | and some automatic fan regulation strategies (plus manual fan control mode). | 53 | and some automatic fan regulation strategies (plus manual fan control mode). |
57 | 54 | ||
58 | The temperature sensor sources on W82677HG-B, NCT6775F, and NCT6776F are | 55 | The temperature sensor sources on W82677HG-B, NCT6775F, and NCT6776F are |
@@ -89,16 +86,17 @@ follows: | |||
89 | 86 | ||
90 | temp1 -> pwm1 | 87 | temp1 -> pwm1 |
91 | temp2 -> pwm2 | 88 | temp2 -> pwm2 |
92 | temp3 -> pwm3 (not on 627UHG) | 89 | temp3 -> pwm3 |
93 | prog -> pwm4 (not on 667HG and 667HG-B; the programmable setting is not | 90 | prog -> pwm4 (not on 667HG and 667HG-B; the programmable setting is not |
94 | supported by the driver) | 91 | supported by the driver) |
95 | 92 | ||
96 | /sys files | 93 | /sys files |
97 | ---------- | 94 | ---------- |
98 | 95 | ||
99 | name - this is a standard hwmon device entry, it contains the name of | 96 | name - this is a standard hwmon device entry. For the W83627EHF and W83627EHG, |
100 | the device (see the prefix in the list of supported devices at | 97 | it is set to "w83627ehf", for the W83627DHG it is set to "w83627dhg", |
101 | the top of this file) | 98 | for the W83667HG and W83667HG-B it is set to "w83667hg", for NCT6775F it |
99 | is set to "nct6775", and for NCT6776F it is set to "nct6776". | ||
102 | 100 | ||
103 | pwm[1-4] - this file stores PWM duty cycle or DC value (fan speed) in range: | 101 | pwm[1-4] - this file stores PWM duty cycle or DC value (fan speed) in range: |
104 | 0 (stop) to 255 (full) | 102 | 0 (stop) to 255 (full) |
@@ -143,13 +141,8 @@ pwm[1-4]_min_output - minimum fan speed (range 1 - 255), when the temperature | |||
143 | pwm[1-4]_stop_time - how many milliseconds [ms] must elapse to switch | 141 | pwm[1-4]_stop_time - how many milliseconds [ms] must elapse to switch |
144 | corresponding fan off. (when the temperature was below | 142 | corresponding fan off. (when the temperature was below |
145 | defined range). | 143 | defined range). |
146 | pwm[1-4]_start_output-minimum fan speed (range 1 - 255) when spinning up | ||
147 | pwm[1-4]_step_output- rate of fan speed change (1 - 255) | ||
148 | pwm[1-4]_stop_output- minimum fan speed (range 1 - 255) when spinning down | ||
149 | pwm[1-4]_max_output - maximum fan speed (range 1 - 255), when the temperature | ||
150 | is above defined range. | ||
151 | 144 | ||
152 | Note: last six functions are influenced by other control bits, not yet exported | 145 | Note: last two functions are influenced by other control bits, not yet exported |
153 | by the driver, so a change might not have any effect. | 146 | by the driver, so a change might not have any effect. |
154 | 147 | ||
155 | Implementation Details | 148 | Implementation Details |
diff --git a/Documentation/hwmon/wm831x b/Documentation/hwmon/wm831x index 11446757c8c..24f47d8f6a4 100644 --- a/Documentation/hwmon/wm831x +++ b/Documentation/hwmon/wm831x | |||
@@ -22,7 +22,7 @@ reporting of all the input values but does not provide any alarms. | |||
22 | Voltage Monitoring | 22 | Voltage Monitoring |
23 | ------------------ | 23 | ------------------ |
24 | 24 | ||
25 | Voltages are sampled by a 12 bit ADC. Voltages in millivolts are 1.465 | 25 | Voltages are sampled by a 12 bit ADC. Voltages in milivolts are 1.465 |
26 | times the ADC value. | 26 | times the ADC value. |
27 | 27 | ||
28 | Temperature Monitoring | 28 | Temperature Monitoring |
diff --git a/Documentation/hwmon/zl6100 b/Documentation/hwmon/zl6100 deleted file mode 100644 index a995b41724f..00000000000 --- a/Documentation/hwmon/zl6100 +++ /dev/null | |||
@@ -1,146 +0,0 @@ | |||
1 | Kernel driver zl6100 | ||
2 | ==================== | ||
3 | |||
4 | Supported chips: | ||
5 | * Intersil / Zilker Labs ZL2004 | ||
6 | Prefix: 'zl2004' | ||
7 | Addresses scanned: - | ||
8 | Datasheet: http://www.intersil.com/data/fn/fn6847.pdf | ||
9 | * Intersil / Zilker Labs ZL2005 | ||
10 | Prefix: 'zl2005' | ||
11 | Addresses scanned: - | ||
12 | Datasheet: http://www.intersil.com/data/fn/fn6848.pdf | ||
13 | * Intersil / Zilker Labs ZL2006 | ||
14 | Prefix: 'zl2006' | ||
15 | Addresses scanned: - | ||
16 | Datasheet: http://www.intersil.com/data/fn/fn6850.pdf | ||
17 | * Intersil / Zilker Labs ZL2008 | ||
18 | Prefix: 'zl2008' | ||
19 | Addresses scanned: - | ||
20 | Datasheet: http://www.intersil.com/data/fn/fn6859.pdf | ||
21 | * Intersil / Zilker Labs ZL2105 | ||
22 | Prefix: 'zl2105' | ||
23 | Addresses scanned: - | ||
24 | Datasheet: http://www.intersil.com/data/fn/fn6851.pdf | ||
25 | * Intersil / Zilker Labs ZL2106 | ||
26 | Prefix: 'zl2106' | ||
27 | Addresses scanned: - | ||
28 | Datasheet: http://www.intersil.com/data/fn/fn6852.pdf | ||
29 | * Intersil / Zilker Labs ZL6100 | ||
30 | Prefix: 'zl6100' | ||
31 | Addresses scanned: - | ||
32 | Datasheet: http://www.intersil.com/data/fn/fn6876.pdf | ||
33 | * Intersil / Zilker Labs ZL6105 | ||
34 | Prefix: 'zl6105' | ||
35 | Addresses scanned: - | ||
36 | Datasheet: http://www.intersil.com/data/fn/fn6906.pdf | ||
37 | * Intersil / Zilker Labs ZL9101M | ||
38 | Prefix: 'zl9101' | ||
39 | Addresses scanned: - | ||
40 | Datasheet: http://www.intersil.com/data/fn/fn7669.pdf | ||
41 | * Intersil / Zilker Labs ZL9117M | ||
42 | Prefix: 'zl9117' | ||
43 | Addresses scanned: - | ||
44 | Datasheet: http://www.intersil.com/data/fn/fn7914.pdf | ||
45 | * Ericsson BMR450, BMR451 | ||
46 | Prefix: 'bmr450', 'bmr451' | ||
47 | Addresses scanned: - | ||
48 | Datasheet: | ||
49 | http://archive.ericsson.net/service/internet/picov/get?DocNo=28701-EN/LZT146401 | ||
50 | * Ericsson BMR462, BMR463, BMR464 | ||
51 | Prefixes: 'bmr462', 'bmr463', 'bmr464' | ||
52 | Addresses scanned: - | ||
53 | Datasheet: | ||
54 | http://archive.ericsson.net/service/internet/picov/get?DocNo=28701-EN/LZT146256 | ||
55 | |||
56 | |||
57 | Author: Guenter Roeck <guenter.roeck@ericsson.com> | ||
58 | |||
59 | |||
60 | Description | ||
61 | ----------- | ||
62 | |||
63 | This driver supports hardware montoring for Intersil / Zilker Labs ZL6100 and | ||
64 | compatible digital DC-DC controllers. | ||
65 | |||
66 | The driver is a client driver to the core PMBus driver. Please see | ||
67 | Documentation/hwmon/pmbus and Documentation.hwmon/pmbus-core for details | ||
68 | on PMBus client drivers. | ||
69 | |||
70 | |||
71 | Usage Notes | ||
72 | ----------- | ||
73 | |||
74 | This driver does not auto-detect devices. You will have to instantiate the | ||
75 | devices explicitly. Please see Documentation/i2c/instantiating-devices for | ||
76 | details. | ||
77 | |||
78 | WARNING: Do not access chip registers using the i2cdump command, and do not use | ||
79 | any of the i2ctools commands on a command register used to save and restore | ||
80 | configuration data (0x11, 0x12, 0x15, 0x16, and 0xf4). The chips supported by | ||
81 | this driver interpret any access to those command registers (including read | ||
82 | commands) as request to execute the command in question. Unless write accesses | ||
83 | to those registers are protected, this may result in power loss, board resets, | ||
84 | and/or Flash corruption. Worst case, your board may turn into a brick. | ||
85 | |||
86 | |||
87 | Platform data support | ||
88 | --------------------- | ||
89 | |||
90 | The driver supports standard PMBus driver platform data. | ||
91 | |||
92 | |||
93 | Module parameters | ||
94 | ----------------- | ||
95 | |||
96 | delay | ||
97 | ----- | ||
98 | |||
99 | Intersil/Zilker Labs DC-DC controllers require a minimum interval between I2C | ||
100 | bus accesses. According to Intersil, the minimum interval is 2 ms, though 1 ms | ||
101 | appears to be sufficient and has not caused any problems in testing. The problem | ||
102 | is known to affect all currently supported chips. For manual override, the | ||
103 | driver provides a writeable module parameter, 'delay', which can be used to set | ||
104 | the interval to a value between 0 and 65,535 microseconds. | ||
105 | |||
106 | |||
107 | Sysfs entries | ||
108 | ------------- | ||
109 | |||
110 | The following attributes are supported. Limits are read-write; all other | ||
111 | attributes are read-only. | ||
112 | |||
113 | in1_label "vin" | ||
114 | in1_input Measured input voltage. | ||
115 | in1_min Minimum input voltage. | ||
116 | in1_max Maximum input voltage. | ||
117 | in1_lcrit Critical minimum input voltage. | ||
118 | in1_crit Critical maximum input voltage. | ||
119 | in1_min_alarm Input voltage low alarm. | ||
120 | in1_max_alarm Input voltage high alarm. | ||
121 | in1_lcrit_alarm Input voltage critical low alarm. | ||
122 | in1_crit_alarm Input voltage critical high alarm. | ||
123 | |||
124 | in2_label "vout1" | ||
125 | in2_input Measured output voltage. | ||
126 | in2_lcrit Critical minimum output Voltage. | ||
127 | in2_crit Critical maximum output voltage. | ||
128 | in2_lcrit_alarm Critical output voltage critical low alarm. | ||
129 | in2_crit_alarm Critical output voltage critical high alarm. | ||
130 | |||
131 | curr1_label "iout1" | ||
132 | curr1_input Measured output current. | ||
133 | curr1_lcrit Critical minimum output current. | ||
134 | curr1_crit Critical maximum output current. | ||
135 | curr1_lcrit_alarm Output current critical low alarm. | ||
136 | curr1_crit_alarm Output current critical high alarm. | ||
137 | |||
138 | temp[12]_input Measured temperature. | ||
139 | temp[12]_min Minimum temperature. | ||
140 | temp[12]_max Maximum temperature. | ||
141 | temp[12]_lcrit Critical low temperature. | ||
142 | temp[12]_crit Critical high temperature. | ||
143 | temp[12]_min_alarm Chip temperature low alarm. | ||
144 | temp[12]_max_alarm Chip temperature high alarm. | ||
145 | temp[12]_lcrit_alarm Chip temperature critical low alarm. | ||
146 | temp[12]_crit_alarm Chip temperature critical high alarm. | ||