HOWTO-Use Elite's K7s5a mainboard under linux

Sebfrance, sebfrance@ifrance.com

v1.1, 2002-03-30

1. Introduction

2. The integrated sound board

3. The mainboard's sensors


1. Introduction

I got the mainboard for christmas 2001, and after a little while, I understood that the new chipset sis735 was not handled by mandrake 8.0, OSS had drivers for it that worked but I didn't really want to pay for it, so I looked on alsa cvs and found that in their latest source they had something for the sis 7012, and also find later the drivers for the sensors.


2. The integrated sound board

2.1 Getting the drivers

So we'll compile the latest sources from alsa, which should work for any other distrib as well... just the kernel source will change because mandrake uses specific patches You may get your kernel sources from your distribution or from http://www.kernel.org Here can be found Mandrake source for the kernel used in 8.0: ftp://ftp.univ-savoie.fr/pub/Linux/Mandrake/8.0/i586/Mandrake/RPMS/kernel-source-2.4.3-20mdk.i586.rpm and grab the tarball from alsa: ftp://ftp.alsa-project.org/pub/driver/alsa-driver-0.9.0beta10.tar.bz2

2.2 Installing them

Install your kernel sources, in my case:

rpm -ivh kernel-source-2.4.3-20mdk.i586.rpm

Then decompress alsa drivers:

bzip2 -d alsa-driver-0.9.0beta10.tar.bz2 && tar -xvf alsa-driver-0.9.0beta10.tar

Make them and install them and create the devices files:

cd alsa-driver-0.9.0beta10 && make install && ./snddevices

Edit /etc/modules.conf to set everything, and add to it the following lines:

alias char-major-116 snd

alias char-major-14 soundcore

alias sound-slot-0 snd-card-0

alias sound-service-0-0 snd-mixer-oss

alias sound-service-0-1 snd-seq-oss

alias sound-service-0-3 snd-pcm-oss

alias sound-service-0-8 snd-seq-oss

alias sound-service-0-12 snd-pcm-oss

alias snd-card-0 snd-card-intel8x0


3. The mainboard's sensors

3.1 Getting the drivers

Get the lm_sensors 2.6.2 or more recent: http://www.lm-sensors.nu/archive/lm_sensors-2.6.2.tar.gz You'll need kernel source too in order to compile that one

3.2 Installing them

tar -xzvf i2c-2.6.2.tar.gz

cd i2c-2.6.2

make && make install

Then there was a problem when making install for me, so if it doesn't work, just do the following:

cp kernel/i2c-core.o /lib/modules/`uname -r`/misc/i2c-core.o

cp kernel/i2c-proc.o /lib/modules/`uname -r`/misc/i2c-proc.o

Now let's copy the specific driver:

cp kernel/chips/it87.o /lib/modules/`uname -r`/misc/it87.o

ok now

cp prog/sensors/sensors /usr/bin/sensors

--------------------------------------------------------------------

Edit /etc/modules.conf and add to it the following lines:

alias char-major-89 i2c-dev

options it87 temp_type=0x31

now:

modprobe i2c-proc

modprobe it87

modprobe i2c-isa

sensors

should output you some data

now as root you should edit your /etc/sensors.conf search for that line: chip "it87-*" and below you should be able to modify everything to get the right data, here is a copy of what i have in there: (please note that temp1 is trash and only temp2 and temp3 should be kept)

--------------------------------------------------------------------

chip "it87-*"

# The values below have been tested on Asus CUSI, CUM motherboards.

# Voltage monitors as advised in the It8705 data sheet

label in0 "VCore"

label in1 "Vcc2.5v"

label in2 "Vcc5v"

label in3 "+5V"

label in4 "+12V"

label in5 "-12V"

label in6 "-5V"

label in7 "SB 5V"

label in8 "V battery"

set in0_min 1.5 * 0.95

set in0_max 1.5 * 1.05

set in1_min 2.4

set in1_max 2.6

set in2_min 3.3 * 0.95

set in2_max 3.3 * 1.05

set in3_min 5.0 * 0.95

set in3_max 5.0 * 1.05

set in4_min 12 * 0.95

set in4_max 12 * 1.05

set in5_min -12 * 0.95

set in5_max -12 * 1.05

set in6_min -5 * 0.95

set in6_max -5 * 1.05

set in7_min 5 * 0.95

set in7_max 5 * 1.05

# vid not monitored by IT8705F

ignore vid

# For this family of chips the negative voltage equation is different from

# the lm78. The chip uses two external resistor for scaling but one is

# tied to a positive reference voltage. See ITE8705/12 datasheet (SIS950

# data sheet is wrong)

# Vs = (1 + Rin/Rf) * Vin - (Rin/Rf) * Vref.

# Vref = 4.096 volts, Vin is voltage measured, Vs is actual voltage.

compute in2 (1 + 1)*@ , @/(1 + 1)

compute in3 ((6.8/10)+1)*@ , @/((6.8/10)+1)

compute in4 ((30/10) +1)*@ , @/((30/10) +1)

# The next two are negative voltages (-12 and -5).

# The following formulas must be used. Unfortunately the datasheet

# does not give recommendations for Rin, Rf, but we can back into

# them based on a nominal +2V input to the chip, together with a 4.096V Vref.

# Formula:

# actual V = (Vmeasured * (1 + Rin/Rf)) - (Vref * (Rin/Rf))

# For -12V input use Rin/Rf = 6.68

# For -5V input use Rin/Rf = 3.33

# Then you can convert the forumula to a standard form like:

compute in5 (7.67 * @) - 27.36 , (@ + 27.36) / 7.67

compute in6 (4.33 * @) - 13.64 , (@ + 13.64) / 4.33

#

compute in7 ((6.8/10)+1)*@ , @/((6.8/10)+1)

# Temperature

label temp3 "Processor"

set temp3_over 40

set temp3_hyst 20

label temp2 "Mainboard"

set temp2_over 45

set temp2_hyst 25

ignore temp1

# Fans

label fan1"Processor's Fan"

set fan1_min 2000

ignore fan3

ignore fan2