root/lm-sensors/trunk/doc/chips/gl518sm @ 3007

Revision 3007, 9.1 KB (checked in by khali, 10 years ago)

Backport the cleanups and corrections Rudolf Marek and I did when
porting the chips documentation to Linux 2.6.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
1Kernel driver `gl518sm.o'
4Status: Complete and well-tested
6Supported chips:
7  * Genesys Logic GL518SM release 0x00
8    Prefix: 'gl518sm'
9    Addresses scanned: I2C 0x2c and 0x2d
10    Datasheet:
11  * Genesys Logic GL518SM release 0x80
12    Prefix: 'gl518sm'
13    Addresses scanned: I2C 0x2c and 0x2d
14    Datasheet:
16Author: Frodo Looijaard <>,
17        Kyösti Mälkki <>
20Module Parameters
23* force: short array (min = 1, max = 48)
24  List of adapter,address pairs to boldly assume to be present
25* force_gl518sm_r00: short array (min = 1, max = 48)
26  List of adapter,address pairs which are unquestionably assumed to contain
27  a `gl518sm_r00' chip
28* force_gl518sm_r80: short array (min = 1, max = 48)
29  List of adapter,address pairs which are unquestionably assumed to contain
30  a `gl518sm_r80' chip
31* ignore: short array (min = 1, max = 48)
32  List of adapter,address pairs not to scan
33* ignore_range: short array (min = 1, max = 48)
34  List of adapter,start-addr,end-addr triples not to scan
35* probe: short array (min = 1, max = 48)
36  List of adapter,address pairs to scan additionally
37* probe_range: short array (min = 1, max = 48)
38  List of adapter,start-addr,end-addr triples to scan additionally
43IMPORTANT: For the revision 0x00 chip, the
44           in0, in1, and in2 values (+5, +3, and +12) CANNOT be read
45           unless you use the slow 'iterate' method. Limits will still
46           work even when iterate=0. See below. This is a limitation
47           of the chip, not the driver.
48           Note that the 'iterate' method was trimmed while porting the
49           driver to Linux 2.6 as we considered it too ugly for the thin
50           benefit.
53This driver supports the Genesys Logic GL518SM chip. There are at least
54two revision of this chip, which we call revision 0x00 and 0x80. Revision
550x80 chips support the reading of voltages directly, 0x00 only for VIN3.
57The GL518SM implements one temperature sensor, two fan rotation speed
58sensors, and four voltage sensors. It can report alarms through the
59computer speakers.
61Temperatures are measured in degrees Celsius. An alarm goes off while the
62temperature is above the over temperature limit, and has not yet dropped
63below the hysteresis limit. The alarm always reflects the current situation.
64Measurements are guaranteed between -10 degrees and +110 degrees, with
65a resolution of +-3 degrees.
67Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
68triggered if the rotation speed has dropped below a programmable limit.
69In case when you have selected to turn Fan1 off, no Fan1 alarm is triggered.
71Fan readings can be divided by a programmable divider (1, 2, 4 or 8) to give
72the readings more range or accuracy. Not all RPM values can accurately be
73represented, so some rounding is done. With a divider of 2, the lowest
74representable value is around 1900 RPM.
76Voltage sensors (also known as VIN sensors) report their values in volts. An
77alarm is triggered if the voltage has crossed a programmable minimum or
78maximum limit. Note that minimum in this case always means 'closest to
79zero'; this is important for negative voltage measurements. The VDD input
80measures voltages between 0.000 and 5.865 volt, with a resolution of 0.023
81volt. The other inputs measure voltages between 0.000 and 4.845 volt, with a
82resolution of 0.019 volt. Note that revision 0x00 chips do not support
83reading the current voltage of any input except for VIN3; limit setting and
84alarms work fine, though. There is code to compute them by iterating.
86When an alarm goes off, you can be warned by a beeping signal through
87your computer speaker. It is possible to enable all beeping globally,
88or only the beeping for some alarms.
90If an alarm triggers, it will remain triggered until the hardware register
91is read at least once (except for temperature alarms). This means that the
92cause for the alarm may already have disappeared!  Note that in the current
93implementation, all hardware registers are read whenever any data is read
94(unless it is less than 1.5 seconds since the last update). This means that
95you can easily miss once-only alarms.
97The GL518SM only updates its values each 1.5 seconds; reading it more often
98will do no harm, but will return 'old' values.
100Iteration Code
103IMPORTANT: For the revision 0x00 chip only,
104you may select between three modes to read the vin0-2 inputs with
105the following lines in /etc/sensors.conf:
107 set iterate 0    Don't read in0-in2 inputs.
108 set iterate 1    Run the iteration loop, this takes up to 10 seconds.
109 set iterate 2    Show the results of the last iteration loop,
110                  and start a new loop to run in the background.
112You may also set the iteration type with
113'echo n > /proc/sys/dev/sensors/gl518sm-i2c-x-y/iterate'.
115If you have a rev 0x80 chip, the in0-in2 inputs are readable.
116In this case, 'iterate' will be read-only and the read value is 3.
118This does NOT apply to the Linux 2.6 kernel driver, where the 'iteration'
119code was dropped for being too ugly.
122Chip Features
125Chip `gl518sm'
127               vdd               NONE               NONE     R     2
128              vin1               NONE               NONE     R     2
129              vin2               NONE               NONE     R     2
130              vin3               NONE               NONE     R     2
131           vdd_min                vdd                vdd     RW    2
132          vin1_min               vin1               vin1     RW    2
133          vin2_min               vin2               vin2     RW    2
134          vin3_min               vin3               vin3     RW    2
135           vdd_max                vdd                vdd     RW    2
136          vin1_max               vin1               vin1     RW    2
137          vin2_max               vin2               vin2     RW    2
138          vin3_max               vin3               vin3     RW    2
139              fan1               NONE               NONE     R     0
140              fan2               NONE               NONE     R     0
141          fan1_min               fan1               fan1     RW    0
142          fan2_min               fan2               fan2     RW    0
143              temp               NONE               NONE     R     1
144         temp_hyst               temp               temp     RW    1
145         temp_over               temp               temp     RW    1
146          fan1_div               fan1               NONE     RW    0
147          fan2_div               fan2               NONE     RW    0
148            alarms               NONE               NONE     R     0
149       beep_enable             alarms               NONE     RW    0
150             beeps             alarms             alarms     RW    0
151          fan1_off               NONE               NONE     RW    0
152      fan1_off_pin               NONE               NONE     RW    0
153           iterate               NONE               NONE     RW    0
156             LABEL                        FEATURE SYMBOL        SYSCTL FILE:NR
157               vdd                    SENSORS_GL518_VDD                vdd:3
158              vin1                   SENSORS_GL518_VIN1               vin1:3
159              vin2                   SENSORS_GL518_VIN2               vin2:3
160              vin3                   SENSORS_GL518_VIN3               vin3:3
161           vdd_min                SENSORS_GL518_VDD_MIN                vdd:1
162          vin1_min               SENSORS_GL518_VIN1_MIN               vin1:1
163          vin2_min               SENSORS_GL518_VIN2_MIN               vin2:1
164          vin3_min               SENSORS_GL518_VIN3_MIN               vin3:1
165           vdd_max                SENSORS_GL518_VDD_MAX                vdd:2
166          vin1_max               SENSORS_GL518_VIN1_MAX               vin1:2
167          vin2_max               SENSORS_GL518_VIN2_MAX               vin2:2
168          vin3_max               SENSORS_GL518_VIN3_MAX               vin3:2
169              fan1                   SENSORS_GL518_FAN1               fan1:2
170              fan2                   SENSORS_GL518_FAN2               fan2:2
171          fan1_min               SENSORS_GL518_FAN1_MIN               fan1:1
172          fan2_min               SENSORS_GL518_FAN2_MIN               fan2:1
173              temp                   SENSORS_GL518_TEMP               temp:3
174         temp_hyst              SENSORS_GL518_TEMP_HYST               temp:2
175         temp_over              SENSORS_GL518_TEMP_OVER               temp:1
176          fan1_div               SENSORS_GL518_FAN1_DIV            fan_div:1
177          fan2_div               SENSORS_GL518_FAN2_DIV            fan_div:2
178            alarms                 SENSORS_GL518_ALARMS             alarms:1
179       beep_enable            SENSORS_GL518_BEEP_ENABLE               beep:1
180             beeps                  SENSORS_GL518_BEEPS               beep:2
181          fan1_off                SENSORS_GL518_FAN1OFF            fan1off:1
182      fan1_off_pin                SENSORS_GL518_FAN1PIN            fan1off:2
183           iterate                SENSORS_GL518_ITERATE            iterate:1
Note: See TracBrowser for help on using the browser.