75 lines
		
	
	
	
		
			3.2 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
		
		
			
		
	
	
			75 lines
		
	
	
	
		
			3.2 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
|   | 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<4B>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. |