Several customers met problem on audio codec porting. In order to figure out cpu dai setting problem or codec dai problem. Create the dummy codec for test purpose.
What this dummy codec can do
This dummy codec can play up to 8 channels and record up to 6 channels.
Connect SAI1 TX data pin with SAI1 RX data pin for loopback test.
Environment
Verified with i.MX8MM EVK
Based on Linux BSP L4.14.78
Files
Kernel patch
0001-multiple-channels-dummy-audio-codec
0002-Add-capture-for-multiple-channels
User space setting
/etc/asound.conf
/usr/share/alsa/cards/aliases.con
/usr/share/alsa/cards/DUMMY.conf
Audio test content
PCM_48_16_8_160000_1_29_jazzshort.wav
The alsa command for loopback test with multiple channels
aplay -D surround51:CARD=dummyaudio PCM_48_16_8_160000_1_29_jazzshort.wav | arecord -D surround51:CARD=dummyaudio --disable-channels --disable-format --disable-resample -f S16_LE -r 48000 -c 6 -d 5 -v test.wav