xref: /linux/Documentation/hwmon/gl518sm.rst (revision c39f2d9db0fd81ea20bb5cce9b3f082ca63753e2)
1*7ebd8b66SMauro Carvalho ChehabKernel driver gl518sm
2*7ebd8b66SMauro Carvalho Chehab=====================
3*7ebd8b66SMauro Carvalho Chehab
4*7ebd8b66SMauro Carvalho ChehabSupported chips:
5*7ebd8b66SMauro Carvalho Chehab
6*7ebd8b66SMauro Carvalho Chehab  * Genesys Logic GL518SM release 0x00
7*7ebd8b66SMauro Carvalho Chehab
8*7ebd8b66SMauro Carvalho Chehab    Prefix: 'gl518sm'
9*7ebd8b66SMauro Carvalho Chehab
10*7ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x2c and 0x2d
11*7ebd8b66SMauro Carvalho Chehab
12*7ebd8b66SMauro Carvalho Chehab  * Genesys Logic GL518SM release 0x80
13*7ebd8b66SMauro Carvalho Chehab
14*7ebd8b66SMauro Carvalho Chehab    Prefix: 'gl518sm'
15*7ebd8b66SMauro Carvalho Chehab
16*7ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x2c and 0x2d
17*7ebd8b66SMauro Carvalho Chehab
18*7ebd8b66SMauro Carvalho Chehab    Datasheet: http://www.genesyslogic.com/
19*7ebd8b66SMauro Carvalho Chehab
20*7ebd8b66SMauro Carvalho ChehabAuthors:
21*7ebd8b66SMauro Carvalho Chehab       - Frodo Looijaard <frodol@dds.nl>,
22*7ebd8b66SMauro Carvalho Chehab       - Kyösti Mälkki <kmalkki@cc.hut.fi>
23*7ebd8b66SMauro Carvalho Chehab       - Hong-Gunn Chew <hglinux@gunnet.org>
24*7ebd8b66SMauro Carvalho Chehab       - Jean Delvare <jdelvare@suse.de>
25*7ebd8b66SMauro Carvalho Chehab
26*7ebd8b66SMauro Carvalho ChehabDescription
27*7ebd8b66SMauro Carvalho Chehab-----------
28*7ebd8b66SMauro Carvalho Chehab
29*7ebd8b66SMauro Carvalho Chehab.. important::
30*7ebd8b66SMauro Carvalho Chehab
31*7ebd8b66SMauro Carvalho Chehab   For the revision 0x00 chip, the in0, in1, and in2  values (+5V, +3V,
32*7ebd8b66SMauro Carvalho Chehab   and +12V) CANNOT be read. This is a limitation of the chip, not the driver.
33*7ebd8b66SMauro Carvalho Chehab
34*7ebd8b66SMauro Carvalho ChehabThis driver supports the Genesys Logic GL518SM chip. There are at least
35*7ebd8b66SMauro Carvalho Chehabtwo revision of this chip, which we call revision 0x00 and 0x80. Revision
36*7ebd8b66SMauro Carvalho Chehab0x80 chips support the reading of all voltages and revision 0x00 only
37*7ebd8b66SMauro Carvalho Chehabfor VIN3.
38*7ebd8b66SMauro Carvalho Chehab
39*7ebd8b66SMauro Carvalho ChehabThe GL518SM implements one temperature sensor, two fan rotation speed
40*7ebd8b66SMauro Carvalho Chehabsensors, and four voltage sensors. It can report alarms through the
41*7ebd8b66SMauro Carvalho Chehabcomputer speakers.
42*7ebd8b66SMauro Carvalho Chehab
43*7ebd8b66SMauro Carvalho ChehabTemperatures are measured in degrees Celsius. An alarm goes off while the
44*7ebd8b66SMauro Carvalho Chehabtemperature is above the over temperature limit, and has not yet dropped
45*7ebd8b66SMauro Carvalho Chehabbelow the hysteresis limit. The alarm always reflects the current
46*7ebd8b66SMauro Carvalho Chehabsituation. Measurements are guaranteed between -10 degrees and +110
47*7ebd8b66SMauro Carvalho Chehabdegrees, with a accuracy of +/-3 degrees.
48*7ebd8b66SMauro Carvalho Chehab
49*7ebd8b66SMauro Carvalho ChehabRotation speeds are reported in RPM (rotations per minute). An alarm is
50*7ebd8b66SMauro Carvalho Chehabtriggered if the rotation speed has dropped below a programmable limit. In
51*7ebd8b66SMauro Carvalho Chehabcase when you have selected to turn fan1 off, no fan1 alarm is triggered.
52*7ebd8b66SMauro Carvalho Chehab
53*7ebd8b66SMauro Carvalho ChehabFan readings can be divided by a programmable divider (1, 2, 4 or 8) to
54*7ebd8b66SMauro Carvalho Chehabgive the readings more range or accuracy.  Not all RPM values can
55*7ebd8b66SMauro Carvalho Chehabaccurately be represented, so some rounding is done. With a divider
56*7ebd8b66SMauro Carvalho Chehabof 2, the lowest representable value is around 1900 RPM.
57*7ebd8b66SMauro Carvalho Chehab
58*7ebd8b66SMauro Carvalho ChehabVoltage sensors (also known as VIN sensors) report their values in volts.
59*7ebd8b66SMauro Carvalho ChehabAn alarm is triggered if the voltage has crossed a programmable minimum or
60*7ebd8b66SMauro Carvalho Chehabmaximum limit. Note that minimum in this case always means 'closest to
61*7ebd8b66SMauro Carvalho Chehabzero'; this is important for negative voltage measurements. The VDD input
62*7ebd8b66SMauro Carvalho Chehabmeasures voltages between 0.000 and 5.865 volt, with a resolution of 0.023
63*7ebd8b66SMauro Carvalho Chehabvolt. The other inputs measure voltages between 0.000 and 4.845 volt, with
64*7ebd8b66SMauro Carvalho Chehaba resolution of 0.019 volt. Note that revision 0x00 chips do not support
65*7ebd8b66SMauro Carvalho Chehabreading the current voltage of any input except for VIN3; limit setting and
66*7ebd8b66SMauro Carvalho Chehabalarms work fine, though.
67*7ebd8b66SMauro Carvalho Chehab
68*7ebd8b66SMauro Carvalho ChehabWhen an alarm is triggered, you can be warned by a beeping signal through your
69*7ebd8b66SMauro Carvalho Chehabcomputer speaker. It is possible to enable all beeping globally, or only the
70*7ebd8b66SMauro Carvalho Chehabbeeping for some alarms.
71*7ebd8b66SMauro Carvalho Chehab
72*7ebd8b66SMauro Carvalho ChehabIf an alarm triggers, it will remain triggered until the hardware register
73*7ebd8b66SMauro Carvalho Chehabis read at least once (except for temperature alarms). This means that the
74*7ebd8b66SMauro Carvalho Chehabcause for the alarm may already have disappeared! Note that in the current
75*7ebd8b66SMauro Carvalho Chehabimplementation, all hardware registers are read whenever any data is read
76*7ebd8b66SMauro Carvalho Chehab(unless it is less than 1.5 seconds since the last update). This means that
77*7ebd8b66SMauro Carvalho Chehabyou can easily miss once-only alarms.
78*7ebd8b66SMauro Carvalho Chehab
79*7ebd8b66SMauro Carvalho ChehabThe GL518SM only updates its values each 1.5 seconds; reading it more often
80*7ebd8b66SMauro Carvalho Chehabwill do no harm, but will return 'old' values.
81