[alsa-devel] [ASoC] list corruption during AC97 registration

Manuel Lauss mano at roarinelk.homelinux.net
Fri Apr 27 16:55:11 CEST 2007

Liam Girdwood wrote:
> On Fri, 2007-04-27 at 12:47 +0200, Manuel Lauss wrote:
>> Hi Liam,
>> On Fri, Apr 27, 2007 at 11:21:18AM +0100, Liam Girdwood wrote:
>>>> [<802ac0e4>] bus_attach_device+0x48/0x78
>>>> [<802aa4c4>] device_add+0x3d8/0x844
>>>> [<c00882a8>] snd_soc_register_card+0x1d0/0x2c8 [snd_soc_core]
>>>> System.map says:
>>>> 80488e60 D ac97_bus_type
>>> Fwiw, I'd start by looking at soc_ac97_dev_register()
>> Do I need call a special ASoC function to create an AC97 bus,
>> like the snd_soc_new_ac97_codec() function, from board code?
> ac97_bus_type is declared in ac97_bus.c, so there is no function to
> create it. The generic AC97 driver (codecs/ac97.c) does all the ac97
> init for you in ac97_soc_probe (e.g. create PCM's, register with AC97
> bus, create new AC97 mixer, register card), although I've never turned
> on the list debug here. 

the WM9712 code calls the above mentioned function, I concluded the
generic ac97 driver should do so too?

> Btw, is there anyway you can post your code ? It should make debugging a
> little easier and I can host it on my dev branch.

Sure, I'd be very happy if you could take a closer look:
for au1xxx:

for the SH7760:

I recorded the oopses here:


 Manuel Lauss

More information about the Alsa-devel mailing list