Skip to contentSkip to conversation

Sb16 kernel parameters.

DISCUSSION Kurt Roeckx 4 participants 6 messages Jul 17, 2003 – Jul 20, 2003

lore
Share & tools
lore
#0 lore raw

I have an sound blaster 16, but I'm unable to get it working with 2.6.

During boot I get:
Advanced Linux Sound Architecture Driver Version 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
ALSA device list:
#0: Sound Blaster 16 at 0x220, irq 5, dma 1&5

Normally I'm using irq 7, and that has always worked for me, but for some reason it's selecting it.

I'm still using my kernel parameter line from 2.4:
sb=0x220,7,1,5

And I tried some other things, but I'm unable to get it to work.

How am I supposed to get the IRQ of the SB16 that's compiled in the kernel?

Kurt

#1 lore raw

You'll need to use the kernel parameter (Documentation/kernel-parameters.txt) snd-sb16 .

Looking at the docs in the Documentation/sound/alsa directory:

Module snd-sb16 and snd-sbawe
-----------------------------

Module for 16-bit SoundBlaster cards: SoundBlaster 16 (PnP),
SoundBlaster AWE 32 (PnP), SoundBlaster AWE 64 PnP

   port        - port # for SB DSP 4.x chip (0x220,0x240,0x260)
   mpu_port    - port # for MPU-401 UART (0x300,0x330), -1 = disable
   awe_port    - base port # for EMU8000 synthesizer (0x620,0x640,0x660)
                  (snd-sbawe module only)
   irq         - IRQ # for SB DSP 4.x chip (5,7,9,10)
   dma8        - 8-bit DMA # for SB DSP 4.x chip (0,1,3)
   dma16       - 16-bit DMA # for SB DSP 4.x chip (5,6,7)
   mic_agc     - Mic Auto-Gain-Control - 0 = disable, 1 = enable (default)
   csp         - ASP/CSP chip support - 0 = disable (default), 1 = enable
   isapnp      - ISA PnP detection - 0 = disable, 1 = enable (default)

Module supports up to 8 cards, autoprobe and ISA PnP.

Note: To use Vibra16X cards in 16-bit half duplex mode, you must
disable 16bit DMA with dma16 = -1 module parameter. Also, all Sound Blaster 16 type cards can operate in 16-bit half duplex mode through 8-bit DMA channel by disabling their 16-bit DMA channel.

And at the end of the sb16.c file I found:

#ifndef MODULE

/* format is: snd-sb16=enable,index,id,isapnp,

                      port,mpu_port,fm_port,
                      irq,dma8,dma16,
                      mic_agc,csp,
                      [awe_port,seq_ports]

Which is probably what format you'll need to use but I don't know much about drivers...;-) I don't know what "id" stands for either...

Good luck!

Quoted 32 lines · Kurt Roeckx

I have an sound blaster 16, but I'm unable to get it working with 2.6.

During boot I get:
Advanced Linux Sound Architecture Driver Version 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
ALSA device list:
#0: Sound Blaster 16 at 0x220, irq 5, dma 1&5

Normally I'm using irq 7, and that has always worked for me, but for some reason it's selecting it.

I'm still using my kernel parameter line from 2.4:
sb=0x220,7,1,5

And I tried some other things, but I'm unable to get it to work.

How am I supposed to get the IRQ of the SB16 that's compiled in the kernel?

Kurt

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

#2 lore raw

At Thu, 17 Jul 2003 18:27:05 -0500,

Quoted 6 lines · Wes Janzen

And at the end of the sb16.c file I found:

#ifndef MODULE

/* format is: snd-sb16=enable,index,id,isapnp,

Quoted 8 lines
                       port,mpu_port,fm_port,
                       irq,dma8,dma16,
                       mic_agc,csp,
                       [awe_port,seq_ports]

Which is probably what format you'll need to use but I don't know much about drivers...;-)
I don't know what "id" stands for either...

enable, index and id are common options for all modules. the id is the identifier string for this card instance and must be unique. it's used as the directory name in /proc/asound, as the tag in /etc/asound.state, and so on.
you can pass the arbitray string via option, or the null string so that the driver chooses an approriate name.

Takashi

#3 lore raw
Quoted 17 lines · Takashi Iwai

At Thu, 17 Jul 2003 18:27:05 -0500,

Quoted 6 lines · Wes Janzen

And at the end of the sb16.c file I found:

#ifndef MODULE

/* format is: snd-sb16=enable,index,id,isapnp,

Quoted 8 lines
                       port,mpu_port,fm_port,
                       irq,dma8,dma16,
                       mic_agc,csp,
                       [awe_port,seq_ports]

Which is probably what format you'll need to use but I don't know much about drivers...;-)
I don't know what "id" stands for either...

Quoted 6 lines

enable, index and id are common options for all modules. the id is the identifier string for this card instance and must be unique. it's used as the directory name in /proc/asound, as the tag in /etc/asound.state, and so on.
you can pass the arbitray string via option, or the null string so that the driver chooses an approriate name.

I've not been testing 2.5 yet and perhaps some of what you said would make more sense if i had but i for one haven't a clue to what the string equivalent to "sb=0x220,7,1,5" would be or where i might specify it. It's been a couple of years since i did the digging to figure out i needed the sb= line and what the contents should be.

How to do this needs to go into the 2.4-2.6 migration document/FAQ. And it should go in in a rather explicit way on the order of "if for SB16 you have been using sb=0x220,7,1,5 as a boot parameter you would now need to use XXXX=XXXXXXXXXX as ZZZZZ.

Signature · 5 lines
________________________________________________________________
	J.W. Schultz            Pegasystems Technologies
	email address:		[email protected]

		Remember Cernan and Schmitt
#4 lore raw
In reply to Wes Janzen
Quoted 4 lines · Wes Janzen

You'll need to use the kernel parameter
(Documentation/kernel-parameters.txt) snd-sb16 .

Looking at the docs in the Documentation/sound/alsa directory:

I did look at both, the alsa documentation wasn't that clear.

It doesn't say what fm_port is, in what order the parameters are.

Quoted 4 lines

And at the end of the sb16.c file I found:

#ifndef MODULE

Quoted 8 lines

/* format is: snd-sb16=enable,index,id,isapnp,

                      port,mpu_port,fm_port,
                      irq,dma8,dma16,
                      mic_agc,csp,
                      [awe_port,seq_ports]

Which is probably what format you'll need to use but I don't know much about drivers...;-)

Ah, didn't find that.

I tried using things like:
snd-sb16=1,0,card1,0,0x220,-1,-1,7,1,5,0

But when booting the kernel with that parameter, just after "booting the kernel", it reboots. Without that parameter it boots normally.

Kurt

#5 lore raw
Quoted 7 lines · Kurt Roeckx

I tried using things like:
snd-sb16=1,0,card1,0,0x220,-1,-1,7,1,5,0

But when booting the kernel with that parameter, just after "booting the kernel", it reboots. Without that parameter it boots normally.

I just tried the OSS version instead.

During boot I now always get:
sb: Init: Starting Probe...
sb: Error: At least io, irq, and dma must be set for legacy cards.
sb: Init: Done

I tried using the parameters sb=0x220,7,1,5 and
snd-sb16=1,0,card1,0,0x220,-1,-1,7,1,5,0
but neither seems to work.

Kurt