[Pkg-alsa-devel] Bug#359851: linux-sound-base: OSS emulation
incorrectly disabled
David Liontooth
liontooth at cogweb.net
Fri Mar 31 22:49:01 UTC 2006
Elimar Riesebieter wrote:
> On Wed, 29 Mar 2006 the mental interface of
> David Liontooth told:
>
> [...]
>
>> I have both the modular and the non-modular kernel available, and can boot into
>> one or the other at will.
>>
>> I added saa7134 to /usr/share/linux-sound-base/OSS-module-list, as you
>> instruct, and rebooted into the modular kernel.
>>
>> dmesg shows that the system by default has loaded saa7134 without any insmod
>> parameters, and has not loaded either saa7134-oss or saa7134-alsa, since 2.6.16
>> separate modules. To activate oss, I remove saa7134 and reinsert with these
>> options, which I place in /etc/modprobe.d/saa7134:
>>
>> # Load saa7134-oss with kernel 2.6.16
>> options saa7134 card=2,2,2,2 tuner=43,43,43,43 video_nr=1,2,3,4 vbi_nr=1,2,3,4
>> radio_nr=1,2,3,4
>> install saa7134 /sbin/modprobe --ignore-install saa7134; /sbin/modprobe
>> saa7134-oss
>> options saa7134-oss dsp_nr=1,2,3,4 mixer_nr=1,2,3,4
>>
>> dmesg show shows the four saa7134 cards correctly configured, and in addition
>> the oss device nodes:
>>
>> saa7133[0]: registered device dsp1
>> saa7133[0]: registered device mixer1
>> saa7133[1]: registered device dsp2
>> saa7133[1]: registered device mixer2
>> saa7133[2]: registered device dsp3
>> saa7133[2]: registered device mixer3
>> saa7133[3]: registered device dsp4
>> saa7133[3]: registered device mixer4
>>
>> I don't know, however, if this procedure spoiled your experiment, let me know.
>> I had to do something to load saa7134-oss.
>>
>> When I now run vlc, it finds the OSS devices, so that your suggestion appears
>> to have fixed the problem.
>>
>
> First I need somme clarification 'cause I don't have a soundcard
> running saa7137 handy:
> Are there three modules available in 1.0.10:
> saa7137
> saa7137-oss
> saa7137-alsa ?
>
There has been a series of changes in recent kernels (note this is all
saa7134, not saa7137, which doesn't exist in Linux):
Up through 2.6.14 (and all of 2.4): an oss function is built into the
saa7134 module
Starting with 2.6.15: a separate saa7134-alsa module; the oss function
still built into the saa7134 module
Starting with 2.6.16: a separate saa7134-oss module in addition to the
separate saa7134-alsa module -- the oss component has now been fully
removed from the saa7134 module. Either saa7134-oss or saa7134-alsa (but
not both at the same time) can be inserted to provide DMA sound for the
saa7134 card.
> I can't seee the reason yet. What is the saa7137 for? Will it be
> unloded automacigly by loading a -oss/alsa one?
>
saa7134 is the driver for a family of television cards, using the
Philips saa7134 decoder chip. The saa7134 driver has the same function
for these chips as the older bttv driver has for bt87x chips -- it talks
to the chip that digitizes an analog video signal. In the 2.6.16 kernel,
this driver does not automagically load either of the two available DMA
sound drivers; these must be loaded independently. Unloading one of the
sound drivers (saa7134-oss or saa7134-alsa) will not unload the saa7134
driver. It is still possible to use the saa7134 driver without using
either of the two DMA sound drivers, for instance by attaching a patch
cable from the tv card to a separate sound card.
For details, see http://linuxtv.org/v4lwiki/index.php/Saa7134-alsa --
note that the two alternative DMA sound modules take different insmod
parameters.
> If not, loding -oss/alsa via /etc/modules like this entry
>
> saa7134 card=2,2,2,2 tuner=43,43,43,43 video_nr=1,2,3,4 \
> vbi_nr=1,2,3,4 radio_nr=1,2,3,4
> saa7134-oss dsp_nr=1,2,3,4 mixer_nr=1,2,3,4
>
> should be that easy ;)
>
Here it's my turn not to understand what's going on :-) -- not sure what
you're commenting on here.
> Any way, I'll blacklist saa7134 in svn.
>
That did seem to do the trick -- you might want to ensure that people
will still be able to use the card with a patch cable (and thus no DMA
sound driver), though this is frankly not going to be the common usage.
The other concern is that the saa7134-oss module is new with kernel
2.6.16, and the saa7134-alsa module is new with kernel 2.6.15, so you
will want to pay attention to backwards compatibility. I don't really
understand the logic of blacklisting in order to maintain OSS emulation,
so I can't advice you on this.
Thank you for looking into this and hopefully solving the problem for
others!
Cheers,
David
More information about the Pkg-alsa-devel
mailing list