| R.Marek@sh.cvut.cz | 7f15b66 | 2005-05-26 12:42:19 +0000 | [diff] [blame] | 1 | Kernel driver sis5595 | 
|  | 2 | ===================== | 
|  | 3 |  | 
|  | 4 | Supported chips: | 
|  | 5 | * Silicon Integrated Systems Corp. SiS5595 Southbridge Hardware Monitor | 
|  | 6 | Prefix: 'sis5595' | 
|  | 7 | Addresses scanned: ISA in PCI-space encoded address | 
|  | 8 | Datasheet: Publicly available at the Silicon Integrated Systems Corp. site. | 
|  | 9 |  | 
|  | 10 | Authors: | 
| John Anthony Kazos Jr | be2a608 | 2007-05-09 08:50:42 +0200 | [diff] [blame] | 11 | Kyösti Mälkki <kmalkki@cc.hut.fi>, | 
| R.Marek@sh.cvut.cz | 7f15b66 | 2005-05-26 12:42:19 +0000 | [diff] [blame] | 12 | Mark D. Studebaker <mdsxyz123@yahoo.com>, | 
|  | 13 | Aurelien Jarno <aurelien@aurel32.net> 2.6 port | 
|  | 14 |  | 
|  | 15 | SiS southbridge has a LM78-like chip integrated on the same IC. | 
|  | 16 | This driver is a customized copy of lm78.c | 
|  | 17 |  | 
|  | 18 | Supports following revisions: | 
|  | 19 | Version         PCI ID          PCI Revision | 
|  | 20 | 1               1039/0008       AF or less | 
|  | 21 | 2               1039/0008       B0 or greater | 
|  | 22 |  | 
|  | 23 | Note: these chips contain a 0008 device which is incompatible with the | 
|  | 24 | 5595. We recognize these by the presence of the listed | 
|  | 25 | "blacklist" PCI ID and refuse to load. | 
|  | 26 |  | 
|  | 27 | NOT SUPPORTED       PCI ID          BLACKLIST PCI ID | 
|  | 28 | 540            0008            0540 | 
|  | 29 | 550            0008            0550 | 
|  | 30 | 5513            0008            5511 | 
|  | 31 | 5581            0008            5597 | 
|  | 32 | 5582            0008            5597 | 
|  | 33 | 5597            0008            5597 | 
|  | 34 | 630            0008            0630 | 
|  | 35 | 645            0008            0645 | 
|  | 36 | 730            0008            0730 | 
|  | 37 | 735            0008            0735 | 
|  | 38 |  | 
|  | 39 |  | 
|  | 40 | Module Parameters | 
|  | 41 | ----------------- | 
|  | 42 | force_addr=0xaddr	Set the I/O base address. Useful for boards | 
|  | 43 | that don't set the address in the BIOS. Does not do a | 
|  | 44 | PCI force; the device must still be present in lspci. | 
|  | 45 | Don't use this unless the driver complains that the | 
|  | 46 | base address is not set. | 
|  | 47 | Example: 'modprobe sis5595 force_addr=0x290' | 
|  | 48 |  | 
|  | 49 |  | 
|  | 50 | Description | 
|  | 51 | ----------- | 
|  | 52 |  | 
|  | 53 | The SiS5595 southbridge has integrated hardware monitor functions. It also | 
|  | 54 | has an I2C bus, but this driver only supports the hardware monitor. For the | 
|  | 55 | I2C bus driver see i2c-sis5595. | 
|  | 56 |  | 
|  | 57 | The SiS5595 implements zero or one temperature sensor, two fan speed | 
|  | 58 | sensors, four or five voltage sensors, and alarms. | 
|  | 59 |  | 
|  | 60 | On the first version of the chip, there are four voltage sensors and one | 
|  | 61 | temperature sensor. | 
|  | 62 |  | 
|  | 63 | On the second version of the chip, the temperature sensor (temp) and the | 
|  | 64 | fifth voltage sensor (in4) share a pin which is configurable, but not | 
|  | 65 | through the driver. Sorry. The driver senses the configuration of the pin, | 
|  | 66 | which was hopefully set by the BIOS. | 
|  | 67 |  | 
|  | 68 | Temperatures are measured in degrees Celsius. An alarm is triggered once | 
|  | 69 | when the max is crossed; it is also triggered when it drops below the min | 
|  | 70 | value. Measurements are guaranteed between -55 and +125 degrees, with a | 
|  | 71 | resolution of 1 degree. | 
|  | 72 |  | 
|  | 73 | Fan rotation speeds are reported in RPM (rotations per minute). An alarm is | 
|  | 74 | triggered if the rotation speed has dropped below a programmable limit. Fan | 
|  | 75 | readings can be divided by a programmable divider (1, 2, 4 or 8) to give | 
|  | 76 | the readings more range or accuracy. Not all RPM values can accurately be | 
|  | 77 | represented, so some rounding is done. With a divider of 2, the lowest | 
|  | 78 | representable value is around 2600 RPM. | 
|  | 79 |  | 
|  | 80 | Voltage sensors (also known as IN sensors) report their values in volts. An | 
|  | 81 | alarm is triggered if the voltage has crossed a programmable minimum or | 
|  | 82 | maximum limit. Note that minimum in this case always means 'closest to | 
|  | 83 | zero'; this is important for negative voltage measurements. All voltage | 
|  | 84 | inputs can measure voltages between 0 and 4.08 volts, with a resolution of | 
|  | 85 | 0.016 volt. | 
|  | 86 |  | 
|  | 87 | In addition to the alarms described above, there is a BTI alarm, which gets | 
|  | 88 | triggered when an external chip has crossed its limits. Usually, this is | 
|  | 89 | connected to some LM75-like chip; if at least one crosses its limits, this | 
|  | 90 | bit gets set. | 
|  | 91 |  | 
|  | 92 | If an alarm triggers, it will remain triggered until the hardware register | 
|  | 93 | is read at least once. This means that the cause for the alarm may already | 
|  | 94 | have disappeared! Note that in the current implementation, all hardware | 
|  | 95 | registers are read whenever any data is read (unless it is less than 1.5 | 
|  | 96 | seconds since the last update). This means that you can easily miss | 
|  | 97 | once-only alarms. | 
|  | 98 |  | 
|  | 99 | The SiS5595 only updates its values each 1.5 seconds; reading it more often | 
|  | 100 | will do no harm, but will return 'old' values. | 
|  | 101 |  | 
|  | 102 | Problems | 
|  | 103 | -------- | 
|  | 104 | Some chips refuse to be enabled. We don't know why. | 
|  | 105 | The driver will recognize this and print a message in dmesg. | 
|  | 106 |  |