Hi, I'm working on a project where we are interfacing the 6747 EVM board with a custom board that has 8 codecs transmitting and receiving using I2S. They are connecting to McASPs 0 and 1 on the C6747. Everything is clocked from our custom board, the frame sync and bit-clock of which are connected to AFSX and ACLKX of both McASP0 and 1.
We need to use both McASPs because we need 8 serializers in and 8 out, and also plan to use the EMIF and ethernet - which together take up about half the pins on each McASP.
Anyway, the problem is that I can get audio I/O perfectly fine on McASP0, but on McASP1, with the same clock connection and exact same register configuration (except for different pin I/O in PDIR), I get lots of pops and clicks (maybe 10/second/channel, even when input should be close to silence), bad audio and a stoppage of SIO buffer reclaiming after 1-10 seconds. The code for McASP 1 is exactly the same as that for McASP 0 (just pass audio - based on ...\pspdrivers_01_30_00_05\packages\ti\pspiom\examples\evm6747\mcaspDit with modifications), as are the configurations. I've also tried code that just runs the McASP 1 segment of the application, with the same ugly results, and code the splits the two McASPs into separate TSK threads - in which case the McASP0 thread runs and clocks fine, and the McASP1 thread dies after 1-10 sec of noisy popping.
I was thinking maybe I'd damaged McASP1 with a static discharge or something, but the audio example project in PSP using the internal codec to pass audio onMcASP1 works flawlessly. I also tried adding 33-Ohm resistors to the clock lines to stop possible reflections - no change.
So...
1. I've come to the conclusion that there must be some hardware issue - is there anything different design-wise between McASP1 and McASP0 on the C6747 that could be causing this? Any ideas about why this might be happening?
2. Or maybe that it is interference from the onboard codec of the EVM board, which is maybe not completely disconnected by pulling MUX pin 2 high and is trying also to send a clock signal to McASP1? So I was trying to find example code to configure the onboard codec - but could not short of using the whole audio driver. Is there a sample project or code anywhere that just shows how to initialize and configure the AIC31 codec on the C6747 EVM board?
Thanks in advance!