0001 Kernel driver sis5595
0002 =====================
0003
0004 Supported chips:
0005
0006 * Silicon Integrated Systems Corp. SiS5595 Southbridge Hardware Monitor
0007
0008 Prefix: 'sis5595'
0009
0010 Addresses scanned: ISA in PCI-space encoded address
0011
0012 Datasheet: Publicly available at the Silicon Integrated Systems Corp. site.
0013
0014
0015
0016 Authors:
0017
0018 - Kyösti Mälkki <kmalkki@cc.hut.fi>,
0019 - Mark D. Studebaker <mdsxyz123@yahoo.com>,
0020 - Aurelien Jarno <aurelien@aurel32.net> 2.6 port
0021
0022 SiS southbridge has a LM78-like chip integrated on the same IC.
0023 This driver is a customized copy of lm78.c
0024
0025 Supports following revisions:
0026
0027 =============== =============== ==============
0028 Version PCI ID PCI Revision
0029 =============== =============== ==============
0030 1 1039/0008 AF or less
0031 2 1039/0008 B0 or greater
0032 =============== =============== ==============
0033
0034 Note: these chips contain a 0008 device which is incompatible with the
0035 5595. We recognize these by the presence of the listed
0036 "blacklist" PCI ID and refuse to load.
0037
0038 =================== =============== ================
0039 NOT SUPPORTED PCI ID BLACKLIST PCI ID
0040 =================== =============== ================
0041 540 0008 0540
0042 550 0008 0550
0043 5513 0008 5511
0044 5581 0008 5597
0045 5582 0008 5597
0046 5597 0008 5597
0047 630 0008 0630
0048 645 0008 0645
0049 730 0008 0730
0050 735 0008 0735
0051 =================== =============== ================
0052
0053
0054 Module Parameters
0055 -----------------
0056
0057 ======================= =====================================================
0058 force_addr=0xaddr Set the I/O base address. Useful for boards
0059 that don't set the address in the BIOS. Does not do a
0060 PCI force; the device must still be present in lspci.
0061 Don't use this unless the driver complains that the
0062 base address is not set.
0063
0064 Example: 'modprobe sis5595 force_addr=0x290'
0065 ======================= =====================================================
0066
0067
0068 Description
0069 -----------
0070
0071 The SiS5595 southbridge has integrated hardware monitor functions. It also
0072 has an I2C bus, but this driver only supports the hardware monitor. For the
0073 I2C bus driver see i2c-sis5595.
0074
0075 The SiS5595 implements zero or one temperature sensor, two fan speed
0076 sensors, four or five voltage sensors, and alarms.
0077
0078 On the first version of the chip, there are four voltage sensors and one
0079 temperature sensor.
0080
0081 On the second version of the chip, the temperature sensor (temp) and the
0082 fifth voltage sensor (in4) share a pin which is configurable, but not
0083 through the driver. Sorry. The driver senses the configuration of the pin,
0084 which was hopefully set by the BIOS.
0085
0086 Temperatures are measured in degrees Celsius. An alarm is triggered once
0087 when the max is crossed; it is also triggered when it drops below the min
0088 value. Measurements are guaranteed between -55 and +125 degrees, with a
0089 resolution of 1 degree.
0090
0091 Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
0092 triggered if the rotation speed has dropped below a programmable limit. Fan
0093 readings can be divided by a programmable divider (1, 2, 4 or 8) to give
0094 the readings more range or accuracy. Not all RPM values can accurately be
0095 represented, so some rounding is done. With a divider of 2, the lowest
0096 representable value is around 2600 RPM.
0097
0098 Voltage sensors (also known as IN sensors) report their values in volts. An
0099 alarm is triggered if the voltage has crossed a programmable minimum or
0100 maximum limit. Note that minimum in this case always means 'closest to
0101 zero'; this is important for negative voltage measurements. All voltage
0102 inputs can measure voltages between 0 and 4.08 volts, with a resolution of
0103 0.016 volt.
0104
0105 In addition to the alarms described above, there is a BTI alarm, which gets
0106 triggered when an external chip has crossed its limits. Usually, this is
0107 connected to some LM75-like chip; if at least one crosses its limits, this
0108 bit gets set.
0109
0110 If an alarm triggers, it will remain triggered until the hardware register
0111 is read at least once. This means that the cause for the alarm may already
0112 have disappeared! Note that in the current implementation, all hardware
0113 registers are read whenever any data is read (unless it is less than 1.5
0114 seconds since the last update). This means that you can easily miss
0115 once-only alarms.
0116
0117 The SiS5595 only updates its values each 1.5 seconds; reading it more often
0118 will do no harm, but will return 'old' values.
0119
0120 Problems
0121 --------
0122 Some chips refuse to be enabled. We don't know why.
0123 The driver will recognize this and print a message in dmesg.