Ubuntu

Where did ALSA go?

Asked by dave_ce on 2008-06-10

Where did ALSA go?

Subject: Re: [GL] Testing driver in Ubuntu 8.04 x86_64
To: Adam....

I have the same problem with 8.04 'server'.
I think this is a question for Ubuntu, kernel, and/or ALSA groups.
My guess is the Ubuntu group is playing with ALSA in 8.04, or have
disabled it...

Here is my evidence for that conclusion:

http://<email address hidden>/msg05674.html

Other people are having the same problem:
   http://www.linuxtv.org/pipermail/linux-dvb/2008-April/025735.html
   http://ubuntuforums.org/archive/index.php/t-792056.html

Here is my system info...

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 8.04
Release: 8.04
Codename: hardy

$ uname -a
Linux gl824 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008 i686
GNU/Linux

$ grep SOUND /boot/config-2.6.24-16-server
CONFIG_SOUND=m
# CONFIG_SOUND_PRIME is not set

$ grep SND /boot/config-2.6.24-16-server
# CONFIG_SND is not set

(I guess that's what happens when you live on the cutting edge of
'technology'.)

Adam wrote:
> > Whoops, sent that accidentally. I meant to add that up until that
> > point the compilation went fine. Also, I tried insmod'ing the driver
> > (heh heh) and it of course blew up (caused a null pointer dereference
> > in the kernel). But I'm guessing that's just because the link didn't
> > work right, so I'll save the dmesg log unless somebody wants it.
> >
> > Anyway, any guesses about what's wrong here?
> >
> > Adam
> >
> > ... Adam ... wrote:
>> >> Hi everyone,
>> >>
>> >> I just tried the driver in my fresh install of Hardy Heron on my
>> >> Athlon 64 3000+ box.
>> >>
>> >> uname -a:
>> >> Linux spoon 2.6.24-18-generic #1 SMP Wed May 28 19:28:38 UTC 2008
>> >> x86_64 GNU/Linux
>> >>
>> >> Here's what I get during compilation:
>> >>
>> >> LD [M] /home/bikko/src/others/wavepro-driver/gl824/src/gl824.o
>> >> Building modules, stage 2.
>> >> MODPOST 1 modules
>> >> WARNING: "snd_pcm_period_elapsed"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_rawmidi_set_ops"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_rawmidi_new"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_pcm_set_ops"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_rawmidi_transmit_peek"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_pcm_lib_free_pages"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_pcm_lib_ioctl"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_pcm_lib_malloc_pages"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_card_new"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_rawmidi_transmit_ack"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_ctl_new1"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_ctl_free_one"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_pcm_lib_preallocate_pages_for_all"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_card_free"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_card_register"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_pcm_new"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_ctl_add"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> WARNING: "snd_rawmidi_receive"
>> >> [/home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko] undefined!
>> >> CC /home/bikko/src/others/wavepro-driver/gl824/src/gl824.mod.o
>> >> LD [M] /home/bikko/src/others/wavepro-driver/gl824/src/gl824.ko
>> >> make[1]: Leaving directory `/usr/src/linux-headers-2.6.24-18-generic'
>> >>

Question information

Language:
English Edit question
Status:
Answered
For:
Ubuntu alsa-driver Edit question
Assignee:
No assignee Edit question
Last query:
2008-06-10
Last reply:
2008-08-17
eeeenet (eeeenet) said : #1

I have the same problem, could someone help on this?

In my test, I rebuilt the kernel with CONFIG_SOUND=m (copied from Ubuntu 2.6.22 kernel), ALSA driver compling went through,
but when loading drivers by insmod, I got ABI incompatible complain:
bfsnd: disagrees about version of symbol snd_pcm_new
bfsnd: Unknown symbol snd_pcm_new
............

Adam DiCarlo (bikko) said : #2

(Adapted from my post on wavepro-driver-developers sf.net mailing list)

I finally got the GadgetLabs WavePro 8/24 ALSA driver to compile and insert on Ubuntu 8.04 (x86_64)! What's more, it plays and records sound! I have tested with Totem (playing mp3s) and Ardour/Jack (recording a track and playing it back).

I used this https://wiki.ubuntu.com/KernelTeam/GitKernelBuild for help
with building the main line kernel. However, I had to fix a couple of
things that came out broken in the linux-headers deb package that was
generated after installing it.

I chose 2.6.24.7 as it seemed close to Ubuntu stock kernel... I'm
guessing latest would work too, though. (I had tried 2.6.26.1 last
week and thought it was too new, but I think now it was just showing
the same two problems I had to fix with 2.6.24.7, so I may try to
build 2.6.26 or 2.6.27 kernel soon too.)

Here's what I did. I'll try to keep the commands easily repeatable for
others. (If you have multicore, make sure to change
CONCURRENCY_LEVEL... building kernel + debs took my Athlon 64 3000+ 90
minutes...)

# First, pretty standard kernel building stuff
cd ~
mkdir kernel
cd kernel
wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.7.tar.bz2
tar xvjf linux-2.6.24.7.tar.bz2
cd linux-2.6.24.7
cp /boot/config-`uname -r` .config
make oldconfig

make menuconfig
----
Now we must enable ALSA in the kernel configuration.
Specifically, here are the settings I'm using. I'm not sure all of them are necessary (especially verbose procfs and dummy client).

Device Drivers --->
  Sound -->
    <M> Sound card support
    Advanced Linux Sound Architecture --->
      <M> Advanced Linux Sound Architecture
      <M> Sequencer support
      <M> Sequencer dummy client
      <M> OSS Mixer API
      <M> OSS PCM (digital audio) API
      [*] OSS PCM (digital audio) API
      [*] OSS Sequencer API
      [*] Support old ALSA API
      [*] Verbose procfs contents
----

# Now to actually make the kernel package
make-kpkg clean
CONCURRENCY_LEVEL=1 fakeroot make-kpkg --initrd
--append-to-version=-bikko kernel_image kernel_headers
cd ..
sudo dpkg -i linux-image-2.6.24.7-bikko_2.6.24.7-bikko-10.00.Custom_amd64.deb
sudo dpkg -i linux-headers-2.6.24.7-bikko_2.6.24.7-bikko-10.00.Custom_amd64.deb

sudo ln -sf /usr/src/linux-headers-2.6.24.7-bikko /usr/src/linux

# copy firmware
sudo mkdir /lib/firmware/2.6.24.7-bikko
sudo cp <wavepro src dir>/gl*_firmware.bin /lib/firmware/2.6.24.7-bikko/

# These next commands fix two problems which cause build errors
# with gl824 module... This is the part I figured out :)
sudo cp ~/kernel/linux-2.6.24.7/arch/x86/Makefile_64 /usr/src/linux/arch/x86/
sudo ln -sf /usr/src/linux/include
sudo ln -s asm-x86 asm

then building the driver worked. It's weird that when I built the
kernel package it botched the "asm" symlink and didn't include
Makefile_64! I had been getting "Makefile_64: No such file" errors and
similar errors for asm include files.

You will have to reboot into the new kernel of course before inserting the driver.

Note that any time you build a custom kernel, you pretty much lose restricted modules. I'll be working on trying to figure out how to get the nvidia driver back - for now I switched my xorg.conf to use the nv driver.

Good luck, everyone, and tell us how it goes!`

Can you help with this problem?

Provide an answer of your own, or ask dave_ce for more information if necessary.

To post a message you must log in.