# SiS 7018 + ALSA

## R!tman

Hi all,

kernel 2.6.1(gentoo-dev-sources)  is mostly running fine on my laptop; except for sound. I did the same procedure on my desktop and it worked right away. For my laptop I compiled:

```
<*> Sound Card Support

<*> Advanced Linux Sound Architecture

<*> Sequencer Support

<*> OSS API emulation

<*> OSS mixer API

<*> OSS PCM (digital audio) API

<*> Trident 4D-Wave DX/NX; SiS 7018

```

I also enabled

```
<*> Gameport support
```

because I heard this might be needed. 

This should be correct, but ALSA reports 

```
No soundcards found
```

The "Trident 4D-Wave DX/NX; SiS 7018" as a modules is called snd_trident, which I used for my 2.4.22 kernel (and it worked, of course).

I even tried to enable all sound cards in the kernel, but the ALSA message was the same.

Any ideas what could be wrong here?

----------

## R!tman

By the way, I have tried to compile everything as modules, too. But that did not help it.

----------

## R!tman

Doesn't anyone have an idea? I mean, SiS chipset is quite common...

----------

## twstd3bc

I don't know of anyone who got snd_trident working in kernel 2.6.  I'll go look at the alsa mailing list and see...

----------

## R!tman

Really? I posted, because I did not find anyone with the same problem. Please post again, if you find any information regarding this subject. Thank you.

----------

## Phk

Hi there.

I have an Amilo laptop with a SiS7012 soundcard, which worked perfectly with 2.4x kernels, and gave a lot of problems with the new 2.6.1...

I've done everything exactly has you did, and it behaved has bad has yours..

But,  the solution was rather weird...

rebuild your kernel without MIDI support.   :Very Happy: 

I know this sound very very strange, but here are the steps i took:

```
emerge alsa-driver && emerge alsa-lib && emerge alsa-utils
```

if alsa-driver fails to compile with the 2.6.x kernel, read below for a solution i've found, changing the original .ebuild file

```
-> Go to the kernel "menuconfig" and de-select [b]everything[/b] related with midi, and all other sound cards
```

This sounds very strange to me, but the thing is: IT WORKED  :Very Happy: 

Maybe the 2.6.x kernel's ALSA, loaded at boot, must have the main sound device loaded at "#0", instead of #1, since #0 was the MIDI device!!

```
Compile the kernel and reboot
```

You should then notice quite a different ALSA report at boot..

Go on, try it, i hope that works for you!

Good luck,

Artur Martins (aka Phk)

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

About that alsa-driver problem with the 2.6x kernels:

- edit /usr/portage/media-sound/alsa-driver/alsa-driver-0.9.8.ebuild

- in function src_unpack(), add the following 3 lines (cp command) AFTER the line:

```
 epatch ${FILESFIR}/makefile.patch 
```

so that it looks like this:

```
 epatch ${FILESFIR}/makefile.patch

cp /usr/src/linux/include/config/modversions.h /var/tmp/portage/alsa-drver-0.9.8/work/alsa-driver-0.9.8/

cp /usr/src/linux/include/config/modversions.h /var/tmp/portage/alsa-drver-0.9.8/work/alsa-driver-0.9.8/include/linux

cp /usr/src/linux/include/config/modversions.h /var/tmp/portage/alsa-drver-0.9.8/work/alsa-driver-0.9.8/linux
```

I know this is a lousy work-around, but it solves the "modversions.h" problem!

See us around!

Phracker

----------

## Phk

Hi there.

I have an Amilo laptop with a SiS7012 soundcard, which worked perfectly with 2.4x kernels, and gave a lot of problems with the new 2.6.1...

I've done everything exactly has you did, and it behaved has bad has yours..

But,  the solution was rather weird...

rebuild your kernel without MIDI support.   :Very Happy: 

I know this sound very very strange, but here are the steps i took:

```
emerge alsa-driver && emerge alsa-lib && emerge alsa-utils
```

