SIS5595 documentation and library updates

git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@407 7894878c-1315-0410-8ee3-d5d059ff63e0
This commit is contained in:
Frodo Looijaard committed 1999-04-21 15:57:06 +00:00
1 parent a8bb8d9d3b
commit f48a2146db
3 files changed
+131 -44

No files matched your search

+131 -4
View File
@@ -1,7 +1,134 @@
Kernel driver `sis5595.o'
=========================
This driver is for the SiS 5595 southbridge.
This is called sis5595-isa-* in /proc/sys/dev/sensors/chips
Status: Complete and tested
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.
Author: Kyösti Mälkki <kmalkki@cc.hut.fi>
Module Parameters
-----------------
* force: short array (min = 1, max = 48)
List of adapter,address pairs to boldly assume to be present
* force_sis5595: short array (min = 1, max = 48)
List of adapter,address pairs which are unquestionably assumed to contain
a `sis5595' chip
* ignore: short array (min = 1, max = 48)
List of adapter,address pairs not to scan
* ignore_range: short array (min = 1, max = 48)
List of adapter,start-addr,end-addr triples not to scan
* probe: short array (min = 1, max = 48)
List of adapter,address pairs to scan additionally
* probe_range: short array (min = 1, max = 48)
List of adapter,start-addr,end-addr triples to scan additionally
Description
-----------
The Sis5595 southbridge has integrated hardware monitor functionality.
It also has an I2C bus, but this driver only supports the hardware monitor.
The SiS5595 implements one temperature sensor, two FAN rotation speed
sensors, four voltage sensors and alarms.
Temperatures are measured in degrees Celcius. An alarm is triggered once
when the Overtemperature Shutdown limit is crossed; it is triggered again
as soon as it drops below the Hysteris value. A more useful behaviour
can be found by setting the Hysteris value to +127 degrees Celcius; in
this case, alarms are issued during all the time when the actual temperature
is above the Overtemperature Shutdown value. Measurements are guaranteed
between -55 and +125 degrees, with a resolution of 1 degree.
FAN rotation speeds are reported in RPM (rotations per minute). An alarm is
triggered if the rotation speed has dropped below a programmable limit. FAN
readings can be divided by a programmable divider (1, 2, 4 or 8) to give
the readings more range or accuracy. This is important because some FANs
report only one 'tick' each rotation, while others report two - making
all readings twice as high. Not all RPM values can accurately be represented,
so some rounding is done. With a divider of 2, the lowest representable
value is around 2600 RPM.
Voltage sensors (also known as IN 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. All voltage
inputs can measure voltages between 0 and 4.08 volts, with a resolution
of 0.016 volt.
In addition to the alarms described above, there is a BTI alarm, which gets
triggered when an external chip has crossed its limits. Usually, this is
connected to some LM75-like chip; if at least one crosses its limits, this
bit gets set.
If an alarm triggers, it will remain triggered until the hardware register
is read at least once. 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 Sis5595 only updates its values each 1.5 seconds; reading it more often
will do no harm, but will return 'old' values.
Chip Features
-------------
Chip `sis5595'
LABEL LABEL CLASS COMPUTE CLASS ACCESS MAGNITUDE
in0 NONE NONE R 2
in1 NONE NONE R 2
in2 NONE NONE R 2
in3 NONE NONE R 2
in0_min in0 in0 RW 2
in1_min in1 in1 RW 2
in2_min in2 in2 RW 2
in3_min in3 in3 RW 2
in0_max in0 in0 RW 2
in1_max in1 in1 RW 2
in2_max in2 in2 RW 2
in3_max in3 in3 RW 2
fan1 NONE NONE R 0
fan2 NONE NONE R 0
fan1_min fan1 fan1 RW 0
fan2_min fan2 fan2 RW 0
temp NONE NONE R 1
temp_hyst temp temp RW 1
temp_over temp temp RW 1
fan1_div fan1 NONE RW 0
fan2_div fan2 NONE RW 0
alarms NONE NONE R 0
LABEL FEATURE SYMBOL SYSCTL FILE:NR
in0 SENSORS_SIS5595_IN0 in0:3
in1 SENSORS_SIS5595_IN1 in1:3
in2 SENSORS_SIS5595_IN2 in2:3
in3 SENSORS_SIS5595_IN3 in3:3
in0_min SENSORS_SIS5595_IN0_MIN in0:1
in1_min SENSORS_SIS5595_IN1_MIN in1:1
in2_min SENSORS_SIS5595_IN2_MIN in2:1
in3_min SENSORS_SIS5595_IN3_MIN in3:1
in0_max SENSORS_SIS5595_IN0_MAX in0:2
in1_max SENSORS_SIS5595_IN1_MAX in1:2
in2_max SENSORS_SIS5595_IN2_MAX in2:2
in3_max SENSORS_SIS5595_IN3_MAX in3:2
fan1 SENSORS_SIS5595_FAN1 fan1:2
fan2 SENSORS_SIS5595_FAN2 fan2:2
fan1_min SENSORS_SIS5595_FAN1_MIN fan1:1
fan2_min SENSORS_SIS5595_FAN2_MIN fan2:1
temp SENSORS_SIS5595_TEMP temp:3
temp_hyst SENSORS_SIS5595_TEMP_HYST temp:2
temp_over SENSORS_SIS5595_TEMP_OVER temp:1
fan1_div SENSORS_SIS5595_FAN1_DIV fan_div:1
fan2_div SENSORS_SIS5595_FAN2_DIV fan_div:2
alarms SENSORS_SIS5595_ALARMS alarms:1
It has an integrated LM78 connected on ISA bus, so for any
sensor related information, read document lm78.
-27
View File
@@ -1160,12 +1160,6 @@ static sensors_chip_feature sis5595_features[] =
SENSORS_MODE_R, LM78_SYSCTL_IN2, VALUE(3), 2 },
{ SENSORS_SIS5595_IN3, "in3", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_IN3, VALUE(3), 2 },
{ SENSORS_SIS5595_IN4, "in4", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_IN4, VALUE(3), 2 },
{ SENSORS_SIS5595_IN5, "in5", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_IN5, VALUE(3), 2 },
{ SENSORS_SIS5595_IN6, "in6", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_IN6, VALUE(3), 2 },
{ SENSORS_SIS5595_IN0_MIN, "in0_min", SENSORS_SIS5595_IN0, SENSORS_SIS5595_IN0,
SENSORS_MODE_RW, LM78_SYSCTL_IN0, VALUE(1), 2 },
{ SENSORS_SIS5595_IN1_MIN, "in1_min", SENSORS_SIS5595_IN1, SENSORS_SIS5595_IN1,
@@ -1174,12 +1168,6 @@ static sensors_chip_feature sis5595_features[] =
SENSORS_MODE_RW, LM78_SYSCTL_IN2, VALUE(1), 2 },
{ SENSORS_SIS5595_IN3_MIN, "in3_min", SENSORS_SIS5595_IN3, SENSORS_SIS5595_IN3,
SENSORS_MODE_RW, LM78_SYSCTL_IN3, VALUE(1), 2 },
{ SENSORS_SIS5595_IN4_MIN, "in4_min", SENSORS_SIS5595_IN4, SENSORS_SIS5595_IN4,
SENSORS_MODE_RW, LM78_SYSCTL_IN4, VALUE(1), 2 },
{ SENSORS_SIS5595_IN5_MIN, "in5_min", SENSORS_SIS5595_IN5, SENSORS_SIS5595_IN5,
SENSORS_MODE_RW, LM78_SYSCTL_IN5, VALUE(1), 2 },
{ SENSORS_SIS5595_IN6_MIN, "in6_min", SENSORS_SIS5595_IN6, SENSORS_SIS5595_IN6,
SENSORS_MODE_RW, LM78_SYSCTL_IN6, VALUE(1), 2 },
{ SENSORS_SIS5595_IN0_MAX, "in0_max", SENSORS_SIS5595_IN0, SENSORS_SIS5595_IN0,
SENSORS_MODE_RW, LM78_SYSCTL_IN0, VALUE(2), 2 },
{ SENSORS_SIS5595_IN1_MAX, "in1_max", SENSORS_SIS5595_IN1, SENSORS_SIS5595_IN1,
@@ -1188,24 +1176,14 @@ static sensors_chip_feature sis5595_features[] =
SENSORS_MODE_RW, LM78_SYSCTL_IN2, VALUE(2), 2 },
{ SENSORS_SIS5595_IN3_MAX, "in3_max", SENSORS_SIS5595_IN3, SENSORS_SIS5595_IN3,
SENSORS_MODE_RW, LM78_SYSCTL_IN3, VALUE(2), 2 },
{ SENSORS_SIS5595_IN4_MAX, "in4_max", SENSORS_SIS5595_IN4, SENSORS_SIS5595_IN4,
SENSORS_MODE_RW, LM78_SYSCTL_IN4, VALUE(2), 2 },
{ SENSORS_SIS5595_IN5_MAX, "in5_max", SENSORS_SIS5595_IN5, SENSORS_SIS5595_IN5,
SENSORS_MODE_RW, LM78_SYSCTL_IN5, VALUE(2), 2 },
{ SENSORS_SIS5595_IN6_MAX, "in6_max", SENSORS_SIS5595_IN6, SENSORS_SIS5595_IN6,
SENSORS_MODE_RW, LM78_SYSCTL_IN6, VALUE(2), 2 },
{ SENSORS_SIS5595_FAN1, "fan1", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_FAN1, VALUE(2), 0 },
{ SENSORS_SIS5595_FAN2, "fan2", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_FAN2, VALUE(2), 0 },
{ SENSORS_SIS5595_FAN3, "fan3", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_FAN3, VALUE(2), 0 },
{ SENSORS_SIS5595_FAN1_MIN, "fan1_min", SENSORS_SIS5595_FAN1, SENSORS_SIS5595_FAN1,
SENSORS_MODE_RW, LM78_SYSCTL_FAN1, VALUE(1), 0 },
{ SENSORS_SIS5595_FAN2_MIN, "fan2_min", SENSORS_SIS5595_FAN2, SENSORS_SIS5595_FAN2,
SENSORS_MODE_RW, LM78_SYSCTL_FAN2, VALUE(1), 0 },
{ SENSORS_SIS5595_FAN3_MIN, "fan3_min", SENSORS_SIS5595_FAN3, SENSORS_SIS5595_FAN3,
SENSORS_MODE_RW, LM78_SYSCTL_FAN3, VALUE(1), 0 },
{ SENSORS_SIS5595_TEMP, "temp", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_TEMP, VALUE(3), 1 },
{ SENSORS_SIS5595_TEMP_HYST, "temp_hyst", SENSORS_SIS5595_TEMP,
@@ -1214,17 +1192,12 @@ static sensors_chip_feature sis5595_features[] =
{ SENSORS_SIS5595_TEMP_OVER, "temp_over", SENSORS_SIS5595_TEMP,
SENSORS_SIS5595_TEMP, SENSORS_MODE_RW,
LM78_SYSCTL_TEMP, VALUE(1), 1 },
{ SENSORS_SIS5595_VID, "vid", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_VID, VALUE(1), 2 },
{ SENSORS_SIS5595_FAN1_DIV, "fan1_div", SENSORS_SIS5595_FAN1, SENSORS_NO_MAPPING,
SENSORS_MODE_RW, LM78_SYSCTL_FAN_DIV, VALUE(1),
0 },
{ SENSORS_SIS5595_FAN2_DIV, "fan2_div", SENSORS_SIS5595_FAN2, SENSORS_NO_MAPPING,
SENSORS_MODE_RW, LM78_SYSCTL_FAN_DIV, VALUE(2),
0 },
{ SENSORS_SIS5595_FAN3_DIV, "fan3_div", SENSORS_SIS5595_FAN3, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_FAN_DIV, VALUE(3),
0 },
{ SENSORS_SIS5595_ALARMS, "alarms", SENSORS_NO_MAPPING, SENSORS_NO_MAPPING,
SENSORS_MODE_R, LM78_SYSCTL_ALARMS, VALUE(1), 0 },
{ 0 }
-13
View File
@@ -539,36 +539,23 @@
#define SENSORS_SIS5595_IN1 2 /* R */
#define SENSORS_SIS5595_IN2 3 /* R */
#define SENSORS_SIS5595_IN3 4 /* R */
#define SENSORS_SIS5595_IN4 5 /* R */
#define SENSORS_SIS5595_IN5 6 /* R */
#define SENSORS_SIS5595_IN6 7 /* R */
#define SENSORS_SIS5595_IN0_MIN 11 /* RW */
#define SENSORS_SIS5595_IN1_MIN 12 /* RW */
#define SENSORS_SIS5595_IN2_MIN 13 /* RW */
#define SENSORS_SIS5595_IN3_MIN 14 /* RW */
#define SENSORS_SIS5595_IN4_MIN 15 /* RW */
#define SENSORS_SIS5595_IN5_MIN 16 /* RW */
#define SENSORS_SIS5595_IN6_MIN 17 /* RW */
#define SENSORS_SIS5595_IN0_MAX 21 /* RW */
#define SENSORS_SIS5595_IN1_MAX 22 /* RW */
#define SENSORS_SIS5595_IN2_MAX 23 /* RW */
#define SENSORS_SIS5595_IN3_MAX 24 /* RW */
#define SENSORS_SIS5595_IN4_MAX 25 /* RW */
#define SENSORS_SIS5595_IN5_MAX 26 /* RW */
#define SENSORS_SIS5595_IN6_MAX 27 /* RW */
#define SENSORS_SIS5595_FAN1 31 /* R */
#define SENSORS_SIS5595_FAN2 32 /* R */
#define SENSORS_SIS5595_FAN3 33 /* R */
#define SENSORS_SIS5595_FAN1_MIN 41 /* RW */
#define SENSORS_SIS5595_FAN2_MIN 42 /* RW */
#define SENSORS_SIS5595_FAN3_MIN 43 /* RW */
#define SENSORS_SIS5595_TEMP 51 /* R */
#define SENSORS_SIS5595_TEMP_HYST 52 /* RW */
#define SENSORS_SIS5595_TEMP_OVER 53 /* RW */
#define SENSORS_SIS5595_VID 61 /* R */
#define SENSORS_SIS5595_FAN1_DIV 71 /* RW */
#define SENSORS_SIS5595_FAN2_DIV 72 /* RW */
#define SENSORS_SIS5595_FAN3_DIV 73 /* R (yes, really! */
#define SENSORS_SIS5595_ALARMS 81 /* R */