About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / hwmon / lm87


Based on kernel version 4.16.1. Page generated on 2018-04-09 11:53 EST.

1	Kernel driver lm87
2	==================
3	
4	Supported chips:
5	  * National Semiconductor LM87
6	    Prefix: 'lm87'
7	    Addresses scanned: I2C 0x2c - 0x2e
8	    Datasheet: http://www.national.com/pf/LM/LM87.html
9	  * Analog Devices ADM1024
10	    Prefix: 'adm1024'
11	    Addresses scanned: I2C 0x2c - 0x2e
12	    Datasheet: http://www.analog.com/en/prod/0,2877,ADM1024,00.html
13	
14	Authors:
15	        Frodo Looijaard <frodol@dds.nl>,
16	        Philip Edelbrock <phil@netroedge.com>,
17	        Mark Studebaker <mdsxyz123@yahoo.com>,
18	        Stephen Rousset <stephen.rousset@rocketlogix.com>,
19	        Dan Eaton <dan.eaton@rocketlogix.com>,
20	        Jean Delvare <jdelvare@suse.de>,
21	        Original 2.6 port Jeff Oliver
22	
23	Description
24	-----------
25	
26	This driver implements support for the National Semiconductor LM87
27	and the Analog Devices ADM1024.
28	
29	The LM87 implements up to three temperature sensors, up to two fan
30	rotation speed sensors, up to seven voltage sensors, alarms, and some
31	miscellaneous stuff. The ADM1024 is fully compatible.
32	
33	Temperatures are measured in degrees Celsius. Each input has a high
34	and low alarm settings. A high limit produces an alarm when the value
35	goes above it, and an alarm is also produced when the value goes below
36	the low limit.
37	
38	Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
39	triggered if the rotation speed has dropped below a programmable limit. Fan
40	readings can be divided by a programmable divider (1, 2, 4 or 8) to give
41	the readings more range or accuracy. Not all RPM values can accurately be
42	represented, so some rounding is done. With a divider of 2, the lowest
43	representable value is around 2600 RPM.
44	
45	Voltage sensors (also known as IN sensors) report their values in
46	volts. An alarm is triggered if the voltage has crossed a programmable
47	minimum or maximum limit. Note that minimum in this case always means
48	'closest to zero'; this is important for negative voltage measurements.
49	
50	If an alarm triggers, it will remain triggered until the hardware register
51	is read at least once. This means that the cause for the alarm may
52	already have disappeared! Note that in the current implementation, all
53	hardware registers are read whenever any data is read (unless it is less
54	than 1.0 seconds since the last update). This means that you can easily
55	miss once-only alarms.
56	
57	The lm87 driver only updates its values each 1.0 seconds; reading it more
58	often will do no harm, but will return 'old' values.
59	
60	
61	Hardware Configurations
62	-----------------------
63	
64	The LM87 has four pins which can serve one of two possible functions,
65	depending on the hardware configuration.
66	
67	Some functions share pins, so not all functions are available at the same
68	time. Which are depends on the hardware setup. This driver normally
69	assumes that firmware configured the chip correctly. Where this is not
70	the case, platform code must set the I2C client's platform_data to point
71	to a u8 value to be written to the channel register.
72	
73	For reference, here is the list of exclusive functions:
74	 - in0+in5 (default) or temp3
75	 - fan1 (default) or in6
76	 - fan2 (default) or in7
77	 - VID lines (default) or IRQ lines (not handled by this driver)
Hide Line Numbers


About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog