> What happens is that if I start lircd during bootup in a startup script,
> the bttv-modules get loaded (bttv, i2c-old, videodev, tuner, msp3400).
> Afterwards I am unable to use my mixer that now shows only volume bass
> and treble controls that my mixer usually does not have for my PCI 64
> soundcard. All other controls like line in, CD etc that are usually
> available are missing now. I guess that what I see is the mixer of the
> TV-card but there is no mixer available for my soundcard.
Exactly. msp3400 registers a mixer device for the TV card controls.
> I also tried to preload the alsa soundmodules and the bttv related
> modules before starting lircd during bootup, but the effect is always
> the same like described above.
Also snd-mixer-oss.o?
In your setup two modules want to register OSS-compatible mixer device:
snd-mixer-oss.o for the SB and msp3400.o for the TV card. The default
to handle this is "first come, first served", i.e. the module which is
loaded first gets minor 0 (aka /dev/mixer), the other one minor 1
(/dev/mixer1).
The problem is that snd-mixer-oss.o can't deal with this. It allways
wants to register minor 0 which does'nt work if msp3400 is already loaded
and has allocated minor 0. IMHO this is a bug in ALSA.
Your options are:
(a) Use the kernel driver for the SB64, es1370/1 gets this right.
(b) Use a mixer tool which uses the native ALSA interface and therefore
does'nt need the snd-mixer-oss.o module.
(c) make sure alsa (including snd-mixer-oss) gets loaded before msp3400.
(d) add the insmod option "mixer=1" for msp3400 to /etc/moduled.conf.
This tells msp3400 allways to grab minor 1 and 0 remains free for
alsa. You might have to upgrade bttv depending on your version.
Gerd
--
Protecting the children is a good way to get a lot of adults who cant
stand up for themselves. -- seen in some sig on /.
--
To unsubscribe: mail [EMAIL PROTECTED] with
"unsubscribe" as the Subject.