if alsa-driver fails to compile with the 2.6.x kernel, read below for a solution i've found, changing the original .ebuild file

```
-> Go to the kernel "menuconfig" and de-select [b]everything[/b] related with midi, and all other sound cards
```

This sounds very strange to me, but the thing is: IT WORKED  :Very Happy: 

Maybe the 2.6.x kernel's ALSA, loaded at boot, must have the main sound device loaded at "#0", instead of #1, since #0 was the MIDI device!!

```
Compile the kernel and reboot
```

You should then notice quite a different ALSA report at boot..

Go on, try it, i hope that works for you!

Good luck,

Artur Martins (aka Phk)

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

About that alsa-driver problem with the 2.6x kernels:

- edit /usr/portage/media-sound/alsa-driver/alsa-driver-0.9.8.ebuild

- in function src_unpack(), add the following 3 lines (cp command) AFTER the line:

```
 epatch ${FILESFIR}/makefile.patch 
```

so that it looks like this:

```
 epatch ${FILESFIR}/makefile.patch

cp /usr/src/linux/include/config/modversions.h /var/tmp/portage/alsa-drver-0.9.8/work/alsa-driver-0.9.8/

cp /usr/src/linux/include/config/modversions.h /var/tmp/portage/alsa-drver-0.9.8/work/alsa-driver-0.9.8/include/linux

cp /usr/src/linux/include/config/modversions.h /var/tmp/portage/alsa-drver-0.9.8/work/alsa-driver-0.9.8/linux
```

I know this is a lousy work-around, but it solves the "modversions.h" problem!

See us around!

Phracker

----------

## Phk

___

----------

## R!tman

@Phx

Good, that it worked for you. Unfortunately, I have a SiS 7018 (not 7012) soundcard. 

One question: Why did you compile alsa-DRIVERS??? This support should be given by the kernel or with kernel modules. Have you tried to get your card to work without the alsa-drivers (only libs and utils)?

----------

## Phk

Why? Cause the kernel drivers didn't work! Now i don't know which ones are working, since the kernel says exactly the same thing before....

 Well, at least it works now  :Wink:  And yours should works too, the difference of 7018 and 1012 is minimum.....

  You should try the MIDI thing, made my speakers sing..  :Very Happy: 

----------

## ryszardzonk

i have sis 7018 just like You on te laptoop and I didnt have any problems with it with any 2.6 kernel version. presently i have 2.6.2-mm1 and it worls like a charm

what You shoud do is UNINSTALL alsa-drivers as they are not needed and provided by the kernel sources. what you still need is alsa-libs and alsa-utils. Utils are neesesery for you to get alsamixer which is needed to get any sound from alsa. The mixer is MUTED by default.

anyway what you need to do

1) have every alsa stuff in kernel setup as module ( no defference really, but makes your kernel more stable in case sound so going to get screwed up - that is why everything that is NOT NEEDED for boot should be as module)

2 OPTIONAL) 

A --- if your soundcard is not recognized it my be that You need to go back to your PCI settings and check the "CONFIG_PCI_GO_ANY=y" option so it can get access to all PCI resources for probing purposes

B --- other option to chceck is "CONFIG_PCI_NAMES=y"

This should solve yours NO SOUND CARDS FOUND problem

3) after You reboot your new kernel start "alsaconf" which should setup your card properly

4) here you my have to edit modules file by

# nano "/etc/modules.d/alsa" and put Your sound card there which in our case is "snd-trident"

5) then start "alsamixer" (from alsautils) to setup your volume on the sound card

6) last is "rc-update add alsasound boot" without this You wold not get the sound after reboot, becouse with alsa it has to be restored everytime after rebbot and that is what this script does

7) GOOD LUCK  :Smile: 

----------

## R!tman

@ ryszardzonk

