| Kernel driver gl518sm |
| ===================== |
| |
| Supported chips: |
| * Genesys Logic GL518SM release 0x00 |
| Prefix: 'gl518sm' |
| Addresses scanned: I2C 0x2c and 0x2d |
| Datasheet: http://www.genesyslogic.com/pdf |
| * Genesys Logic GL518SM release 0x80 |
| Prefix: 'gl518sm' |
| Addresses scanned: I2C 0x2c and 0x2d |
| Datasheet: http://www.genesyslogic.com/pdf |
| |
| Authors: |
| Frodo Looijaard <frodol@dds.nl>, |
| Kyösti Mälkki <kmalkki@cc.hut.fi> |
| Hong-Gunn Chew <hglinux@gunnet.org> |
| Jean Delvare <khali@linux-fr.org> |
| |
| Description |
| ----------- |
| |
| IMPORTANT: |
| |
| For the revision 0x00 chip, the in0, in1, and in2 values (+5V, +3V, |
| and +12V) CANNOT be read. This is a limitation of the chip, not the driver. |
| |
| This driver supports the Genesys Logic GL518SM chip. There are at least |
| two revision of this chip, which we call revision 0x00 and 0x80. Revision |
| 0x80 chips support the reading of all voltages and revision 0x00 only |
| for VIN3. |
| |
| The GL518SM implements one temperature sensor, two fan rotation speed |
| sensors, and four voltage sensors. It can report alarms through the |
| computer speakers. |
| |
| Temperatures are measured in degrees Celsius. An alarm goes off while the |
| temperature is above the over temperature limit, and has not yet dropped |
| below the hysteresis limit. The alarm always reflects the current |
| situation. Measurements are guaranteed between -10 degrees and +110 |
| degrees, with a accuracy of +/-3 degrees. |
| |
| Rotation speeds are reported in RPM (rotations per minute). An alarm is |
| triggered if the rotation speed has dropped below a programmable limit. In |
| case when you have selected to turn fan1 off, no fan1 alarm is triggered. |
| |
| Fan readings can be divided by a programmable divider (1, 2, 4 or 8) to |
| give the readings more range or accuracy. Not all RPM values can |
| accurately be represented, so some rounding is done. With a divider |
| of 2, the lowest representable value is around 1900 RPM. |
| |
| Voltage sensors (also known as VIN sensors) report their values in volts. |
| An alarm is triggered if the voltage has crossed a programmable minimum or |
| maximum limit. Note that minimum in this case always means 'closest to |
| zero'; this is important for negative voltage measurements. The VDD input |
| measures voltages between 0.000 and 5.865 volt, with a resolution of 0.023 |
| volt. The other inputs measure voltages between 0.000 and 4.845 volt, with |
| a resolution of 0.019 volt. Note that revision 0x00 chips do not support |
| reading the current voltage of any input except for VIN3; limit setting and |
| alarms work fine, though. |
| |
| When an alarm is triggered, you can be warned by a beeping signal through your |
| computer speaker. It is possible to enable all beeping globally, or only the |
| beeping for some alarms. |
| |
| If an alarm triggers, it will remain triggered until the hardware register |
| is read at least once (except for temperature alarms). This means that the |
| cause for the alarm may already have disappeared! Note that in the current |
| implementation, all hardware registers are read whenever any data is read |
| (unless it is less than 1.5 seconds since the last update). This means that |
| you can easily miss once-only alarms. |
| |
| The GL518SM only updates its values each 1.5 seconds; reading it more often |
| will do no harm, but will return 'old' values. |