I am using a 320C6713 with a TLV320AIC23 stereo codec running as master on the McBSP interface. I have an ongoing problem where the left and right channels can sometimes swap. When this happens it is usually the ouputs that swap but sometimes it's the inputs.
The swapping is consistent, in that it survives power cycling and hard resets. If I change the call order of some routines in main() the problem goes away. Other changes elswhere in the code can cause the problem to re-appear in later builds.
The original code base is developed around Reference Frameworks 3. The code uses the udevCodec device driver as supplies by TI.
Does anyone know what causes this and the best way to work around this? I have read McBSP reference guide (spru580e.pdf) which refers to initialisation of the channel to avoid this problem, however the driver takes care of that part. Has anyone come aross this problem and solved it?
Kemal