LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   problems with ISA soundcard (snd-opti93x) (https://www.linuxquestions.org/questions/slackware-14/problems-with-isa-soundcard-snd-opti93x-501431/)

superandrzej 11-14-2006 04:27 AM

problems with ISA soundcard (snd-opti93x)
 
Hi,

I'm not able to load soundcard module

#modprobe snd-opti93x
FATAL: Error inserting snd_opti93x (/lib/modules/2.6.17.13/kernel/sound/isa/opti9xx/snd-opti93x.ko): No such device

I use Slackware 11 with 2.6.17.13 before on the same computer there was Slackware 10.2 with 2.4.x kernel and sound worked just fine. Unfortunately I didn't keep old configuration files ;(.

Does anyone know what needs to be done?

Youri 11-14-2006 04:49 AM

did you run alsa-conf first? wat is the lspci output?

superandrzej 11-14-2006 05:00 AM

yes. I run alsaconf.
In fact the output from alsaconf suggested me that there is problem with loading module.

allend 11-14-2006 08:46 AM

An ISA soundcard will not show in the listing from lspci.

I have an old ISA Soundblaster 16 card which requires the line shown below added to /etc/rc.d/rc.modules in order for it to be detected and properly setup.

# Sound Blaster Pro/16 support:
/sbin/modprobe snd-sb16 index=0 id="SB-16" port=0x220 mpu_port=0x330 irq=5 dma8=3 dma16=5 isapnp=0

I do not know the particular card that you have, but you will probably need to set the interrupt line that you want the card to use as well as I/O port, DMA channels and MPU port.

the following quote is from the /etc/rc.d/rc.modules.
Quote:

# (For information on configuring other sound cards with Linux,
# see the documentation in /usr/src/linux/Documentation/sound/,
# and /usr/src/linux/Documentation/Configure.help.

superandrzej 11-17-2006 01:01 PM

How would I know what parameters to use? :scratch:

In /usr/src/linux/Documentation/sound/alsa/ALSA-Configuration.txt
there are many possibilities concerning this module: almost 3000 combinations of parameters!!!

Quote:

Module snd-opti93x
------------------

Module for sound cards based on OPTi 82c93x chips.

port - port # for WSS chip (0x530,0xe80,0xf40,0x604)
mpu_port - port # for MPU-401 UART (0x300,0x310,0x320,0x330)
fm_port - port # for OPL3 device (0x388)
irq - IRQ # for WSS chip (5,7,9,10,11)
mpu_irq - IRQ # for MPU-401 UART (5,7,9,10)
dma1 - first DMA # for WSS chip (0,1,3)
dma2 - second DMA # for WSS chip (0,1,3)

This module supports only one card, autoprobe and PnP.
It would last ages to try all combinations one by one.

BTW.
Does anyone know what device is modprobe complaining about?:confused:

number22 11-17-2006 03:04 PM

this old opti 82c93x is not support isa pnp; the best choice is compile it within kernel; I could be wrong.

this card is sndblast 16 compatible; you have to enable isa irq in bios; since it can not be pnp, so best luck

I had problem with this card with alsa, however I had it replace with my other SB16.

gruntwerk 11-17-2006 08:43 PM

look in your bios and see if the params are listed there...

allend 11-17-2006 08:52 PM

From
http://www.alsa-project.org/alsa-doc...module=opti93x

Quote:

The module options for snd-opti93x

# description: "OPTi93X"
# author: "Massimo Piccioni "
# license: "GPL"
# parm: index int, description "Index value for opti9xx based soundcard."
# parm: id string, description "ID string for opti9xx based soundcard."
# parm: isapnp int, description "Enable ISA PnP detection for specified soundcard."
# parm: port long, description "WSS port # for opti9xx driver."
# parm: mpu_port long, description "MPU-401 port # for opti9xx driver."
# parm: fm_port long, description "FM port # for opti9xx driver."
# parm: irq int, description "WSS irq # for opti9xx driver."
# parm: mpu_irq int, description "MPU-401 irq # for opti9xx driver."
# parm: dma1 int, description "1st dma # for opti9xx driver."
# parm: dma2 int, description "2nd dma # for opti9xx driver."
Looking at the above as well as /usr/src/linux/Documentation/sound/Opti
I suggest trying this line.

/sbin/modprobe snd-opti93x index=0 id="SB" port=0x530 mpu_port=0x330 fm_port=0x388 irq=5 mpu_irq=9 dma1=0 dma2=1 isapnp=0

The choice of assignment of interrupts and ports is up to you, and is dependent on what other devices on your system are using. You will need to assign your interrupts, DMA channels and ports to those that are free.

cat /proc/interrupts - This gives a list of interrupts in use on your system.
cat /proc/ioports - This gives a list of ioports in use on your system.
cat /proc/dma - This gives a list of DMA channels in use on your system.

The suggestion of number22 to check the BIOS setup for your interrupts and perhaps forcing assignment to ISA may also be necessary
.

superandrzej 12-23-2006 09:31 AM

solution
 
Finally I've found the solution:

in
/etc/rc.d/rc.local
I put:

Quote:

modprobe snd-opti93x index=0 id="O82C931" port=0x530 mpu_port=0x330 fm_port=0x388 irq=5 mpu_irq=9 dma1=0 dma2=1 isapnp=0
modprobe snd-opti93x
alsactl restore

I had to use modprobe twice because apparently there was no enough time to load modules snd-opti93x depends on and the module itself.
So first line is loading module dependencies and the second line is loading the module.
The index name "O82C931" should be the same as in /etc/asound.state, otherwise volume settings won't be loaded.

I also disabled /etc/rc.d/rc.alsa because it was no longer needed.


All times are GMT -5. The time now is 02:52 AM.