I have an OMAP3530 McBSP1 connected to a PCM device that operates on a standard 4-wire interface. The McBSP port drives the DX line, but the PCM device drivers the DR, FSX, and CLKX lines. I have the McBSP configured adequately such that I can confirm that an aplay command will correctly play data out to the PCM device via the DX line, and in sync with the CLKX and FSX lines. However, I am unable to get the receive data to be accessbile with the arecord command. It seems to recognize the device, but it gives an I/O error:
root@omap3evm:~# arecord --duration=10 --rate=8000 -D default:CARD=omap3sg2dov --format=S16_LE test
Record-01.wav Recording WAVE 'testRecord-01.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Mono
arecord: pcm_read:1617: read error: Input/output error
The following is what the lines look like on an oscilloscope:
This shows that in response to the FSX pulse (green) the DR line (magenta) is providing data to the McBSP lines, but I am unable to acquire it.
Any suggestions as to what to confirm?
I don't see an ISR in the Linux source code that I can monitor to see if an interrupt is arriving indicating data is available.
Thanks in advance...