Thank you for the cool guide. Unfortunately it did not work for me. "CONFIG_PCI_GOANY=y" (it is not "..GO_ANY=y") and "CONFIG_PCI_NAMES=y" were enabled already. I even tried mm-sources. No success. 

I know there is something very strange going on with my notebook. I would be very glad if anybody had other ideas how to fix this for me. 

Thanks again, ryszardzonk

----------

## jhr0771

I have and ARM computer with SiS 7018 and it worked with gentoo-dev-sources 2.6.1.

My only problem ( very weird ) is that the sound settings get reseted with every new song  I play in XMMS or rhytmbox.

To make it work:

1) emerge -C alsa-driver, alsa-oss . I kept alsa-util and alsa-lib

2) activate the alsa stuff in the kernel as modules

3) reboot and it worked !

----------

## ryszardzonk

I have looked at your post again and there is not much more I can help in that matter. I am supprised that it doesnt work, sinse it was the easiest thing for me to set-up and that is basicly wat I did. 

Of couse every computer is different and as many users there is there would be that many problems. Myself I am struggling with ACPI FAN & LM_sensors. It doesnt work for me...

I hope you find the solution

----------

## R!tman

Yeah, it might be my specific notebook. On my other PC it was very easy to set ALSA up, as you already said.

Regarding your ACPI problem: I had a problem with that too. The main reason was that my BIOS was too old. I solved the problem with simply adding 

```
acpi=force
```

to my kernel options in grub.conf. After that everything acpi related worked fine. 

By the way: I compiled all ACPI stuff into the kernel, not as modules.

Good luck with your ACPI problem.

----------

## Smoka

Had the same Problem.

Could only solve it by choosing an other Kernel (Vanilla 2.6.2).

Used the same .config and it simply worked.

----------

## R!tman

I haven't found your sources in portage. Only vanilla 2.4.24, vanilla prepatch 2.4.25 and vanilla tiny sources 2.6.2 (masked). Did you install the tiny sources?

----------

## R!tman

Maybe this helps tracking down the problem:

```
Advanced Linux Sound Architecture Driver Version 1.0.2c (Thu Feb 05 15:41:49 2004 UTC).

Trident4DWaveAudio: probe of 0000:00:01.4 failed with error -16

ALSA device list:

  No soundcards found.

```

This is the part from dmesg that causes the problem.

----------

## R!tman

I think I have come a bit closer. In my opinion ACPI is somehow messing around with the PCI IRQ routing. Adding 

```
pci=noacpi
```

to the kernel options gives me:

```
Advanced Linux Sound Architecture Driver Version 1.0.2c (Thu Feb 05 15:41:49 2004 UTC).

PCI: Found IRQ 11 for device 0000:00:01.4

PCI: Sharing IRQ 11 with 0000:00:03.0

Trident4DWaveAudio: probe of 0000:00:01.4 failed with error -16

ALSA device list:

  No soundcards found.
```

while the device which the IRQ is shared with is

```
Yenta: CardBus bridge found at 0000:00:03.0 [1584:3000]
```

This was with mm-sources.

With gentoo-dev-sources and with all PCMCIA stuff disabled I get:

```
Advanced Linux Sound Architecture Driver Version 1.0.0rc2.

request_module: failed /sbin/modprobe -- snd-card-0. error = -16

PCI: Assigned IRQ 11 for device 0000:00:01.4

PCI: Sharing IRQ 11 with 0000:00:03.0

Trident4DWaveAudio: probe of 0000:00:01.4 failed with error -16

ALSA device list:

  No soundcards found.
```

Anyway, I mainly switched to 2.6 because my PCMCIA wireless card was working correctly. So disabling PCMCIA would not be a solution for me.

Any idea on the one?

----------

## R!tman

It works flawlessly with mm-sources-2.6.4-r1  :Very Happy: . 

But now bootsplash does not work  :Sad: . [edit]And PCMCIA does not seem to work to.[\edit]

I think I will have to wait for gentoo-dev-sources-2.6.4.

----------

