I'm having difficulties getting a Wolfson codec running on McBSP1 of an OMAP 35xx. Here are the particulars:
1) Using Linux kernel 2.6.27-omap1, with an ALSA sound driver ported from a Wolfson supplied source tree labeled 2.6.29 (“dev” branch) 2) Using the TI OMAP3530 SOC married to a Wolfson WM8978 codec via McBSP1. I2C control, I2S pcm data. 3) We are running the codec digital block at 1.8V and the analog block at 3.3V 4) The WM8978 codec is synthesizing FCLK and BCLK, codec is the master. McBsp is the slave. 5) FCLK=44.1KHz, BCLK= 32 * FCLK, MCLK = 13Mhz 6) Framing is I2S stereo, 16 bit word
I'm seeing two main problems:
Problem 1: The WM8978 sample rate PLL does not seem to be stable while DCVDD = DBVDD = 1.8V. FCLK mean = 44.5KHz and jittering. Increasing DCVDD and DBVDD voltage above 2V increases PLL stability. We have a workaround for this for now.
Problem 2: Test tone is being presented by the user application, providing a 1Khz tone sampled at 44.1Khz. The data are S16_LE, right channel only. Left channel is quiet. The data seems to slip back and forth from left to right channel. This is reproducable and verified with a scope trace.
Anybody have any ideas what might be going wrong here? Traces for codec reg dump and mcbsp are attached.
Thanks, twebb