Hi Jean,
Thanks for the quick test and sorry that it didn't work. I'll take a look at the trace below and try to figure out what went wrong.
No worries, seems some error path is going wrong but I can't see what it is right now.
Did you remove the 2 MODULE_DEVICE_TABLE from my patch? If you didn't, please pick the latest version of my patch which doesn't have them: ftp://ftp.kernel.org/pub/linux/kernel/people/jdelvare/linux-2.6/jdelvare-i2c/sound-aoa-codecs-convert-to-new-style.patch I don't think they are the reason of the crash, but who knows...
No, I didn't, but I was loading the modules manually so that didn't kick in.
Are you using a machine with onyx or tas? I guess onyx but I want to be sure.
onyx only.
[ 10.267137] snd-aoa-codec-onyx: found pcm3052 [ 10.267238] PM: Adding info for i2c:2-0046 [ 10.267926] snd-aoa-fabric-layout: platform-onyx-codec-ref doesn't match!
Does this error also happen without my patch? It would help to see the logs without my patch to see where it starts diverging.
Yes -- this happens normally.
[ 10.267930] snd-aoa: fabric didn't like codec onyx [ 10.268041] aoa_codec_onyx: probe of 2-0046 failed with error -22
Apparently aoa_codec_register failed in onyx_i2c_probe(), I have to understand why.
Because the device-tree is broken -- there are two nodes for the same device, and only one of them can be used. Then the fabric rejects the first instantiation from the broken node. Here's how it looks normally:
... [ 10.398296] snd-aoa-codec-onyx: found pcm3052 [ 10.398472] PM: Adding info for i2c:2-0046 [ 10.412189] snd-aoa-fabric-layout: platform-onyx-codec-ref doesn't match! [ 10.462593] snd-aoa: fabric didn't like codec onyx [ 10.468030] PM: Removing info for i2c:2-0046 [ 10.473892] snd-aoa-codec-onyx: found pcm3052 [ 10.479317] PM: Adding info for i2c:3-0046 [ 10.485631] snd-aoa-fabric-layout: can use this codec ...
johannes