[alsa-devel] WM8974 on AT91SAM9263EK
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
On Thu, Nov 24, 2011 at 02:45:10PM +0100, Matthias Wieloch wrote:
*Always* CC maintainers.
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.
I'd suggest contacting the Atmel folks about this.
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?
To repeat what I said to you on IRC the other day this is one of Liam's old drivers and therefore uses set_clkdiv() instead of set_sysclk().
Also, have you set up an audio path to an output? If there's no audio path the system won't attempt to power anything up.
participants (2)
-
Mark Brown
-
Matthias Wieloch