Kernel driver sis5595

Supported chips:

  • Silicon Integrated Systems Corp. SiS5595 Southbridge Hardware Monitor

    Prefix: ‘sis5595’

    Addresses scanned: ISA in PCI-space encoded address

    Datasheet: Publicly available at the Silicon Integrated Systems Corp. site.

Authors:

SiS southbridge has a LM78-like chip integrated on the same IC.This driver is a customized copy of lm78.c

Supports following revisions:

VersionPCI IDPCI Revision
11039/0008AF or less
21039/0008B0 or greater
Note: these chips contain a 0008 device which is incompatible with the
5595. We recognize these by the presence of the listed“blacklist” PCI ID and refuse to load.
NOT SUPPORTEDPCI IDBLACKLIST PCI ID
54000080540
55000080550
551300085511
558100085597
558200085597
559700085597
63000080630
64500080645
73000080730
73500080735

Module Parameters

force_addr=0xaddr

Set the I/O base address. Useful for boardsthat don’t set the address in the BIOS. Does not do aPCI force; the device must still be present in lspci.Don’t use this unless the driver complains that thebase address is not set.

Example: ‘modprobe sis5595 force_addr=0x290’

Description

The SiS5595 southbridge has integrated hardware monitor functions. It alsohas an I2C bus, but this driver only supports the hardware monitor. For theI2C bus driver see i2c-sis5595.

The SiS5595 implements zero or one temperature sensor, two fan speedsensors, four or five voltage sensors, and alarms.

On the first version of the chip, there are four voltage sensors and onetemperature sensor.

On the second version of the chip, the temperature sensor (temp) and thefifth voltage sensor (in4) share a pin which is configurable, but notthrough the driver. Sorry. The driver senses the configuration of the pin,which was hopefully set by the BIOS.

Temperatures are measured in degrees Celsius. An alarm is triggered oncewhen the max is crossed; it is also triggered when it drops below the minvalue. Measurements are guaranteed between -55 and +125 degrees, with aresolution of 1 degree.

Fan rotation speeds are reported in RPM (rotations per minute). An alarm istriggered if the rotation speed has dropped below a programmable limit. Fanreadings can be divided by a programmable divider (1, 2, 4 or 8) to givethe readings more range or accuracy. Not all RPM values can accurately berepresented, so some rounding is done. With a divider of 2, the lowestrepresentable value is around 2600 RPM.

Voltage sensors (also known as IN sensors) report their values in volts. Analarm is triggered if the voltage has crossed a programmable minimum ormaximum limit. Note that minimum in this case always means ‘closest tozero’; this is important for negative voltage measurements. All voltageinputs can measure voltages between 0 and 4.08 volts, with a resolution of0.016 volt.

In addition to the alarms described above, there is a BTI alarm, which getstriggered when an external chip has crossed its limits. Usually, this isconnected to some LM75-like chip; if at least one crosses its limits, thisbit gets set.

If an alarm triggers, it will remain triggered until the hardware registeris read at least once. This means that the cause for the alarm may alreadyhave disappeared! Note that in the current implementation, all hardwareregisters are read whenever any data is read (unless it is less than 1.5seconds since the last update). This means that you can easily missonce-only alarms.

The SiS5595 only updates its values each 1.5 seconds; reading it more oftenwill do no harm, but will return ‘old’ values.

Problems

Some chips refuse to be enabled. We don’t know why.The driver will recognize this and print a message in dmesg.