Page 1 of 1

T42p + Alsa

Posted: Mon Aug 02, 2004 9:34 pm
by spotter
Has anyone gotten their T42 to work w/ Alsa? I seem to be only able to get sound to work w/ the oss layer on top of Alsa and not using Alsa directly. This sucks because OSS doesnt let the sound device be open by more than one app.

If it matters, I'm running debian, but any advice you could give I can probably go from there.

thanks

Posted: Mon Aug 02, 2004 10:11 pm
by Chun-Yu
I have ALSA working on my T41, which as far as I know has the same sound (Intel 8x0?). Have you tried different programs (aplay, xmms, etc.) that use ALSA? Which version of the kernel are you running? I have 2.6.7-gentoo-r11 here with the ALSA stuff built as modules.

Posted: Mon Aug 02, 2004 10:30 pm
by Kludgey
I also have the ALSA drivers working under kernel 2.6.7 and built as
modules. This is with a T42p.

To do this I did had to blacklist the Intel8x0m module as this was screwing
up my configuration of the Intel 8x0 sound support. (I'll check later what
the module names are really called).

I think it might be related to the sound card order and what ALSA thinks is
card 0 and card 1. Was to interested in getting other stuff working at the
time so didn't play around with it much.

Edit. Module is snd-intel8x0 and the module I had to blacklist for the
moment was snd-intel8x0m.

Kludgey.

PS. If I remember rightly the 'm' module had something to do with the
modem ? (Again I'm not sure).

Posted: Wed Aug 04, 2004 2:04 am
by Guest
I put a Knoppix cd in my T40 and sound worked right
off the bat - "Initiating Startup Sequence".
Maybe you should pop one in and see what they've done.

Posted: Wed Aug 04, 2004 2:16 am
by spotter
hmm. It loads both 8x0 and 8x0m. However, it only shows one card in /proc/asound (the modem). More so, if the m module isn't loaded, no sound works (i.e. oss based).

so, for some reason my blacklist for hotplug wasn't working (perhaps it's getting loaded some other way) so I renamed the module away, but that didnt help as w/o it I had no sound.

I'm really confiused, unfortunately don't have time to investigate this, and sound is working "well enough" that its not worth the little time I could give to it.

Posted: Wed Aug 04, 2004 8:38 am
by boudie
Have Kanotix cd in my T40 - it's using snd_intel8x0.
Try using rmmod on the other module.
Not up on my Debian, but make changes in /etc/modules-2.6
or modprobe.d/alsa not in hotplug blacklist.

Posted: Thu Aug 05, 2004 3:29 am
by spotter
well, I got it to partly work.

I couldn't seem to get the 8x0m module to be blacklisted from autodetection, so I just put snd_intel8x0 into /etc/modules so that it would be loaded at the beginning of hte process b4 auto detection kicked in. The 8x0m module was still loaded, but it seems that as long as the 8x0 module is loaded first, things work.

however, unlike my t21, I can't seem to have multiple streams open at once. Need to investigate this part further.

Posted: Thu Aug 05, 2004 10:08 am
by Guest
I just did lspci -vv on mine, and almost everything is on IRQ 11.
That would be 4 USB ports, sound chip, modem, radeon
video, ethernet card and cardbus (if I used it).

Why would they do that I wonder? Will have to change that in the BIOS.
Of course, a kernel recompile would get rid of your unwanted module.

Posted: Tue Aug 17, 2004 1:25 am
by spotter
it seems the T42's have inferior sound to my old T21.

oh well.

figured out a way around it. this allows one to play multiple streams through alsa, using the dmix software mixing plugin. Unfortunately I dont particularly know what the settings do, but it seems to work ok.

Code: Select all

spotter@dent:~$ cat .asoundrc
pcm.ossmix {
    type dmix
    ipc_key 1024
    slave {
        pcm "hw:0,0"
        period_time 0
        period_size 1024
        buffer_size 8192
        rate 48000
    }

    bindings {
        0 0
        1 1
    }
}

# Everything shall be dmixed, so redefine "default":
pcm.!default {
    type plug
    slave.pcm "ossmix"
}

# OSS via aoss should d(mix)stroyed:
pcm.dsp0 {
    type plug
    slave.pcm "ossmix"
}

ctl.mixer0 {
    type hw
    card 0
}