Hello,
I hope you can help me find the missing part of my problem.
I would like to the WM8974 sound codec instead of the AC97 codec of the eval board.
After starting the kernel (2.6.38) no error messages are shown and the sound card got detected by ALSA. But as soon as I run either aplay or arecord I run into a timeout due to pcm_write/pcm_read error. Additionally the dmesg buffer gets messed up.
After analysing with an oscilloscope I'm sure that I2C is working and that the codecs responses at least with ACK. But I couldn't see any changes on the SSC lines. So far I disabled all peripherals and GPIOs that use the same pins as SSC1. Looking at the register values the SSC peripheral seems not to be initialised although the application flow is similar to the AT91SAM9g20EK I based my code on.
What I find strange is that the WM8974 codec does not provide a .set_sysclk function although most other codecs do. Do I have to call other functions to set up the SSC or rather where should these be set?
My current source file located in <kernel>/sound/soc/atmel can be found at http://pastebin.com/mrFFxxdF
Regards Matthias