include: replace linux/module.h with "struct module" wherever possible
[linux-2.6/next.git] / Documentation / hwmon / sis5595
blob4f8877a34f37509ac9741627978b8a6d2e157882
1 Kernel driver sis5595
2 =====================
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.
10 Authors:
11         Kyösti Mälkki <kmalkki@cc.hut.fi>,
12         Mark D. Studebaker <mdsxyz123@yahoo.com>,
13         Aurelien Jarno <aurelien@aurel32.net> 2.6 port
15    SiS southbridge has a LM78-like chip integrated on the same IC.
16    This driver is a customized copy of lm78.c
18    Supports following revisions:
19        Version         PCI ID          PCI Revision
20        1               1039/0008       AF or less
21        2               1039/0008       B0 or greater
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.
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
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'
50 Description
51 -----------
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.
57 The SiS5595 implements zero or one temperature sensor, two fan speed
58 sensors, four or five voltage sensors, and alarms.
60 On the first version of the chip, there are four voltage sensors and one
61 temperature sensor.
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.
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.
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.
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.
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.
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.
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.
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.