| R.Marek@sh.cvut.cz | 7f15b66 | 2005-05-26 12:42:19 +0000 | [diff] [blame] | 1 | Kernel driver gl518sm | 
 | 2 | ===================== | 
 | 3 |  | 
 | 4 | Supported chips: | 
 | 5 |   * Genesys Logic GL518SM release 0x00 | 
 | 6 |     Prefix: 'gl518sm' | 
 | 7 |     Addresses scanned: I2C 0x2c and 0x2d | 
 | 8 |     Datasheet: http://www.genesyslogic.com/pdf | 
 | 9 |   * Genesys Logic GL518SM release 0x80 | 
 | 10 |     Prefix: 'gl518sm' | 
 | 11 |     Addresses scanned: I2C 0x2c and 0x2d | 
 | 12 |     Datasheet: http://www.genesyslogic.com/pdf | 
 | 13 |  | 
 | 14 | Authors: | 
 | 15 |         Frodo Looijaard <frodol@dds.nl>, | 
 | 16 |         Kyösti Mälkki <kmalkki@cc.hut.fi> | 
 | 17 |         Hong-Gunn Chew <hglinux@gunnet.org> | 
 | 18 |         Jean Delvare <khali@linux-fr.org> | 
 | 19 |  | 
 | 20 | Description | 
 | 21 | ----------- | 
 | 22 |  | 
 | 23 | IMPORTANT: | 
 | 24 |  | 
 | 25 | For the revision 0x00 chip, the in0, in1, and in2  values (+5V, +3V, | 
 | 26 | and +12V) CANNOT be read. This is a limitation of the chip, not the driver. | 
 | 27 |  | 
 | 28 | This driver supports the Genesys Logic GL518SM chip. There are at least | 
 | 29 | two revision of this chip, which we call revision 0x00 and 0x80. Revision | 
 | 30 | 0x80 chips support the reading of all voltages and revision 0x00 only | 
 | 31 | for VIN3. | 
 | 32 |  | 
 | 33 | The GL518SM implements one temperature sensor, two fan rotation speed | 
 | 34 | sensors, and four voltage sensors. It can report alarms through the | 
 | 35 | computer speakers. | 
 | 36 |  | 
 | 37 | Temperatures are measured in degrees Celsius. An alarm goes off while the | 
 | 38 | temperature is above the over temperature limit, and has not yet dropped | 
 | 39 | below the hysteresis limit. The alarm always reflects the current | 
 | 40 | situation. Measurements are guaranteed between -10 degrees and +110 | 
 | 41 | degrees, with a accuracy of +/-3 degrees. | 
 | 42 |  | 
 | 43 | Rotation speeds are reported in RPM (rotations per minute). An alarm is | 
 | 44 | triggered if the rotation speed has dropped below a programmable limit. In | 
 | 45 | case when you have selected to turn fan1 off, no fan1 alarm is triggered. | 
 | 46 |  | 
 | 47 | Fan readings can be divided by a programmable divider (1, 2, 4 or 8) to | 
 | 48 | give the readings more range or accuracy.  Not all RPM values can | 
 | 49 | accurately be represented, so some rounding is done. With a divider | 
 | 50 | of 2, the lowest representable value is around 1900 RPM. | 
 | 51 |  | 
 | 52 | Voltage sensors (also known as VIN sensors) report their values in volts. | 
 | 53 | An alarm is triggered if the voltage has crossed a programmable minimum or | 
 | 54 | maximum limit. Note that minimum in this case always means 'closest to | 
 | 55 | zero'; this is important for negative voltage measurements. The VDD input | 
 | 56 | measures voltages between 0.000 and 5.865 volt, with a resolution of 0.023 | 
 | 57 | volt. The other inputs measure voltages between 0.000 and 4.845 volt, with | 
 | 58 | a resolution of 0.019 volt. Note that revision 0x00 chips do not support | 
 | 59 | reading the current voltage of any input except for VIN3; limit setting and | 
 | 60 | alarms work fine, though. | 
 | 61 |  | 
 | 62 | When an alarm is triggered, you can be warned by a beeping signal through your | 
 | 63 | computer speaker. It is possible to enable all beeping globally, or only the | 
 | 64 | beeping for some alarms. | 
 | 65 |  | 
 | 66 | If an alarm triggers, it will remain triggered until the hardware register | 
 | 67 | is read at least once (except for temperature alarms). This means that the | 
 | 68 | cause for the alarm may already have disappeared! Note that in the current | 
 | 69 | implementation, all hardware registers are read whenever any data is read | 
 | 70 | (unless it is less than 1.5 seconds since the last update). This means that | 
 | 71 | you can easily miss once-only alarms. | 
 | 72 |  | 
 | 73 | The GL518SM only updates its values each 1.5 seconds; reading it more often | 
 | 74 | will do no harm, but will return 'old' values. |