On Sat, Aug 29, 2009 at 09:41:59PM +0300, Christos Nikolaou wrote:
Up to 2.6.28 the ASoC framework was working on AT32AP7000 Atmel platform. Now I try to recompile it on 2.6.31-rc8 and I get
Advance Linux Sound Architecture Driver Version 1.0.20. No device for DAI atmel-ssc0 No device for DAI atmel-ssc1 No device for DAI atmel-ssc2
That's fine, these are just warning messages and have no actual effect on operation.
whereas the ssc devices are properly (as in 2.6.28) initialized ssc ssc.0: Atmel SSC device at 0xffe1c00 (irq 10) ssc ssc.1: Atmel SSC device at 0xffe2000 (irq 11) ssc ssc.2: Atmel SSC device at 0xffe2400 (irq 12)
This is outside the control of ASoC - it's generated by the core SSC support in drivers/misc/atmel-ssc.c. Probably you're missing code to register the SSC device in your board file, you should be calling add_device_ssc() somewhere in your arch/arm code and ssc_request() in your machine file.
It looks that this message comes from snd_soc_register_dai in soc-core.c
if (!dai->dev) printk(KERN_WARNING "No device for DAI %s\n", dai->name);
it seems for some reason it thinks there is no device in dai->dev
Yes, the reason for this being that the Atmel driver currently doesn't make any effort to initialise the device. At the minute that's purely a cosmetic error. Before it becomes an actual problem the drivers will be updated to fill in a device.