i2s0 aplay okay, but i2s1 arecord failed.

Dear nvidia,
Now I am using i2s0 (located on J21) to playback, using i2s1(located on J26) to record.
I adjust J24 jumper to 1.8V TTL level to connect i2s0 to i2s1 directly.
Connections are follows:
J21 J26
BCLK(12) —> BCLK(23)
LRCLK(35) —> LRCLK(26)
DOUT(40) ----> DIN(25)

i2s0 can play okay, I can measured signal with a oscilloscope.(BCLK is okay,LRCK is okay,DOUT is okay.)
but i2s1 can’t record in.something strange happened.
by the way,I am using jetson-tx2 developing board from nvidia.
JetPack4.2.2(rev.1)
uname -r : 4.9.140-tegra

here are my steps,please help to point out what I am missing.Thank you very much.

yntp16@yntp16:/home/zhangshaoyan$ amixer -c tegrasndt186ref sset "I2S1 Mux"  "ADMAIF1"
Simple mixer control 'I2S1 Mux',0
  Capabilities: enum
  Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6'
  Item0: 'ADMAIF1'
yntp16@yntp16:/home/zhangshaoyan$ amixer -c tegrasndt186ref sset "ADMAIF2 Mux"  "I2S2"
Simple mixer control 'ADMAIF2 Mux',0
  Capabilities: enum
  Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6'
  Item0: 'I2S2'
yntp16@yntp16:/home/zhangshaoyan$ amixer -c tegrasndt186ref  cset name='I2S1 codec frame mode' 1
numid=1081,iface=MIXER,name='I2S1 codec frame mode'
  ; type=ENUMERATED,access=rw------,values=1,items=6
  ; Item #0 'None'
  ; Item #1 'i2s'
  ; Item #2 'right-j'
  ; Item #3 'left-j'
  ; Item #4 'dsp-a'
  ; Item #5 'dsp-b'
  : values=1
yntp16@yntp16:/home/zhangshaoyan$ amixer -c tegrasndt186ref  cset name='I2S2 codec frame mode' 1
numid=1083,iface=MIXER,name='I2S2 codec frame mode'
  ; type=ENUMERATED,access=rw------,values=1,items=6
  ; Item #0 'None'
  ; Item #1 'i2s'
  ; Item #2 'right-j'
  ; Item #3 'left-j'
  ; Item #4 'dsp-a'
  ; Item #5 'dsp-b'
  : values=1
yntp16@yntp16:/home/zhangshaoyan$ amixer -c tegrasndt186ref  cset name='I2S1 codec bit format' 1
numid=853,iface=MIXER,name='I2S1 codec bit format'
  ; type=ENUMERATED,access=rw------,values=1,items=3
  ; Item #0 'None'
  ; Item #1 '16'
  ; Item #2 '32'
  : values=1
yntp16@yntp16:/home/zhangshaoyan$ amixer -c tegrasndt186ref  cset name='I2S2 codec bit format' 1
numid=864,iface=MIXER,name='I2S2 codec bit format'
  ; type=ENUMERATED,access=rw------,values=1,items=3
  ; Item #0 'None'
  ; Item #1 '16'
  ; Item #2 '32'
  : values=1
yntp16@yntp16:/home/zhangshaoyan$ amixer -c tegrasndt186ref  cset name='I2S1 codec master mode' 4
numid=1082,iface=MIXER,name='I2S1 codec master mode'
  ; type=ENUMERATED,access=rw------,values=1,items=5
  ; Item #0 'None'
  ; Item #1 'cbm-cfm'
  ; Item #2 'cbs-cfm'
  ; Item #3 'cbm-cfs'
  ; Item #4 'cbs-cfs'
  : values=4
yntp16@yntp16:/home/zhangshaoyan$ amixer -c tegrasndt186ref  cset name='I2S2 codec master mode' 1
numid=1084,iface=MIXER,name='I2S2 codec master mode'
  ; type=ENUMERATED,access=rw------,values=1,items=5
  ; Item #0 'None'
  ; Item #1 'cbm-cfm'
  ; Item #2 'cbs-cfm'
  ; Item #3 'cbm-cfs'
  ; Item #4 'cbs-cfs'
  : values=1
yntp16@yntp16:~$ amixer -c tegrasndt186ref cget name='I2S1 Mux'
numid=962,iface=MIXER,name='I2S1 Mux'
  ; type=ENUMERATED,access=rw------,values=1,items=81
  ; Item #0 'None'
  ; Item #1 'ADMAIF1'
  ; Item #2 'ADMAIF2'
  ; Item #3 'ADMAIF3'
  ; Item #4 'ADMAIF4'
  ; Item #5 'ADMAIF5'
  ; Item #6 'ADMAIF6'
  ; Item #7 'ADMAIF7'
  ; Item #8 'ADMAIF8'
  ; Item #9 'ADMAIF9'
  ; Item #10 'ADMAIF10'
  ; Item #11 'ADMAIF11'
  ; Item #12 'ADMAIF12'
  ; Item #13 'ADMAIF13'
  ; Item #14 'ADMAIF14'
  ; Item #15 'ADMAIF15'
  ; Item #16 'ADMAIF16'
  ; Item #17 'I2S1'
  ; Item #18 'I2S2'
  ; Item #19 'I2S3'
  ; Item #20 'I2S4'
  ; Item #21 'I2S5'
  ; Item #22 'I2S6'
  ; Item #23 'SFC1'
  ; Item #24 'SFC2'
  ; Item #25 'SFC3'
  ; Item #26 'SFC4'
  ; Item #27 'MIXER1-1'
  ; Item #28 'MIXER1-2'
  ; Item #29 'MIXER1-3'
  ; Item #30 'MIXER1-4'
  ; Item #31 'MIXER1-5'
  ; Item #32 'AMX1'
  ; Item #33 'AMX2'
  ; Item #34 'AMX3'
  ; Item #35 'AMX4'
  ; Item #36 'ARAD1'
  ; Item #37 'AFC1'
  ; Item #38 'AFC2'
  ; Item #39 'AFC3'
  ; Item #40 'AFC4'
  ; Item #41 'AFC5'
  ; Item #42 'AFC6'
  ; Item #43 'OPE1'
  ; Item #44 'SPKPROT1'
  ; Item #45 'MVC1'
  ; Item #46 'MVC2'
  ; Item #47 'IQC1-1'
  ; Item #48 'IQC1-2'
  ; Item #49 'IQC2-1'
  ; Item #50 'IQC2-2'
  ; Item #51 'DMIC1'
  ; Item #52 'DMIC2'
  ; Item #53 'DMIC3'
  ; Item #54 'DMIC4'
  ; Item #55 'ADX1-1'
  ; Item #56 'ADX1-2'
  ; Item #57 'ADX1-3'
  ; Item #58 'ADX1-4'
  ; Item #59 'ADX2-1'
  ; Item #60 'ADX2-2'
  ; Item #61 'ADX2-3'
  ; Item #62 'ADX2-4'
  ; Item #63 'ADX3-1'
  ; Item #64 'ADX3-2'
  ; Item #65 'ADX3-3'
  ; Item #66 'ADX3-4'
  ; Item #67 'ADX4-1'
  ; Item #68 'ADX4-2'
  ; Item #69 'ADX4-3'
  ; Item #70 'ADX4-4'
  ; Item #71 'ADMAIF17'
  ; Item #72 'ADMAIF18'
  ; Item #73 'ADMAIF19'
  ; Item #74 'ADMAIF20'
  ; Item #75 'ASRC1-1'
  ; Item #76 'ASRC1-2'
  ; Item #77 'ASRC1-3'
  ; Item #78 'ASRC1-4'
  ; Item #79 'ASRC1-5'
  ; Item #80 'ASRC1-6'
  : values=1
yntp16@yntp16:~$
yntp16@yntp16:~$ amixer -c tegrasndt186ref cget name='I2S2 Mux'
numid=963,iface=MIXER,name='I2S2 Mux'
  ; type=ENUMERATED,access=rw------,values=1,items=81
  ; Item #0 'None'
  ; Item #1 'ADMAIF1'
  ; Item #2 'ADMAIF2'
  ; Item #3 'ADMAIF3'
  ; Item #4 'ADMAIF4'
  ; Item #5 'ADMAIF5'
  ; Item #6 'ADMAIF6'
  ; Item #7 'ADMAIF7'
  ; Item #8 'ADMAIF8'
  ; Item #9 'ADMAIF9'
  ; Item #10 'ADMAIF10'
  ; Item #11 'ADMAIF11'
  ; Item #12 'ADMAIF12'
  ; Item #13 'ADMAIF13'
  ; Item #14 'ADMAIF14'
  ; Item #15 'ADMAIF15'
  ; Item #16 'ADMAIF16'
  ; Item #17 'I2S1'
  ; Item #18 'I2S2'
  ; Item #19 'I2S3'
  ; Item #20 'I2S4'
  ; Item #21 'I2S5'
  ; Item #22 'I2S6'
  ; Item #23 'SFC1'
  ; Item #24 'SFC2'
  ; Item #25 'SFC3'
  ; Item #26 'SFC4'
  ; Item #27 'MIXER1-1'
  ; Item #28 'MIXER1-2'
  ; Item #29 'MIXER1-3'
  ; Item #30 'MIXER1-4'
  ; Item #31 'MIXER1-5'
  ; Item #32 'AMX1'
  ; Item #33 'AMX2'
  ; Item #34 'AMX3'
  ; Item #35 'AMX4'
  ; Item #36 'ARAD1'
  ; Item #37 'AFC1'
  ; Item #38 'AFC2'
  ; Item #39 'AFC3'
  ; Item #40 'AFC4'
  ; Item #41 'AFC5'
  ; Item #42 'AFC6'
  ; Item #43 'OPE1'
  ; Item #44 'SPKPROT1'
  ; Item #45 'MVC1'
  ; Item #46 'MVC2'
  ; Item #47 'IQC1-1'
  ; Item #48 'IQC1-2'
  ; Item #49 'IQC2-1'
  ; Item #50 'IQC2-2'
  ; Item #51 'DMIC1'
  ; Item #52 'DMIC2'
  ; Item #53 'DMIC3'
  ; Item #54 'DMIC4'
  ; Item #55 'ADX1-1'
  ; Item #56 'ADX1-2'
  ; Item #57 'ADX1-3'
  ; Item #58 'ADX1-4'
  ; Item #59 'ADX2-1'
  ; Item #60 'ADX2-2'
  ; Item #61 'ADX2-3'
  ; Item #62 'ADX2-4'
  ; Item #63 'ADX3-1'
  ; Item #64 'ADX3-2'
  ; Item #65 'ADX3-3'
  ; Item #66 'ADX3-4'
  ; Item #67 'ADX4-1'
  ; Item #68 'ADX4-2'
  ; Item #69 'ADX4-3'
  ; Item #70 'ADX4-4'
  ; Item #71 'ADMAIF17'
  ; Item #72 'ADMAIF18'
  ; Item #73 'ADMAIF19'
  ; Item #74 'ADMAIF20'
  ; Item #75 'ASRC1-1'
  ; Item #76 'ASRC1-2'
  ; Item #77 'ASRC1-3'
  ; Item #78 'ASRC1-4'
  ; Item #79 'ASRC1-5'
  ; Item #80 'ASRC1-6'
  : values=2
yntp16@yntp16:~$

pinmux is okay I think. here I only care dap2 releated pins.
here I set bit 6 to enable input.

yntp16@yntp16:/home/zhangshaoyan$ sudo cat /sys/kernel/debug/tegra_pinctrl_reg | grep dap1
Bank: 0 Reg: 0x02431028 Val: 0x00000400 -> dap1_fs_pj3
Bank: 0 Reg: 0x02431030 Val: 0x00000458 -> dap1_din_pj2
Bank: 0 Reg: 0x02431038 Val: 0x00000400 -> dap1_dout_pj1
Bank: 0 Reg: 0x02431040 Val: 0x00000400 -> dap1_sclk_pj0
yntp16@yntp16:/home/zhangshaoyan$ sudo cat /sys/kernel/debug/tegra_pinctrl_reg | grep dap2
Bank: 0 Reg: 0x02434000 Val: 0x00000458 -> dap2_din_pc3
Bank: 0 Reg: 0x02434008 Val: 0x00000400 -> dap2_dout_pc2
Bank: 0 Reg: 0x02434010 Val: 0x00000440 -> dap2_fs_pc4
Bank: 0 Reg: 0x02434018 Val: 0x00000440 -> dap2_sclk_pc1
yntp16@yntp16:/home/zhangshaoyan$

from the datasheet we know I2S_CTRL_0[10]=1 is master,so i2s0 is master.

yntp16@yntp16:/home/zhangshaoyan$ sudo cat /sys/kernel/debug/regmap/tegra210-i2s.0/registers
00: 00000000
04: XXXXXXXX
08: 00000000
0c: XXXXXXXX
10: XXXXXXXX
14: 00000003
18: 00000000
1c: 00000000
20: 03113300
24: 00000100
28: 00000000
2c: 00000000
30: 00000000
34: 00000000
38: 00000000
3c: 00000000
40: 00000000
44: XXXXXXXX
48: 00000000
4c: XXXXXXXX
50: XXXXXXXX
54: 00000003
58: 00000000
5c: 00000000
60: 00113300
64: 00000100
68: 00000000
6c: 00000000
70: 00000000
74: 00000000
78: 00000000
7c: 00000000
80: 00000001
84: 00000000
88: 00000001
8c: 00000000
90: XXXXXXXX
94: 00000000
98: 00000000
9c: 00000000
a0: 1f000403
a4: 0000000f
a8: 00000000
ac: 00000000
b0: 00000000
yntp16@yntp16:/home/zhangshaoyan$

from the datasheet we know I2S_CTRL_0[10]=0 is slave,so i2s1 is slave.

yntp16@yntp16:/home/zhangshaoyan$ sudo cat /sys/kernel/debug/regmap/tegra210-i2s.1/registers
00: 00000000
04: XXXXXXXX
08: 00000000
0c: XXXXXXXX
10: XXXXXXXX
14: 00000003
18: 00000000
1c: 00000000
20: 00007700
24: 00000100
28: 00000000
2c: 00000000
30: 00000000
34: 00000000
38: 00000000
3c: 00000000
40: 00000000
44: XXXXXXXX
48: 00000000
4c: XXXXXXXX
50: XXXXXXXX
54: 00000003
58: 00000000
5c: 00000000
60: 00113300
64: 00000100
68: 00000000
6c: 00000000
70: 00000000
74: 00000000
78: 00000000
7c: 00000000
80: 00000001
84: 00000000
88: 00000001
8c: 00000000
90: XXXXXXXX
94: 00000000
98: 00000000
9c: 00000000
a0: 1f000003
a4: 0000000f
a8: 00000000
ac: 00000000
b0: 00000000
yntp16@yntp16:/home/zhangshaoyan$

Now, I play a wav music on i2s0. i2s0 output wavform is okay, I can measure it with a oscilloscope.

yntp16@yntp16:/home/zhangshaoyan$ aplay -D hw:tegrasndt186ref,0  dream.wav  -v
Playing WAVE 'dream.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Hardware PCM card 1 'tegra-snd-t186ref-mobile-rt565x' device 0 subdevice 0
Its setup is:
  stream       : PLAYBACK
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 44100
  exact rate   : 44100 (44100/1)
  msbits       : 16
  buffer_size  : 8192
  period_size  : 2048
  period_time  : 46439
  tstamp_mode  : NONE
  tstamp_type  : MONOTONIC
  period_step  : 1
  avail_min    : 2048
  period_event : 0
  start_threshold  : 8192
  stop_threshold   : 8192
  silence_threshold: 0
  silence_size : 0
  boundary     : 4611686018427387904
  appl_ptr     : 0
  hw_ptr       : 0

while I record on i2s1,but error occured.
I searched on forum and know this is i2s1 doesnot meet BCLK/LRCLK.
but I can measured BCLK/LRCLK with oscilloscope!
so ,why ? what’s wrong with me ?

yntp16@yntp16:~$ arecord -D hw:tegrasndt186ref,1 -r 44100 -f S16_LE -c 2 -d 60 -t raw i2s2.cap.raw -v 
Recording raw data 'i2s2.cap.raw' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Hardware PCM card 1 'tegra-snd-t186ref-mobile-rt565x' device 1 subdevice 0
Its setup is:
  stream       : CAPTURE
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 44100
  exact rate   : 44100 (44100/1)
  msbits       : 16
  buffer_size  : 8192
  period_size  : 2048
  period_time  : 46439
  tstamp_mode  : NONE
  tstamp_type  : MONOTONIC
  period_step  : 1
  avail_min    : 2048
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 8192
  silence_threshold: 0
  silence_size : 0
  boundary     : 4611686018427387904
  appl_ptr     : 0
  hw_ptr       : 0
<b>arecord: pcm_read:2103: read error: Input/output error</b>
yntp16@yntp16:~$ dmesg
.............................
.............................
[  644.787366] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[  644.793746] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22
[  658.405012] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[  658.411346] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22
[  679.716825] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[  679.723103] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22
[ 1493.321078] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[ 1493.327401] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22
[ 2348.675670] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[ 2348.682023] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22
[ 2352.271101] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[ 2352.277607] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22
[ 2356.592804] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[ 2356.599122] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22
[ 2381.837583] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[ 2381.843930] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22
yntp16@yntp16:~$

I post more details as possible as I can in here.
could someone can give me advise? I donot know what to do next.
please.

Hi 1811543668,

Please check if can get help from Troubleshooting section:
https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%2520Linux%2520Driver%2520Package%2520Development%2520Guide%2Fasoc_driver.html%23wwpID0E0SH0HA

Dear kayccc, @kayccc

The Troubleshooting section does not solve my problem.

aplay -D hw:tegrasndt186ref,0 dream.wav  &
sleep 3
arecord -D hw:tegrasndt186ref,1 -r 44100 -f S16_LE -c 2 -d 60 -t raw i2s2.cap.raw
Recording raw data 'i2s2.cap.raw': Signed 16 bit Little Endian,Rate 44100 Hz,Stereo
arecord:pcm_read:2103: read error: Input/output error

From the dmesg output log , here is

[ 2381.837583] tegra210-i2s tegra210-i2s.1: Failed at <b>I2S1_RX</b> sw reset
[ 2381.843930] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: <b>I2S2</b> DAP RX event failed: -22

My setting is:

amixer -c tegrasndt186ref sset "I2S1 Mux" "ADMAIF1"
amixer -c tegrasndt186ref sset "ADMAIF1 Mux" "I2S1"

amixer -c tegrasndt186ref sset "ADMAIF2 Mux" "I2S2"
amixer -c tegrasndt186ref sset "I2S2 Mux" "ADMAIF2"


ADMAIF1 <–> I2S1


ADMAIF2 <–> I2S2

Here i2s1 pinmux setting is okay.
sudo cat /sys/kernel/debug/tegra_pinctrl_reg | grep dap2

Bank: 0 Reg: 0x02434000 Val: <b>0x00000458</b> -> dap2_din_pc3
Bank: 0 Reg: 0x02434008 Val: 0x00000400 -> dap2_dout_pc2
Bank: 0 Reg: 0x02434010 Val: <b>0x00000440</b> -> dap2_fs_pc4
Bank: 0 Reg: 0x02434018 Val: <b>0x00000440</b> -> dap2_sclk_pc1

could someone can help me ? I beg you.please.
@jonathanh ,@kayccc, I know you are experts, could you please help me?
Regards.

@kayccc
@jonathanh
I’m so sorry to disturb you. But I’m really have no idea.Please.

I found some useful tips to enable tracing. Below is tracing logs.

Please help me to check what’s wrong with it. Best regards.

i2s0:located on J21.
i2s1:located on J26.
I setup J24 jumper to make sure i2s0 works on 1.8V TTL ,can connect to i2s1 directly.

echo 0 | sudo tee /sys/kernel/debug/tracing/trace
echo 0 | sudo tee /sys/kernel/debug/tracing/events/enable
echo 1 | sudo tee /sys/kernel/debug/tracing/tracing_on
echo 1 | sudo tee /sys/kernel/debug/tracing/events/asoc/snd_soc_dapm_widget_power/enable
echo 1 | sudo tee /sys/kernel/debug/tracing/events/asoc/snd_soc_dapm_path/enable
echo 1 | sudo tee /sys/kernel/debug/tracing/events/asoc/snd_soc_dapm_start/enable
echo 1 | sudo tee /sys/kernel/debug/tracing/events/asoc/snd_soc_dapm_walk_done/enable
aplay -D hw:tegrasndt186ref,0 dream.wav
Playing WAVE 'dream.wav': Signed 16 bit Little Endian,Rate 44100 Hz,Stereo

Here, I can measured signals on bclk/lrclk/data on jetson-tx2 J21 with a oscilloscope.
This means i2s0 play is okay.

but I can’t record in on i2s1. hardware connection is okay I make sure. TTL level is okay. Everything is okay.

yntp16@yntp16:~$ arecord -D hw:tegrasndt186ref,1 -r 44100 -f S16_LE -c 2 -d 60 -t raw i2s2.cap.raw 
Recording raw data 'i2s2.cap.raw' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
arecord: pcm_read:2103: read error: Input/output error
yntp16@yntp16:~$ sudo cat /sys/kernel/debug/tracing/trace
# tracer: nop
#
# entries-in-buffer/entries-written: 90/90   #P:4
#
#                              _-----=> irqs-off
#                             / _----=> need-resched
#                            | / _---=> hardirq/softirq
#                            || / _--=> preempt-depth
#                            ||| /     delay
#           TASK-PID   CPU#  ||||    TIMESTAMP  FUNCTION
#              | |       |   ||||       |         |

 arecord-14213 [004] .... 15208.789867: snd_soc_dapm_start: card=tegra-snd-t186ref-mobile-rt565x
 arecord-14213 [004] .... 15208.790069: snd_soc_dapm_widget_power: widget=Capture 2 val=0
 arecord-14213 [004] .... 15208.790077: snd_soc_dapm_path: *ADMAIF2 Transmit -> (direct) -> Capture 2
 arecord-14213 [004] .... 15208.790082: snd_soc_dapm_path: *ADMAIF2 Transmit -> (direct) -> ADMAIF2 Transmit-ADMAIF2 CIF Transmit
 arecord-14213 [004] .... 15208.790085: snd_soc_dapm_widget_power: widget=ADMAIF2 Transmit val=0
 arecord-14213 [004] .... 15208.790089: snd_soc_dapm_path: *ADMAIF2 TX -> (direct) -> ADMAIF2 Transmit
 arecord-14213 [004] .... 15208.790092: snd_soc_dapm_widget_power: widget=ADMAIF2 TX val=0
 arecord-14213 [004] .... 15208.790095: snd_soc_dapm_path: *ADMAIF2 Mux -> (direct) -> ADMAIF2 TX
 arecord-14213 [004] .... 15208.790098: snd_soc_dapm_widget_power: widget=ADMAIF2 Mux val=0
 arecord-14213 [004] .... 15208.790108: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> DSPK2 Mux
 arecord-14213 [004] .... 15208.790111: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> DSPK1 Mux
 arecord-14213 [004] .... 15208.790115: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-7 Mux
 arecord-14213 [004] .... 15208.790118: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-6 Mux
 arecord-14213 [004] .... 15208.790122: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-5 Mux
 arecord-14213 [004] .... 15208.790125: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-4 Mux
 arecord-14213 [004] .... 15208.790128: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-3 Mux
 arecord-14213 [004] .... 15208.790131: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-2 Mux
 arecord-14213 [004] .... 15208.790134: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-1 Mux
 arecord-14213 [004] .... 15208.790137: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S6 Mux
 arecord-14213 [004] .... 15208.790141: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX4 Mux
 arecord-14213 [004] .... 15208.790144: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX3 Mux
 arecord-14213 [004] .... 15208.790146: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-4 Mux
 arecord-14213 [004] .... 15208.790150: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-3 Mux
 arecord-14213 [004] .... 15208.790153: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-2 Mux
 arecord-14213 [004] .... 15208.790156: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-1 Mux
 arecord-14213 [004] .... 15208.790159: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-4 Mux
 arecord-14213 [004] .... 15208.790162: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-3 Mux
 arecord-14213 [004] .... 15208.790165: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-2 Mux
 arecord-14213 [004] .... 15208.790168: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-1 Mux
 arecord-14213 [004] .... 15208.790171: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF20 Mux
 arecord-14213 [004] .... 15208.790174: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF19 Mux
 arecord-14213 [004] .... 15208.790177: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF18 Mux
 arecord-14213 [004] .... 15208.790180: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF17 Mux
 arecord-14213 [004] .... 15208.790183: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF16 Mux
 arecord-14213 [004] .... 15208.790186: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF15 Mux
 arecord-14213 [004] .... 15208.790188: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF14 Mux
 arecord-14213 [004] .... 15208.790191: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF13 Mux
 arecord-14213 [004] .... 15208.790193: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF12 Mux
 arecord-14213 [004] .... 15208.790196: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF11 Mux
 arecord-14213 [004] .... 15208.790199: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX2 Mux
 arecord-14213 [004] .... 15208.790201: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX1 Mux
 arecord-14213 [004] .... 15208.790204: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-4 Mux
 arecord-14213 [004] .... 15208.790207: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-3 Mux
 arecord-14213 [004] .... 15208.790213: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-2 Mux
 arecord-14213 [004] .... 15208.790216: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-1 Mux
 arecord-14213 [004] .... 15208.790219: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-4 Mux
 arecord-14213 [004] .... 15208.790221: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-3 Mux
 arecord-14213 [004] .... 15208.790224: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-2 Mux
 arecord-14213 [004] .... 15208.790227: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-1 Mux
 arecord-14213 [004] .... 15208.790229: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MVC2 Mux
 arecord-14213 [004] .... 15208.790233: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MVC1 Mux
 arecord-14213 [004] .... 15208.790235: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SPKPROT1 Mux
 arecord-14213 [004] .... 15208.790238: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> OPE1 Mux
 arecord-14213 [004] .... 15208.790241: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC6 Mux
 arecord-14213 [004] .... 15208.790243: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC5 Mux
 arecord-14213 [004] .... 15208.790246: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC4 Mux
 arecord-14213 [004] .... 15208.790249: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC3 Mux
 arecord-14213 [004] .... 15208.790251: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC2 Mux
 arecord-14213 [004] .... 15208.790254: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC1 Mux
 arecord-14213 [004] .... 15208.790257: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-10 Mux
 arecord-14213 [004] .... 15208.790260: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-9 Mux
 arecord-14213 [004] .... 15208.790262: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-8 Mux
 arecord-14213 [004] .... 15208.790265: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-7 Mux
 arecord-14213 [004] .... 15208.790267: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-6 Mux
 arecord-14213 [004] .... 15208.790270: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-5 Mux
 arecord-14213 [004] .... 15208.790273: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-4 Mux
 arecord-14213 [004] .... 15208.790275: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-3 Mux
 arecord-14213 [004] .... 15208.790278: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-2 Mux
 arecord-14213 [004] .... 15208.790281: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-1 Mux
 arecord-14213 [004] .... 15208.790283: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC4 Mux
 arecord-14213 [004] .... 15208.790286: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC3 Mux
 arecord-14213 [004] .... 15208.790288: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC2 Mux
 arecord-14213 [004] .... 15208.790291: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC1 Mux
 arecord-14213 [004] .... 15208.790294: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S5 Mux
 arecord-14213 [004] .... 15208.790296: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S4 Mux
 arecord-14213 [004] .... 15208.790299: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S3 Mux
 arecord-14213 [004] .... 15208.790302: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S2 Mux
 arecord-14213 [004] .... 15208.790305: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S1 Mux
 arecord-14213 [004] .... 15208.790307: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF10 Mux
 arecord-14213 [004] .... 15208.790310: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF9 Mux
 arecord-14213 [004] .... 15208.790313: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF8 Mux
 arecord-14213 [004] .... 15208.790315: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF7 Mux
 arecord-14213 [004] .... 15208.790318: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF6 Mux
 arecord-14213 [004] .... 15208.790320: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF5 Mux
 arecord-14213 [004] .... 15208.790323: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF4 Mux
 arecord-14213 [004] .... 15208.790326: snd_soc_dapm_path: *I2S2 RX -> I2S2 -> ADMAIF3 Mux
 arecord-14213 [004] .... 15208.790329: snd_soc_dapm_path: *I2S2 RX -> I2S2 -> ADMAIF2 Mux
 arecord-14213 [004] .... 15208.790333: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF1 Mux
 arecord-14213 [004] .... 15208.790335: snd_soc_dapm_widget_power: widget=I2S2 RX val=0
 arecord-14213 [004] .... 15208.790343: snd_soc_dapm_path: *I2S2 Receive -> (direct) -> I2S2 RX
 arecord-14213 [004] .... 15208.790346: snd_soc_dapm_widget_power: widget=I2S2 Receive val=0
 arecord-14213 [004] .... 15208.790350: snd_soc_dapm_path: *I2S2 CIF Transmit-I2S2 Receive -> (direct) -> I2S2 Receive
 arecord-14213 [004] .... 15208.790353: snd_soc_dapm_widget_power: widget=I2S2 CIF Transmit-I2S2 Receive val=0
 arecord-14213 [004] .... 15208.790357: snd_soc_dapm_path: *I2S2 CIF Transmit -> (direct) -> I2S2 CIF Transmit-I2S2 Receive
 arecord-14213 [004] .... 15208.790360: snd_soc_dapm_widget_power: widget=I2S2 CIF Transmit val=0
 arecord-14213 [004] .... 15208.790363: snd_soc_dapm_path: *I2S2 CIF TX -> (direct) -> I2S2 CIF Transmit
 arecord-14213 [004] .... 15208.790366: snd_soc_dapm_widget_power: widget=I2S2 CIF TX val=0
 arecord-14213 [004] .... 15208.790369: snd_soc_dapm_path: *I2S2 DAP RX -> (direct) -> I2S2 CIF TX
 arecord-14213 [004] .... 15208.790372: snd_soc_dapm_widget_power: widget=I2S2 DAP RX val=0
 arecord-14213 [004] .... 15208.790375: snd_soc_dapm_path: *I2S2 DAP Receive -> (direct) -> I2S2 DAP RX
 arecord-14213 [004] .... 15208.790378: snd_soc_dapm_widget_power: widget=I2S2 DAP Receive val=0
 arecord-14213 [004] .... 15208.790381: snd_soc_dapm_path: *y Capture-I2S2 DAP Receive -> (direct) -> I2S2 DAP Receive
 arecord-14213 [004] .... 15208.790384: snd_soc_dapm_widget_power: widget=y Capture-I2S2 DAP Receive val=0
 arecord-14213 [004] .... 15208.790388: snd_soc_dapm_path: *y Capture -> (direct) -> y Capture-I2S2 DAP Receive
 arecord-14213 [004] .... 15208.790390: snd_soc_dapm_widget_power: widget=y Capture val=0
 arecord-14213 [004] .... 15208.790395: snd_soc_dapm_path: *y IN -> (direct) -> y Capture
 arecord-14213 [004] .... 15208.790397: snd_soc_dapm_widget_power: widget=y IN val=0
 arecord-14213 [004] .... 15208.790401: snd_soc_dapm_path: *y Mic -> (direct) -> y IN
 arecord-14213 [004] .... 15208.790404: snd_soc_dapm_widget_power: widget=y Mic val=0
 arecord-14213 [004] .... 15208.790621: snd_soc_dapm_walk_done: tegra-snd-t186ref-mobile-rt565x: checks 15 power, 15 path, 93 neighbour
 yntp16@yntp16:~$
yntp16@yntp16:~$ dmesg
[ 2381.837583] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[ 2381.843930] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22

what does this mean ? Maybe error is here ???

arecord-14213 [004] .... 15208.790326: snd_soc_dapm_path: <b>*I2S2 RX -> I2S2 -> ADMAIF3 Mux</b>
arecord-14213 [004] .... 15208.790329: snd_soc_dapm_path: <b>*I2S2 RX -> I2S2 -> ADMAIF2 Mux</b>

Is the audio routing path right ???

@kayccc
@jonathanh
Hello,nvidia experts.

I made a cross experiment again.I play on i2s1,record on i2s0. i2s0 cannot record too. I failed.

before experiment:  i2s0(play) --->  i2s1(record)
now experiment:    i2s0(record) <--- i2s1(play)

now,I can play on both i2s0 and i2s1. I can’t record on either i2s0 or i2s1.
Could you please guide me how to record on i2s0/i2s1 ?

Below is my experiment command,please read it.

#!/bin/bash

#map ADMAIF1->I2S1 for record, I2S1 ---> ADMAIF1.
#map ADMAIF2->I2S2 for play, ADMAIF2 -> I2S2.
amixer -c tegrasndt186ref sset "I2S1 Mux" "ADMAIF1"
amixer -c tegrasndt186ref sset "ADMAIF1 Mux" "I2S1"

amixer -c tegrasndt186ref sset "ADMAIF2 Mux"  "I2S2" 
amixer -c tegrasndt186ref sset "I2S2 Mux"  "ADMAIF2" 

#i2s format.
amixer -c tegrasndt186ref  cset name='I2S1 codec frame mode' 1
amixer -c tegrasndt186ref  cset name='I2S2 codec frame mode' 1

#16bit or 32bit.
amixer -c tegrasndt186ref  cset name='I2S1 codec bit format' 1
amixer -c tegrasndt186ref  cset name='I2S2 codec bit format' 1

#i2s1:cbs-cfs(codec bit slave,codec frame slave),output signals.
#i2s2:cbm-cfm(codec bit master,codec frame master),input signals.
# i2s  --->  audio codec  = here codec is slave,so labled cbs-cfs.
# audio codec ---->  i2s  = here codec is master,so labled cbm-cfm.

amixer -c tegrasndt186ref  cset name='I2S1 codec master mode' 'cbm-cfm'
amixer -c tegrasndt186ref  cset name='I2S2 codec master mode' 'cbs-cfs'

#check pinmux i2s1 input.
grep dap1  /sys/kernel/debug/tegra_pinctrl_reg
#Bank: 0 Reg: 0x02431028 Val: 0x00000400 -> dap1_fs_pj3
#Bank: 0 Reg: 0x02431030 Val: 0x00000458 -> dap1_din_pj2
#Bank: 0 Reg: 0x02431038 Val: 0x00000400 -> dap1_dout_pj1
#Bank: 0 Reg: 0x02431040 Val: 0x00000400 -> dap1_sclk_pj0
busybox devmem 0x02431028 32 0x00000440
busybox devmem 0x02431030 32 0x00000448
busybox devmem 0x02431038 32 0x00000400
busybox devmem 0x02431040 32 0x00000440

#check pinmux i2s2 output.
grep dap2  /sys/kernel/debug/tegra_pinctrl_reg
#Bank: 0 Reg: 0x02434000 Val: 0x00000458 -> dap2_din_pc3
#Bank: 0 Reg: 0x02434008 Val: 0x00000400 -> dap2_dout_pc2
#Bank: 0 Reg: 0x02434010 Val: 0x00000400 -> dap2_fs_pc4
#Bank: 0 Reg: 0x02434018 Val: 0x00000400 -> dap2_sclk_pc1
busybox devmem 0x02434000 32 0x00000400
busybox devmem 0x02434008 32 0x00000400
busybox devmem 0x02434010 32 0x00000400
busybox devmem 0x02434018 32 0x00000400
grep dap2  /sys/kernel/debug/tegra_pinctrl_reg
yntp16@yntp16:/home/zhangshaoyan$ sudo ./i2s0_in_i2s1_out.sh
Simple mixer control 'I2S1 Mux',0
  Capabilities: enum
  Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6'
  Item0: 'ADMAIF1'
Simple mixer control 'ADMAIF1 Mux',0
  Capabilities: enum
  Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6'
  Item0: 'I2S1'
Simple mixer control 'ADMAIF2 Mux',0
  Capabilities: enum
  Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6'
  Item0: 'I2S2'
Simple mixer control 'I2S2 Mux',0
  Capabilities: enum
  Items: 'None' 'ADMAIF1' 'ADMAIF2' 'ADMAIF3' 'ADMAIF4' 'ADMAIF5' 'ADMAIF6' 'ADMAIF7' 'ADMAIF8' 'ADMAIF9' 'ADMAIF10' 'ADMAIF11' 'ADMAIF12' 'ADMAIF13' 'ADMAIF14' 'ADMAIF15' 'ADMAIF16' 'I2S1' 'I2S2' 'I2S3' 'I2S4' 'I2S5' 'I2S6' 'SFC1' 'SFC2' 'SFC3' 'SFC4' 'MIXER1-1' 'MIXER1-2' 'MIXER1-3' 'MIXER1-4' 'MIXER1-5' 'AMX1' 'AMX2' 'AMX3' 'AMX4' 'ARAD1' 'AFC1' 'AFC2' 'AFC3' 'AFC4' 'AFC5' 'AFC6' 'OPE1' 'SPKPROT1' 'MVC1' 'MVC2' 'IQC1-1' 'IQC1-2' 'IQC2-1' 'IQC2-2' 'DMIC1' 'DMIC2' 'DMIC3' 'DMIC4' 'ADX1-1' 'ADX1-2' 'ADX1-3' 'ADX1-4' 'ADX2-1' 'ADX2-2' 'ADX2-3' 'ADX2-4' 'ADX3-1' 'ADX3-2' 'ADX3-3' 'ADX3-4' 'ADX4-1' 'ADX4-2' 'ADX4-3' 'ADX4-4' 'ADMAIF17' 'ADMAIF18' 'ADMAIF19' 'ADMAIF20' 'ASRC1-1' 'ASRC1-2' 'ASRC1-3' 'ASRC1-4' 'ASRC1-5' 'ASRC1-6'
  Item0: 'ADMAIF2'
numid=1081,iface=MIXER,name='I2S1 codec frame mode'
  ; type=ENUMERATED,access=rw------,values=1,items=6
  ; Item #0 'None'
  ; Item #1 'i2s'
  ; Item #2 'right-j'
  ; Item #3 'left-j'
  ; Item #4 'dsp-a'
  ; Item #5 'dsp-b'
  : values=1
numid=1083,iface=MIXER,name='I2S2 codec frame mode'
  ; type=ENUMERATED,access=rw------,values=1,items=6
  ; Item #0 'None'
  ; Item #1 'i2s'
  ; Item #2 'right-j'
  ; Item #3 'left-j'
  ; Item #4 'dsp-a'
  ; Item #5 'dsp-b'
  : values=1
numid=853,iface=MIXER,name='I2S1 codec bit format'
  ; type=ENUMERATED,access=rw------,values=1,items=3
  ; Item #0 'None'
  ; Item #1 '16'
  ; Item #2 '32'
  : values=1
numid=864,iface=MIXER,name='I2S2 codec bit format'
  ; type=ENUMERATED,access=rw------,values=1,items=3
  ; Item #0 'None'
  ; Item #1 '16'
  ; Item #2 '32'
  : values=1
numid=1082,iface=MIXER,name='I2S1 codec master mode'
  ; type=ENUMERATED,access=rw------,values=1,items=5
  ; Item #0 'None'
  ; Item #1 'cbm-cfm'
  ; Item #2 'cbs-cfm'
  ; Item #3 'cbm-cfs'
  ; Item #4 'cbs-cfs'
  : values=1
numid=1084,iface=MIXER,name='I2S2 codec master mode'
  ; type=ENUMERATED,access=rw------,values=1,items=5
  ; Item #0 'None'
  ; Item #1 'cbm-cfm'
  ; Item #2 'cbs-cfm'
  ; Item #3 'cbm-cfs'
  ; Item #4 'cbs-cfs'
  : values=4
Bank: 0 Reg: 0x02431028 Val: 0x00000400 -> dap1_fs_pj3
Bank: 0 Reg: 0x02431030 Val: 0x00000458 -> dap1_din_pj2
Bank: 0 Reg: 0x02431038 Val: 0x00000400 -> dap1_dout_pj1
Bank: 0 Reg: 0x02431040 Val: 0x00000400 -> dap1_sclk_pj0
Bank: 0 Reg: 0x02434000 Val: 0x00000458 -> dap2_din_pc3
Bank: 0 Reg: 0x02434008 Val: 0x00000400 -> dap2_dout_pc2
Bank: 0 Reg: 0x02434010 Val: 0x00000400 -> dap2_fs_pc4
Bank: 0 Reg: 0x02434018 Val: 0x00000400 -> dap2_sclk_pc1
Bank: 0 Reg: 0x02434000 Val: 0x00000400 -> dap2_din_pc3
Bank: 0 Reg: 0x02434008 Val: 0x00000400 -> dap2_dout_pc2
Bank: 0 Reg: 0x02434010 Val: 0x00000400 -> dap2_fs_pc4
Bank: 0 Reg: 0x02434018 Val: 0x00000400 -> dap2_sclk_pc1

the file dream.wav is big enouth, it needs more than 5 minutes to finish.so donot worry about it.

#play on i2s1.
aplay -D hw:tegrasndt186ref,1  dream.wav  &
sleep 3
#record on i2s0.
arecord -D hw:tegrasndt186ref,0 -r 44100 -f S16_LE -c 2 -d 60 -t raw i2s2.cap.raw
Recording raw data 'i2s2.cap.raw' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
arecord: pcm_read:2103: read error: Input/output error

The same error.

by the way dump the i2s0 and i2s1 registers.

yntp16@yntp16:/home/zhangshaoyan$ sudo cat /sys/kernel/debug/regmap/tegra210-i2s.0/registers
00: 00000000
04: XXXXXXXX
08: 00000000
0c: XXXXXXXX
10: XXXXXXXX
14: 00000003
18: 00000000
1c: 00000000
20: 03113300
24: 00000100
28: 00000000
2c: 00000000
30: 00000000
34: 00000000
38: 00000000
3c: 00000000
40: 00000000
44: XXXXXXXX
48: 00000000
4c: XXXXXXXX
50: XXXXXXXX
54: 00000003
58: 00000000
5c: 00000000
60: 00113300
64: 00000100
68: 00000000
6c: 00000000
70: 00000000
74: 00000000
78: 00000000
7c: 00000000
80: 00000001
84: 00000000
88: 00000001
8c: 00000000
90: XXXXXXXX
94: 00000000
98: 00000000
9c: 00000000
a0: 1f000003        here[10]=0,i2s0 is slave for recording.
a4: 0000000f
a8: 00000000
ac: 00000000
b0: 00000000
yntp16@yntp16:/home/zhangshaoyan$ sudo cat /sys/kernel/debug/regmap/tegra210-i2s.1/registers
00: 00000000
04: XXXXXXXX
08: 00000000
0c: XXXXXXXX
10: XXXXXXXX
14: 00000003
18: 00000000
1c: 00000000
20: 03113300
24: 00000100
28: 00000000
2c: 00000000
30: 00000000
34: 00000000
38: 00000000
3c: 00000000
40: 00000000
44: XXXXXXXX
48: 00000000
4c: XXXXXXXX
50: XXXXXXXX
54: 00000003
58: 00000000
5c: 00000000
60: 00113300
64: 00000100
68: 00000000
6c: 00000000
70: 00000000
74: 00000000
78: 00000000
7c: 00000000
80: 00000001
84: 00000000
88: 00000001
8c: 00000000
90: XXXXXXXX
94: 00000000
98: 00000000
9c: 00000000
a0: 1f000403           here[10]=1,i2s1 is master for playing.
a4: 0000000f
a8: 00000000
ac: 00000000
b0: 00000000
yntp16@yntp16:/home/zhangshaoyan$

What am I missing ?

It seems the record audio routing path is error.
but I am not sure and donot know how to fix it.

arecord-9812  [000] ....  5674.067738: snd_soc_dapm_start: card=tegra-snd-t186ref-mobile-rt565x
   arecord-9812  [000] ....  5674.069041: snd_soc_dapm_widget_power: widget=Capture 2 val=0
   arecord-9812  [000] ....  5674.069083: snd_soc_dapm_path: *ADMAIF2 Transmit -> (direct) -> Capture 2
   arecord-9812  [000] ....  5674.069098: snd_soc_dapm_path: *ADMAIF2 Transmit -> (direct) -> ADMAIF2 Transmit-ADMAIF2 CIF Transmit
   arecord-9812  [000] ....  5674.069105: snd_soc_dapm_widget_power: widget=ADMAIF2 Transmit val=0
   arecord-9812  [000] ....  5674.069116: snd_soc_dapm_path: *ADMAIF2 TX -> (direct) -> ADMAIF2 Transmit
   arecord-9812  [000] ....  5674.069119: snd_soc_dapm_widget_power: widget=ADMAIF2 TX val=0
   arecord-9812  [000] ....  5674.069124: snd_soc_dapm_path: *ADMAIF2 Mux -> (direct) -> ADMAIF2 TX
   arecord-9812  [000] ....  5674.069126: snd_soc_dapm_widget_power: widget=ADMAIF2 Mux val=0
   arecord-9812  [000] ....  5674.069165: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> DSPK2 Mux
   arecord-9812  [000] ....  5674.069176: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> DSPK1 Mux
   arecord-9812  [000] ....  5674.069190: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-7 Mux
   arecord-9812  [000] ....  5674.069200: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-6 Mux
   arecord-9812  [000] ....  5674.069210: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-5 Mux
   arecord-9812  [000] ....  5674.069221: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-4 Mux
   arecord-9812  [000] ....  5674.069230: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-3 Mux
   arecord-9812  [000] ....  5674.069241: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-2 Mux
   arecord-9812  [000] ....  5674.069251: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-1 Mux
   arecord-9812  [000] ....  5674.069260: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S6 Mux
   arecord-9812  [000] ....  5674.069271: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX4 Mux
   arecord-9812  [000] ....  5674.069281: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX3 Mux
   arecord-9812  [000] ....  5674.069297: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-4 Mux
   arecord-9812  [000] ....  5674.069306: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-3 Mux
   arecord-9812  [000] ....  5674.069316: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-2 Mux
   arecord-9812  [000] ....  5674.069325: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-1 Mux
   arecord-9812  [000] ....  5674.069332: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-4 Mux
   arecord-9812  [000] ....  5674.069339: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-3 Mux
   arecord-9812  [000] ....  5674.069344: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-2 Mux
   arecord-9812  [000] ....  5674.069368: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-1 Mux
   arecord-9812  [000] ....  5674.069375: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF20 Mux
   arecord-9812  [000] ....  5674.069381: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF19 Mux
   arecord-9812  [000] ....  5674.069392: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF18 Mux
   arecord-9812  [000] ....  5674.069401: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF17 Mux
   arecord-9812  [000] ....  5674.069414: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF16 Mux
   arecord-9812  [000] ....  5674.069425: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF15 Mux
   arecord-9812  [000] ....  5674.069434: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF14 Mux
   arecord-9812  [000] ....  5674.069443: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF13 Mux
   arecord-9812  [000] ....  5674.069450: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF12 Mux
   arecord-9812  [000] ....  5674.069455: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF11 Mux
   arecord-9812  [000] ....  5674.069465: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX2 Mux
   arecord-9812  [000] ....  5674.069474: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX1 Mux
   arecord-9812  [000] ....  5674.069484: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-4 Mux
   arecord-9812  [000] ....  5674.069495: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-3 Mux
   arecord-9812  [000] ....  5674.069506: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-2 Mux
   arecord-9812  [000] ....  5674.069519: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-1 Mux
   arecord-9812  [000] ....  5674.069528: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-4 Mux
   arecord-9812  [000] ....  5674.069538: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-3 Mux
   arecord-9812  [000] ....  5674.069547: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-2 Mux
   arecord-9812  [000] ....  5674.069554: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-1 Mux
   arecord-9812  [000] ....  5674.069560: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MVC2 Mux
   arecord-9812  [000] ....  5674.069566: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MVC1 Mux
   arecord-9812  [000] ....  5674.069576: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SPKPROT1 Mux
   arecord-9812  [000] ....  5674.069586: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> OPE1 Mux
   arecord-9812  [000] ....  5674.069596: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC6 Mux
   arecord-9812  [000] ....  5674.069602: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC5 Mux
   arecord-9812  [000] ....  5674.069609: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC4 Mux
   arecord-9812  [000] ....  5674.069615: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC3 Mux
   arecord-9812  [000] ....  5674.069622: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC2 Mux
   arecord-9812  [000] ....  5674.069627: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC1 Mux
   arecord-9812  [000] ....  5674.069637: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-10 Mux
   arecord-9812  [000] ....  5674.069643: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-9 Mux
   arecord-9812  [000] ....  5674.069649: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-8 Mux
   arecord-9812  [000] ....  5674.069663: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-7 Mux
   arecord-9812  [000] ....  5674.069670: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-6 Mux
   arecord-9812  [000] ....  5674.069676: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-5 Mux
   arecord-9812  [000] ....  5674.069685: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-4 Mux
   arecord-9812  [000] ....  5674.069691: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-3 Mux
   arecord-9812  [000] ....  5674.069697: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-2 Mux
   arecord-9812  [000] ....  5674.069704: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-1 Mux
   arecord-9812  [000] ....  5674.069710: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC4 Mux
   arecord-9812  [000] ....  5674.069717: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC3 Mux
   arecord-9812  [000] ....  5674.069722: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC2 Mux
   arecord-9812  [000] ....  5674.069728: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC1 Mux
   arecord-9812  [000] ....  5674.069741: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S5 Mux
   arecord-9812  [000] ....  5674.069748: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S4 Mux
   arecord-9812  [000] ....  5674.069753: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S3 Mux
   arecord-9812  [000] ....  5674.069759: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S2 Mux
   arecord-9812  [000] ....  5674.069765: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S1 Mux
   arecord-9812  [000] ....  5674.069770: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF10 Mux
   arecord-9812  [000] ....  5674.069776: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF9 Mux
   arecord-9812  [000] ....  5674.069783: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF8 Mux
   arecord-9812  [000] ....  5674.069790: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF7 Mux
   arecord-9812  [000] ....  5674.069799: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF6 Mux
   arecord-9812  [000] ....  5674.069805: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF5 Mux
   arecord-9812  [000] ....  5674.069811: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF4 Mux
   arecord-9812  [000] ....  5674.069817: snd_soc_dapm_path: *I2S2 RX -> I2S2 -> ADMAIF3 Mux
   arecord-9812  [000] ....  5674.069823: snd_soc_dapm_path: *I2S2 RX -> I2S2 -> ADMAIF2 Mux
   arecord-9812  [000] ....  5674.069832: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF1 Mux
   arecord-9812  [000] ....  5674.069834: snd_soc_dapm_widget_power: widget=I2S2 RX val=0
   arecord-9812  [000] ....  5674.069843: snd_soc_dapm_path: *I2S2 Receive -> (direct) -> I2S2 RX
   arecord-9812  [000] ....  5674.069846: snd_soc_dapm_widget_power: widget=I2S2 Receive val=0
   arecord-9812  [000] ....  5674.069854: snd_soc_dapm_path: *I2S2 CIF Transmit-I2S2 Receive -> (direct) -> I2S2 Receive
   arecord-9812  [000] ....  5674.069857: snd_soc_dapm_widget_power: widget=I2S2 CIF Transmit-I2S2 Receive val=0
   arecord-9812  [000] ....  5674.069878: snd_soc_dapm_path: *I2S2 CIF Transmit -> (direct) -> I2S2 CIF Transmit-I2S2 Receive
   arecord-9812  [000] ....  5674.069881: snd_soc_dapm_widget_power: widget=I2S2 CIF Transmit val=0
   arecord-9812  [000] ....  5674.069889: snd_soc_dapm_path: *I2S2 CIF TX -> (direct) -> I2S2 CIF Transmit
   arecord-9812  [000] ....  5674.069892: snd_soc_dapm_widget_power: widget=I2S2 CIF TX val=0
   arecord-9812  [000] ....  5674.069900: snd_soc_dapm_path: *I2S2 DAP RX -> (direct) -> I2S2 CIF TX
   arecord-9812  [000] ....  5674.069903: snd_soc_dapm_widget_power: widget=I2S2 DAP RX val=0
   arecord-9812  [000] ....  5674.069914: snd_soc_dapm_path: *I2S2 DAP Receive -> (direct) -> I2S2 DAP RX
   arecord-9812  [000] ....  5674.069917: snd_soc_dapm_widget_power: widget=I2S2 DAP Receive val=0
   arecord-9812  [000] ....  5674.069924: snd_soc_dapm_path: *y Capture-I2S2 DAP Receive -> (direct) -> I2S2 DAP Receive
   arecord-9812  [000] ....  5674.069926: snd_soc_dapm_widget_power: widget=y Capture-I2S2 DAP Receive val=0
   arecord-9812  [000] ....  5674.069942: snd_soc_dapm_path: *y Capture -> (direct) -> y Capture-I2S2 DAP Receive
   arecord-9812  [000] ....  5674.069944: snd_soc_dapm_widget_power: widget=y Capture val=0
   arecord-9812  [000] ....  5674.069952: snd_soc_dapm_path: *y IN -> (direct) -> y Capture
   arecord-9812  [000] ....  5674.069954: snd_soc_dapm_widget_power: widget=y IN val=0
   arecord-9812  [000] ....  5674.069961: snd_soc_dapm_path: *y Mic -> (direct) -> y IN
   arecord-9812  [000] ....  5674.069963: snd_soc_dapm_widget_power: widget=y Mic val=0
   arecord-9812  [000] ....  5674.072310: snd_soc_dapm_walk_done: tegra-snd-t186ref-mobile-rt565x: checks 15 power, 15 path, 93 neighbour
   yntp16@yntp16:~$

And I think the correct path for i2s2 record is : I2S2 RX --> I2S2 Mux --> ADMAIF1 --> ADMAIF1 TX
reference to the play path : I2S1 TX <- I2S1 Mux <- ADMAIF1 <- ADMAIF1 RX ,attention here play on i2s1 is okay.
could somebody know how to fix it?

Hello!

The routing looks fine to me. I have tested and verified that I2S loopback between I2S1 and I2S2 is working on the Jetson TX2. Here is a trace from my TX2 …

# tracer: nop
#
# entries-in-buffer/entries-written: 368/368   #P:6
#
#                              _-----=> irqs-off
#                             / _----=> need-resched
#                            | / _---=> hardirq/softirq
#                            || / _--=> preempt-depth
#                            ||| /     delay
#           TASK-PID   CPU#  ||||    TIMESTAMP  FUNCTION
#              | |       |   ||||       |         |
           aplay-5144  [002] ....  1830.188441: snd_soc_dapm_path: *ADMAIF1 RX <- (direct) <- ADMAIF1 Receive
           aplay-5144  [002] ....  1830.188451: snd_soc_dapm_path:  I2S1 Mux <- ARAD1 <- ARAD1 RX
           aplay-5144  [002] ....  1830.188454: snd_soc_dapm_path:  I2S1 Mux <- ADX4-4 <- ADX4-4 RX
           aplay-5144  [002] ....  1830.188456: snd_soc_dapm_path:  I2S1 Mux <- ADX4-3 <- ADX4-3 RX
           aplay-5144  [002] ....  1830.188458: snd_soc_dapm_path:  I2S1 Mux <- ADX4-2 <- ADX4-2 RX
           aplay-5144  [002] ....  1830.188460: snd_soc_dapm_path:  I2S1 Mux <- ADX4-1 <- ADX4-1 RX
           aplay-5144  [002] ....  1830.188462: snd_soc_dapm_path:  I2S1 Mux <- AMX4 <- AMX4 RX
           aplay-5144  [002] ....  1830.188464: snd_soc_dapm_path:  I2S1 Mux <- ADX3-4 <- ADX3-4 RX
           aplay-5144  [002] ....  1830.188466: snd_soc_dapm_path:  I2S1 Mux <- ADX3-3 <- ADX3-3 RX
           aplay-5144  [002] ....  1830.188468: snd_soc_dapm_path:  I2S1 Mux <- ADX3-2 <- ADX3-2 RX
           aplay-5144  [002] ....  1830.188470: snd_soc_dapm_path:  I2S1 Mux <- ADX3-1 <- ADX3-1 RX
           aplay-5144  [002] ....  1830.188472: snd_soc_dapm_path:  I2S1 Mux <- AMX3 <- AMX3 RX
           aplay-5144  [002] ....  1830.188474: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-6 <- ASRC1-6 RX
           aplay-5144  [002] ....  1830.188476: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-5 <- ASRC1-5 RX
           aplay-5144  [002] ....  1830.188478: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-4 <- ASRC1-4 RX
           aplay-5144  [002] ....  1830.188480: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-3 <- ASRC1-3 RX
           aplay-5144  [002] ....  1830.188482: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-2 <- ASRC1-2 RX
           aplay-5144  [002] ....  1830.188484: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-1 <- ASRC1-1 RX
           aplay-5144  [002] ....  1830.188486: snd_soc_dapm_path:  I2S1 Mux <- I2S6 <- I2S6 RX
           aplay-5144  [002] ....  1830.188488: snd_soc_dapm_path:  I2S1 Mux <- DMIC4 <- DMIC4 RX
           aplay-5144  [002] ....  1830.188490: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF20 <- ADMAIF20 RX
           aplay-5144  [002] ....  1830.188492: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF19 <- ADMAIF19 RX
           aplay-5144  [002] ....  1830.188494: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF18 <- ADMAIF18 RX
           aplay-5144  [002] ....  1830.188495: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF17 <- ADMAIF17 RX
           aplay-5144  [002] ....  1830.188497: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF16 <- ADMAIF16 RX
           aplay-5144  [002] ....  1830.188498: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF15 <- ADMAIF15 RX
           aplay-5144  [002] ....  1830.188500: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF14 <- ADMAIF14 RX
           aplay-5144  [002] ....  1830.188501: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF13 <- ADMAIF13 RX
           aplay-5144  [002] ....  1830.188503: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF12 <- ADMAIF12 RX
           aplay-5144  [002] ....  1830.188504: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF11 <- ADMAIF11 RX
           aplay-5144  [002] ....  1830.188506: snd_soc_dapm_path:  I2S1 Mux <- ADX2-4 <- ADX2-4 RX
           aplay-5144  [002] ....  1830.188507: snd_soc_dapm_path:  I2S1 Mux <- ADX2-3 <- ADX2-3 RX
           aplay-5144  [002] ....  1830.188508: snd_soc_dapm_path:  I2S1 Mux <- ADX2-2 <- ADX2-2 RX
           aplay-5144  [002] ....  1830.188510: snd_soc_dapm_path:  I2S1 Mux <- ADX2-1 <- ADX2-1 RX
           aplay-5144  [002] ....  1830.188511: snd_soc_dapm_path:  I2S1 Mux <- AMX2 <- AMX2 RX
           aplay-5144  [002] ....  1830.188513: snd_soc_dapm_path:  I2S1 Mux <- ADX1-4 <- ADX1-4 RX
           aplay-5144  [002] ....  1830.188514: snd_soc_dapm_path:  I2S1 Mux <- ADX1-3 <- ADX1-3 RX
           aplay-5144  [002] ....  1830.188515: snd_soc_dapm_path:  I2S1 Mux <- ADX1-2 <- ADX1-2 RX
           aplay-5144  [002] ....  1830.188516: snd_soc_dapm_path:  I2S1 Mux <- ADX1-1 <- ADX1-1 RX
           aplay-5144  [002] ....  1830.188518: snd_soc_dapm_path:  I2S1 Mux <- AMX1 <- AMX1 RX
           aplay-5144  [002] ....  1830.188519: snd_soc_dapm_path:  I2S1 Mux <- DMIC3 <- DMIC3 RX
           aplay-5144  [002] ....  1830.188521: snd_soc_dapm_path:  I2S1 Mux <- DMIC2 <- DMIC2 RX
           aplay-5144  [002] ....  1830.188522: snd_soc_dapm_path:  I2S1 Mux <- DMIC1 <- DMIC1 RX
           aplay-5144  [002] ....  1830.188523: snd_soc_dapm_path:  I2S1 Mux <- IQC2-2 <- IQC2-2 RX
           aplay-5144  [002] ....  1830.188525: snd_soc_dapm_path:  I2S1 Mux <- IQC2-1 <- IQC2-1 RX
           aplay-5144  [002] ....  1830.188526: snd_soc_dapm_path:  I2S1 Mux <- IQC1-2 <- IQC1-2 RX
           aplay-5144  [002] ....  1830.188527: snd_soc_dapm_path:  I2S1 Mux <- IQC1-1 <- IQC1-1 RX
           aplay-5144  [002] ....  1830.188529: snd_soc_dapm_path:  I2S1 Mux <- MVC2 <- MVC2 RX
           aplay-5144  [002] ....  1830.188530: snd_soc_dapm_path:  I2S1 Mux <- MVC1 <- MVC1 RX
           aplay-5144  [002] ....  1830.188532: snd_soc_dapm_path:  I2S1 Mux <- OPE1 <- OPE1 RX
           aplay-5144  [002] ....  1830.188533: snd_soc_dapm_path:  I2S1 Mux <- AFC6 <- AFC6 RX
           aplay-5144  [002] ....  1830.188534: snd_soc_dapm_path:  I2S1 Mux <- AFC5 <- AFC5 RX
           aplay-5144  [002] ....  1830.188535: snd_soc_dapm_path:  I2S1 Mux <- AFC4 <- AFC4 RX
           aplay-5144  [002] ....  1830.188537: snd_soc_dapm_path:  I2S1 Mux <- AFC3 <- AFC3 RX
           aplay-5144  [002] ....  1830.188538: snd_soc_dapm_path:  I2S1 Mux <- AFC2 <- AFC2 RX
           aplay-5144  [002] ....  1830.188539: snd_soc_dapm_path:  I2S1 Mux <- AFC1 <- AFC1 RX
           aplay-5144  [002] ....  1830.188540: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-5 <- MIXER1-5 RX
           aplay-5144  [002] ....  1830.188541: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-4 <- MIXER1-4 RX
           aplay-5144  [002] ....  1830.188543: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-3 <- MIXER1-3 RX
           aplay-5144  [002] ....  1830.188544: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-2 <- MIXER1-2 RX
           aplay-5144  [002] ....  1830.188546: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-1 <- MIXER1-1 RX
           aplay-5144  [002] ....  1830.188547: snd_soc_dapm_path:  I2S1 Mux <- SFC4 <- SFC4 RX
           aplay-5144  [002] ....  1830.188548: snd_soc_dapm_path:  I2S1 Mux <- SFC3 <- SFC3 RX
           aplay-5144  [002] ....  1830.188551: snd_soc_dapm_path:  I2S1 Mux <- SFC2 <- SFC2 RX
           aplay-5144  [002] ....  1830.188552: snd_soc_dapm_path:  I2S1 Mux <- SFC1 <- SFC1 RX
           aplay-5144  [002] ....  1830.188554: snd_soc_dapm_path:  I2S1 Mux <- I2S5 <- I2S5 RX
           aplay-5144  [002] ....  1830.188555: snd_soc_dapm_path:  I2S1 Mux <- I2S4 <- I2S4 RX
           aplay-5144  [002] ....  1830.188557: snd_soc_dapm_path:  I2S1 Mux <- I2S3 <- I2S3 RX
           aplay-5144  [002] ....  1830.188558: snd_soc_dapm_path:  I2S1 Mux <- I2S2 <- I2S2 RX
           aplay-5144  [002] ....  1830.188559: snd_soc_dapm_path:  I2S1 Mux <- I2S1 <- I2S1 RX
           aplay-5144  [002] ....  1830.188561: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF10 <- ADMAIF10 RX
           aplay-5144  [002] ....  1830.188562: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF9 <- ADMAIF9 RX
           aplay-5144  [002] ....  1830.188563: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF8 <- ADMAIF8 RX
           aplay-5144  [002] ....  1830.188564: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF7 <- ADMAIF7 RX
           aplay-5144  [002] ....  1830.188565: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF6 <- ADMAIF6 RX
           aplay-5144  [002] ....  1830.188567: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF5 <- ADMAIF5 RX
           aplay-5144  [002] ....  1830.188568: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF4 <- ADMAIF4 RX
           aplay-5144  [002] ....  1830.188569: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF3 <- ADMAIF3 RX
           aplay-5144  [002] ....  1830.188570: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF2 <- ADMAIF2 RX
           aplay-5144  [002] ....  1830.188572: snd_soc_dapm_path: *I2S1 Mux <- ADMAIF1 <- ADMAIF1 RX
           aplay-5144  [002] ....  1830.188574: snd_soc_dapm_path: *I2S1 TX <- (direct) <- I2S1 Mux
           aplay-5144  [002] ....  1830.188576: snd_soc_dapm_path: *I2S1 Transmit <- (direct) <- I2S1 TX
           aplay-5144  [002] ....  1830.188577: snd_soc_dapm_path: *I2S1 Transmit-I2S1 CIF Receive <- (direct) <- I2S1 Transmit
           aplay-5144  [002] ....  1830.188579: snd_soc_dapm_path: *I2S1 CIF Receive <- (direct) <- I2S1 Transmit-I2S1 CIF Receive
           aplay-5144  [002] ....  1830.188581: snd_soc_dapm_path: *I2S1 CIF RX <- (direct) <- I2S1 CIF Receive
           aplay-5144  [002] ....  1830.188583: snd_soc_dapm_path: *I2S1 DAP TX <- (direct) <- I2S1 CIF RX
           aplay-5144  [002] ....  1830.188585: snd_soc_dapm_path: *I2S1 DAP Transmit <- (direct) <- I2S1 DAP TX
           aplay-5144  [002] ....  1830.188587: snd_soc_dapm_path: *I2S1 DAP Transmit-x Playback <- (direct) <- I2S1 DAP Transmit
           aplay-5144  [002] ....  1830.188588: snd_soc_dapm_path: *x Playback <- (direct) <- I2S1 DAP Transmit-x Playback
           aplay-5144  [002] ....  1830.188590: snd_soc_dapm_path: *x OUT <- (direct) <- x Playback
           aplay-5144  [002] ....  1830.188592: snd_soc_dapm_path: *x Headphone <- (direct) <- x OUT
         arecord-5145  [001] ....  1835.335808: snd_soc_dapm_path: *ADMAIF2 TX -> (direct) -> ADMAIF2 Transmit
         arecord-5145  [001] ....  1835.335815: snd_soc_dapm_path: *ADMAIF2 Mux -> (direct) -> ADMAIF2 TX
         arecord-5145  [001] ....  1835.335819: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> DSPK2 Mux
         arecord-5145  [001] ....  1835.335820: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> DSPK1 Mux
         arecord-5145  [001] ....  1835.335822: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-7 Mux
         arecord-5145  [001] ....  1835.335824: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-6 Mux
         arecord-5145  [001] ....  1835.335825: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-5 Mux
         arecord-5145  [001] ....  1835.335827: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-4 Mux
         arecord-5145  [001] ....  1835.335828: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-3 Mux
         arecord-5145  [001] ....  1835.335829: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-2 Mux
         arecord-5145  [001] ....  1835.335831: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-1 Mux
         arecord-5145  [001] ....  1835.335832: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S6 Mux
         arecord-5145  [001] ....  1835.335834: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX4 Mux
         arecord-5145  [001] ....  1835.335835: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX3 Mux
         arecord-5145  [001] ....  1835.335836: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-4 Mux
         arecord-5145  [001] ....  1835.335838: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-3 Mux
         arecord-5145  [001] ....  1835.335839: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-2 Mux
         arecord-5145  [001] ....  1835.335841: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-1 Mux
         arecord-5145  [001] ....  1835.335842: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-4 Mux
         arecord-5145  [001] ....  1835.335843: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-3 Mux
         arecord-5145  [001] ....  1835.335845: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-2 Mux
         arecord-5145  [001] ....  1835.335846: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-1 Mux
         arecord-5145  [001] ....  1835.335847: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF20 Mux
         arecord-5145  [001] ....  1835.335849: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF19 Mux
         arecord-5145  [001] ....  1835.335851: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF18 Mux
         arecord-5145  [001] ....  1835.335852: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF17 Mux
         arecord-5145  [001] ....  1835.335854: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF16 Mux
         arecord-5145  [001] ....  1835.335855: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF15 Mux
         arecord-5145  [001] ....  1835.335857: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF14 Mux
         arecord-5145  [001] ....  1835.335858: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF13 Mux
         arecord-5145  [001] ....  1835.335860: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF12 Mux
         arecord-5145  [001] ....  1835.335861: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF11 Mux
         arecord-5145  [001] ....  1835.335863: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX2 Mux
         arecord-5145  [001] ....  1835.335864: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX1 Mux
         arecord-5145  [001] ....  1835.335866: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-4 Mux
         arecord-5145  [001] ....  1835.335867: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-3 Mux
         arecord-5145  [001] ....  1835.335869: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-2 Mux
         arecord-5145  [001] ....  1835.335870: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-1 Mux
         arecord-5145  [001] ....  1835.335872: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-4 Mux
         arecord-5145  [001] ....  1835.335874: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-3 Mux
         arecord-5145  [001] ....  1835.335875: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-2 Mux
         arecord-5145  [001] ....  1835.335877: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-1 Mux
         arecord-5145  [001] ....  1835.335878: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MVC2 Mux
         arecord-5145  [001] ....  1835.335880: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MVC1 Mux
         arecord-5145  [001] ....  1835.335881: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SPKPROT1 Mux
         arecord-5145  [001] ....  1835.335883: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> OPE1 Mux
         arecord-5145  [001] ....  1835.335884: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC6 Mux
         arecord-5145  [001] ....  1835.335885: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC5 Mux
         arecord-5145  [001] ....  1835.335886: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC4 Mux
         arecord-5145  [001] ....  1835.335888: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC3 Mux
         arecord-5145  [001] ....  1835.335889: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC2 Mux
         arecord-5145  [001] ....  1835.335890: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC1 Mux
         arecord-5145  [001] ....  1835.335892: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-10 Mux
         arecord-5145  [001] ....  1835.335893: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-9 Mux
         arecord-5145  [001] ....  1835.335895: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-8 Mux
         arecord-5145  [001] ....  1835.335896: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-7 Mux
         arecord-5145  [001] ....  1835.335897: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-6 Mux
         arecord-5145  [001] ....  1835.335899: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-5 Mux
         arecord-5145  [001] ....  1835.335900: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-4 Mux
         arecord-5145  [001] ....  1835.335901: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-3 Mux
         arecord-5145  [001] ....  1835.335903: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-2 Mux
         arecord-5145  [001] ....  1835.335905: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-1 Mux
         arecord-5145  [001] ....  1835.335906: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC4 Mux
         arecord-5145  [001] ....  1835.335907: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC3 Mux
         arecord-5145  [001] ....  1835.335909: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC2 Mux
         arecord-5145  [001] ....  1835.335911: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC1 Mux
         arecord-5145  [001] ....  1835.335913: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S5 Mux
         arecord-5145  [001] ....  1835.335914: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S4 Mux
         arecord-5145  [001] ....  1835.335916: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S3 Mux
         arecord-5145  [001] ....  1835.335917: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S2 Mux
         arecord-5145  [001] ....  1835.335919: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S1 Mux
         arecord-5145  [001] ....  1835.335920: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF10 Mux
         arecord-5145  [001] ....  1835.335921: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF9 Mux
         arecord-5145  [001] ....  1835.335922: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF8 Mux
         arecord-5145  [001] ....  1835.335924: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF7 Mux
         arecord-5145  [001] ....  1835.335925: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF6 Mux
         arecord-5145  [001] ....  1835.335927: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF5 Mux
         arecord-5145  [001] ....  1835.335928: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF4 Mux
         arecord-5145  [001] ....  1835.335929: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF3 Mux
         arecord-5145  [001] ....  1835.335931: snd_soc_dapm_path: *I2S2 RX -> I2S2 -> ADMAIF2 Mux
         arecord-5145  [001] ....  1835.335932: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF1 Mux
         arecord-5145  [001] ....  1835.335934: snd_soc_dapm_path: *I2S2 Receive -> (direct) -> I2S2 RX
         arecord-5145  [001] ....  1835.335936: snd_soc_dapm_path: *I2S2 CIF Transmit-I2S2 Receive -> (direct) -> I2S2 Receive
         arecord-5145  [001] ....  1835.335938: snd_soc_dapm_path: *I2S2 CIF Transmit -> (direct) -> I2S2 CIF Transmit-I2S2 Receive
         arecord-5145  [001] ....  1835.335940: snd_soc_dapm_path: *I2S2 CIF TX -> (direct) -> I2S2 CIF Transmit
         arecord-5145  [001] ....  1835.335941: snd_soc_dapm_path: *I2S2 DAP RX -> (direct) -> I2S2 CIF TX
         arecord-5145  [001] ....  1835.335943: snd_soc_dapm_path: *I2S2 DAP Receive -> (direct) -> I2S2 DAP RX
         arecord-5145  [001] ....  1835.335945: snd_soc_dapm_path: *y Capture-I2S2 DAP Receive -> (direct) -> I2S2 DAP Receive
         arecord-5145  [001] ....  1835.335947: snd_soc_dapm_path: *y Capture -> (direct) -> y Capture-I2S2 DAP Receive
         arecord-5145  [001] ....  1835.335948: snd_soc_dapm_path: *y IN -> (direct) -> y Capture
         arecord-5145  [001] ....  1835.335950: snd_soc_dapm_path: *y Mic -> (direct) -> y IN
         arecord-5145  [002] ....  1845.383764: snd_soc_dapm_path: *ADMAIF2 Transmit -> (direct) -> Capture 2
         arecord-5145  [002] ....  1845.383878: snd_soc_dapm_path: *ADMAIF2 Transmit -> (direct) -> ADMAIF2 Transmit-ADMAIF2 CIF Transmit
         arecord-5145  [002] ....  1845.383899: snd_soc_dapm_path: *ADMAIF2 TX -> (direct) -> ADMAIF2 Transmit
         arecord-5145  [002] ....  1845.383912: snd_soc_dapm_path: *ADMAIF2 Mux -> (direct) -> ADMAIF2 TX
         arecord-5145  [002] ....  1845.384134: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> DSPK2 Mux
         arecord-5145  [002] ....  1845.384155: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> DSPK1 Mux
         arecord-5145  [002] ....  1845.384173: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-7 Mux
         arecord-5145  [002] ....  1845.384192: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-6 Mux
         arecord-5145  [002] ....  1845.384211: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-5 Mux
         arecord-5145  [002] ....  1845.384225: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-4 Mux
         arecord-5145  [002] ....  1845.384240: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-3 Mux
         arecord-5145  [002] ....  1845.384258: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-2 Mux
         arecord-5145  [002] ....  1845.384277: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ASRC1-1 Mux
         arecord-5145  [002] ....  1845.384297: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S6 Mux
         arecord-5145  [002] ....  1845.384311: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX4 Mux
         arecord-5145  [002] ....  1845.384326: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX3 Mux
         arecord-5145  [002] ....  1845.384341: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-4 Mux
         arecord-5145  [002] ....  1845.384351: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-3 Mux
         arecord-5145  [002] ....  1845.384366: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-2 Mux
         arecord-5145  [002] ....  1845.384382: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX4-1 Mux
         arecord-5145  [002] ....  1845.384396: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-4 Mux
         arecord-5145  [002] ....  1845.384411: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-3 Mux
         arecord-5145  [002] ....  1845.384427: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-2 Mux
         arecord-5145  [002] ....  1845.384446: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX3-1 Mux
         arecord-5145  [002] ....  1845.384464: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF20 Mux
         arecord-5145  [002] ....  1845.384483: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF19 Mux
         arecord-5145  [002] ....  1845.384504: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF18 Mux
         arecord-5145  [002] ....  1845.384522: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF17 Mux
         arecord-5145  [002] ....  1845.384540: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF16 Mux
         arecord-5145  [002] ....  1845.384558: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF15 Mux
         arecord-5145  [002] ....  1845.384576: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF14 Mux
         arecord-5145  [002] ....  1845.384594: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF13 Mux
         arecord-5145  [002] ....  1845.384613: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF12 Mux
         arecord-5145  [002] ....  1845.384647: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF11 Mux
         arecord-5145  [002] ....  1845.384667: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX2 Mux
         arecord-5145  [002] ....  1845.384687: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADX1 Mux
         arecord-5145  [002] ....  1845.384705: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-4 Mux
         arecord-5145  [002] ....  1845.384723: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-3 Mux
         arecord-5145  [002] ....  1845.384740: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-2 Mux
         arecord-5145  [002] ....  1845.384761: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX2-1 Mux
         arecord-5145  [002] ....  1845.384775: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-4 Mux
         arecord-5145  [002] ....  1845.384793: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-3 Mux
         arecord-5145  [002] ....  1845.384810: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-2 Mux
         arecord-5145  [002] ....  1845.384828: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AMX1-1 Mux
         arecord-5145  [002] ....  1845.384847: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MVC2 Mux
         arecord-5145  [002] ....  1845.384865: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MVC1 Mux
         arecord-5145  [002] ....  1845.384879: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SPKPROT1 Mux
         arecord-5145  [002] ....  1845.384894: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> OPE1 Mux
         arecord-5145  [002] ....  1845.384909: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC6 Mux
         arecord-5145  [002] ....  1845.384924: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC5 Mux
         arecord-5145  [002] ....  1845.384939: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC4 Mux
         arecord-5145  [002] ....  1845.384954: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC3 Mux
         arecord-5145  [002] ....  1845.384967: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC2 Mux
         arecord-5145  [002] ....  1845.384981: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> AFC1 Mux
         arecord-5145  [002] ....  1845.385000: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-10 Mux
         arecord-5145  [002] ....  1845.385014: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-9 Mux
         arecord-5145  [002] ....  1845.385028: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-8 Mux
         arecord-5145  [002] ....  1845.385043: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-7 Mux
         arecord-5145  [002] ....  1845.385057: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-6 Mux
         arecord-5145  [002] ....  1845.385071: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-5 Mux
         arecord-5145  [002] ....  1845.385085: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-4 Mux
         arecord-5145  [002] ....  1845.385101: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-3 Mux
         arecord-5145  [002] ....  1845.385119: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-2 Mux
         arecord-5145  [002] ....  1845.385137: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> MIXER1-1 Mux
         arecord-5145  [002] ....  1845.385154: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC4 Mux
         arecord-5145  [002] .n..  1845.385757: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC3 Mux
         arecord-5145  [002] ....  1845.386100: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC2 Mux
         arecord-5145  [002] ....  1845.386109: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> SFC1 Mux
         arecord-5145  [002] ....  1845.386124: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S5 Mux
         arecord-5145  [002] ....  1845.386142: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S4 Mux
         arecord-5145  [002] ....  1845.386155: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S3 Mux
         arecord-5145  [002] ....  1845.386168: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S2 Mux
         arecord-5145  [002] ....  1845.386179: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> I2S1 Mux
         arecord-5145  [002] ....  1845.386377: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF10 Mux
         arecord-5145  [002] ....  1845.386389: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF9 Mux
         arecord-5145  [002] ....  1845.386403: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF8 Mux
         arecord-5145  [002] ....  1845.386415: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF7 Mux
         arecord-5145  [002] ....  1845.386430: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF6 Mux
         arecord-5145  [002] ....  1845.386441: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF5 Mux
         arecord-5145  [002] ....  1845.386453: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF4 Mux
         arecord-5145  [002] ....  1845.386464: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF3 Mux
         arecord-5145  [002] ....  1845.386472: snd_soc_dapm_path: *I2S2 RX -> I2S2 -> ADMAIF2 Mux
         arecord-5145  [002] ....  1845.386486: snd_soc_dapm_path:  I2S2 RX -> I2S2 -> ADMAIF1 Mux
         arecord-5145  [002] ....  1845.386503: snd_soc_dapm_path: *I2S2 Receive -> (direct) -> I2S2 RX
         arecord-5145  [002] ....  1845.386517: snd_soc_dapm_path: *I2S2 CIF Transmit-I2S2 Receive -> (direct) -> I2S2 Receive
         arecord-5145  [002] ....  1845.386531: snd_soc_dapm_path: *I2S2 CIF Transmit -> (direct) -> I2S2 CIF Transmit-I2S2 Receive
         arecord-5145  [002] ....  1845.386544: snd_soc_dapm_path: *I2S2 CIF TX -> (direct) -> I2S2 CIF Transmit
         arecord-5145  [002] ....  1845.386554: snd_soc_dapm_path: *I2S2 DAP RX -> (direct) -> I2S2 CIF TX
         arecord-5145  [002] ....  1845.386564: snd_soc_dapm_path: *I2S2 DAP Receive -> (direct) -> I2S2 DAP RX
         arecord-5145  [002] ....  1845.386578: snd_soc_dapm_path: *y Capture-I2S2 DAP Receive -> (direct) -> I2S2 DAP Receive
         arecord-5145  [002] ....  1845.386591: snd_soc_dapm_path: *y Capture -> (direct) -> y Capture-I2S2 DAP Receive
         arecord-5145  [002] ....  1845.386604: snd_soc_dapm_path: *y IN -> (direct) -> y Capture
         arecord-5145  [002] ....  1845.386616: snd_soc_dapm_path: *y Mic -> (direct) -> y IN
           aplay-5144  [001] ....  1850.213820: snd_soc_dapm_path: *ADMAIF1 Receive <- (direct) <- Playback 1
           aplay-5144  [001] ....  1850.213933: snd_soc_dapm_path: *ADMAIF1 Receive <- (direct) <- ADMAIF1 CIF Receive-ADMAIF1 Receive
           aplay-5144  [001] ....  1850.213953: snd_soc_dapm_path: *ADMAIF1 RX <- (direct) <- ADMAIF1 Receive
           aplay-5144  [001] ....  1850.214217: snd_soc_dapm_path:  I2S1 Mux <- ARAD1 <- ARAD1 RX
           aplay-5144  [001] ....  1850.214235: snd_soc_dapm_path:  I2S1 Mux <- ADX4-4 <- ADX4-4 RX
           aplay-5144  [001] ....  1850.214251: snd_soc_dapm_path:  I2S1 Mux <- ADX4-3 <- ADX4-3 RX
           aplay-5144  [001] ....  1850.214266: snd_soc_dapm_path:  I2S1 Mux <- ADX4-2 <- ADX4-2 RX
           aplay-5144  [001] ....  1850.214276: snd_soc_dapm_path:  I2S1 Mux <- ADX4-1 <- ADX4-1 RX
           aplay-5144  [001] ....  1850.214291: snd_soc_dapm_path:  I2S1 Mux <- AMX4 <- AMX4 RX
           aplay-5144  [001] ....  1850.214306: snd_soc_dapm_path:  I2S1 Mux <- ADX3-4 <- ADX3-4 RX
           aplay-5144  [001] ....  1850.214316: snd_soc_dapm_path:  I2S1 Mux <- ADX3-3 <- ADX3-3 RX
           aplay-5144  [001] ....  1850.214332: snd_soc_dapm_path:  I2S1 Mux <- ADX3-2 <- ADX3-2 RX
           aplay-5144  [001] ....  1850.214343: snd_soc_dapm_path:  I2S1 Mux <- ADX3-1 <- ADX3-1 RX
           aplay-5144  [001] ....  1850.214354: snd_soc_dapm_path:  I2S1 Mux <- AMX3 <- AMX3 RX
           aplay-5144  [001] ....  1850.214369: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-6 <- ASRC1-6 RX
           aplay-5144  [001] ....  1850.214379: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-5 <- ASRC1-5 RX
           aplay-5144  [001] ....  1850.214393: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-4 <- ASRC1-4 RX
           aplay-5144  [001] ....  1850.214407: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-3 <- ASRC1-3 RX
           aplay-5144  [001] ....  1850.214417: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-2 <- ASRC1-2 RX
           aplay-5144  [001] ....  1850.214431: snd_soc_dapm_path:  I2S1 Mux <- ASRC1-1 <- ASRC1-1 RX
           aplay-5144  [001] ....  1850.214446: snd_soc_dapm_path:  I2S1 Mux <- I2S6 <- I2S6 RX
           aplay-5144  [001] ....  1850.214456: snd_soc_dapm_path:  I2S1 Mux <- DMIC4 <- DMIC4 RX
           aplay-5144  [001] ....  1850.214471: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF20 <- ADMAIF20 RX
           aplay-5144  [001] ....  1850.214482: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF19 <- ADMAIF19 RX
           aplay-5144  [001] ....  1850.214496: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF18 <- ADMAIF18 RX
           aplay-5144  [001] ....  1850.214506: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF17 <- ADMAIF17 RX
           aplay-5144  [001] ....  1850.214519: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF16 <- ADMAIF16 RX
           aplay-5144  [001] ....  1850.214530: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF15 <- ADMAIF15 RX
           aplay-5144  [001] ....  1850.214546: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF14 <- ADMAIF14 RX
           aplay-5144  [001] ....  1850.214557: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF13 <- ADMAIF13 RX
           aplay-5144  [001] ....  1850.214568: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF12 <- ADMAIF12 RX
           aplay-5144  [001] ....  1850.214578: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF11 <- ADMAIF11 RX
           aplay-5144  [001] ....  1850.214589: snd_soc_dapm_path:  I2S1 Mux <- ADX2-4 <- ADX2-4 RX
           aplay-5144  [001] ....  1850.214599: snd_soc_dapm_path:  I2S1 Mux <- ADX2-3 <- ADX2-3 RX
           aplay-5144  [001] ....  1850.214627: snd_soc_dapm_path:  I2S1 Mux <- ADX2-2 <- ADX2-2 RX
           aplay-5144  [001] ....  1850.214639: snd_soc_dapm_path:  I2S1 Mux <- ADX2-1 <- ADX2-1 RX
           aplay-5144  [001] ....  1850.214651: snd_soc_dapm_path:  I2S1 Mux <- AMX2 <- AMX2 RX
           aplay-5144  [001] ....  1850.214666: snd_soc_dapm_path:  I2S1 Mux <- ADX1-4 <- ADX1-4 RX
           aplay-5144  [001] ....  1850.214676: snd_soc_dapm_path:  I2S1 Mux <- ADX1-3 <- ADX1-3 RX
           aplay-5144  [001] ....  1850.214686: snd_soc_dapm_path:  I2S1 Mux <- ADX1-2 <- ADX1-2 RX
           aplay-5144  [001] ....  1850.214697: snd_soc_dapm_path:  I2S1 Mux <- ADX1-1 <- ADX1-1 RX
           aplay-5144  [001] ....  1850.214711: snd_soc_dapm_path:  I2S1 Mux <- AMX1 <- AMX1 RX
           aplay-5144  [001] ....  1850.214721: snd_soc_dapm_path:  I2S1 Mux <- DMIC3 <- DMIC3 RX
           aplay-5144  [001] ....  1850.214735: snd_soc_dapm_path:  I2S1 Mux <- DMIC2 <- DMIC2 RX
           aplay-5144  [001] ....  1850.214745: snd_soc_dapm_path:  I2S1 Mux <- DMIC1 <- DMIC1 RX
           aplay-5144  [001] ....  1850.214755: snd_soc_dapm_path:  I2S1 Mux <- IQC2-2 <- IQC2-2 RX
           aplay-5144  [001] ....  1850.214761: snd_soc_dapm_path:  I2S1 Mux <- IQC2-1 <- IQC2-1 RX
           aplay-5144  [001] ....  1850.214772: snd_soc_dapm_path:  I2S1 Mux <- IQC1-2 <- IQC1-2 RX
           aplay-5144  [001] ....  1850.214783: snd_soc_dapm_path:  I2S1 Mux <- IQC1-1 <- IQC1-1 RX
           aplay-5144  [001] ....  1850.214801: snd_soc_dapm_path:  I2S1 Mux <- MVC2 <- MVC2 RX
           aplay-5144  [001] ....  1850.214817: snd_soc_dapm_path:  I2S1 Mux <- MVC1 <- MVC1 RX
           aplay-5144  [001] ....  1850.214831: snd_soc_dapm_path:  I2S1 Mux <- OPE1 <- OPE1 RX
           aplay-5144  [001] ....  1850.214848: snd_soc_dapm_path:  I2S1 Mux <- AFC6 <- AFC6 RX
           aplay-5144  [001] ....  1850.214862: snd_soc_dapm_path:  I2S1 Mux <- AFC5 <- AFC5 RX
           aplay-5144  [001] ....  1850.214872: snd_soc_dapm_path:  I2S1 Mux <- AFC4 <- AFC4 RX
           aplay-5144  [001] ....  1850.214882: snd_soc_dapm_path:  I2S1 Mux <- AFC3 <- AFC3 RX
           aplay-5144  [001] ....  1850.214893: snd_soc_dapm_path:  I2S1 Mux <- AFC2 <- AFC2 RX
           aplay-5144  [001] ....  1850.214904: snd_soc_dapm_path:  I2S1 Mux <- AFC1 <- AFC1 RX
           aplay-5144  [001] ....  1850.214918: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-5 <- MIXER1-5 RX
           aplay-5144  [001] ....  1850.214928: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-4 <- MIXER1-4 RX
           aplay-5144  [001] ....  1850.214942: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-3 <- MIXER1-3 RX
           aplay-5144  [001] ....  1850.214952: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-2 <- MIXER1-2 RX
           aplay-5144  [001] ....  1850.214966: snd_soc_dapm_path:  I2S1 Mux <- MIXER1-1 <- MIXER1-1 RX
           aplay-5144  [001] ....  1850.214981: snd_soc_dapm_path:  I2S1 Mux <- SFC4 <- SFC4 RX
           aplay-5144  [001] ....  1850.214992: snd_soc_dapm_path:  I2S1 Mux <- SFC3 <- SFC3 RX
           aplay-5144  [001] ....  1850.215006: snd_soc_dapm_path:  I2S1 Mux <- SFC2 <- SFC2 RX
           aplay-5144  [001] ....  1850.215020: snd_soc_dapm_path:  I2S1 Mux <- SFC1 <- SFC1 RX
           aplay-5144  [001] ....  1850.215036: snd_soc_dapm_path:  I2S1 Mux <- I2S5 <- I2S5 RX
           aplay-5144  [001] ....  1850.215047: snd_soc_dapm_path:  I2S1 Mux <- I2S4 <- I2S4 RX
           aplay-5144  [001] ....  1850.215062: snd_soc_dapm_path:  I2S1 Mux <- I2S3 <- I2S3 RX
           aplay-5144  [001] ....  1850.215072: snd_soc_dapm_path:  I2S1 Mux <- I2S2 <- I2S2 RX
           aplay-5144  [001] ....  1850.215285: snd_soc_dapm_path:  I2S1 Mux <- I2S1 <- I2S1 RX
           aplay-5144  [001] ....  1850.215295: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF10 <- ADMAIF10 RX
           aplay-5144  [001] ....  1850.215306: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF9 <- ADMAIF9 RX
           aplay-5144  [001] ....  1850.215316: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF8 <- ADMAIF8 RX
           aplay-5144  [001] ....  1850.215327: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF7 <- ADMAIF7 RX
           aplay-5144  [001] ....  1850.215339: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF6 <- ADMAIF6 RX
           aplay-5144  [001] ....  1850.215354: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF5 <- ADMAIF5 RX
           aplay-5144  [001] ....  1850.215364: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF4 <- ADMAIF4 RX
           aplay-5144  [001] ....  1850.215569: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF3 <- ADMAIF3 RX
           aplay-5144  [001] ....  1850.215579: snd_soc_dapm_path:  I2S1 Mux <- ADMAIF2 <- ADMAIF2 RX
           aplay-5144  [001] ....  1850.215591: snd_soc_dapm_path: *I2S1 Mux <- ADMAIF1 <- ADMAIF1 RX
           aplay-5144  [001] ....  1850.215611: snd_soc_dapm_path: *I2S1 TX <- (direct) <- I2S1 Mux
           aplay-5144  [001] ....  1850.215624: snd_soc_dapm_path: *I2S1 Transmit <- (direct) <- I2S1 TX
           aplay-5144  [001] ....  1850.215640: snd_soc_dapm_path: *I2S1 Transmit-I2S1 CIF Receive <- (direct) <- I2S1 Transmit
           aplay-5144  [001] ....  1850.215656: snd_soc_dapm_path: *I2S1 CIF Receive <- (direct) <- I2S1 Transmit-I2S1 CIF Receive
           aplay-5144  [001] ....  1850.215674: snd_soc_dapm_path: *I2S1 CIF RX <- (direct) <- I2S1 CIF Receive
           aplay-5144  [001] ....  1850.215692: snd_soc_dapm_path: *I2S1 DAP TX <- (direct) <- I2S1 CIF RX
           aplay-5144  [001] ....  1850.215709: snd_soc_dapm_path: *I2S1 DAP Transmit <- (direct) <- I2S1 DAP TX
           aplay-5144  [001] ....  1850.215725: snd_soc_dapm_path: *I2S1 DAP Transmit-x Playback <- (direct) <- I2S1 DAP Transmit
           aplay-5144  [001] ....  1850.215742: snd_soc_dapm_path: *x Playback <- (direct) <- I2S1 DAP Transmit-x Playback
           aplay-5144  [001] ....  1850.215758: snd_soc_dapm_path: *x OUT <- (direct) <- x Playback
           aplay-5144  [001] ....  1850.215777: snd_soc_dapm_path: *x Headphone <- (direct) <- x OUT

In your trace the only thing that looks incorrect is that you have I2S2 mux’ed to both ADMAIF2 and ADMAIF3 …

arecord-9812  [000] ....  5674.069817: snd_soc_dapm_path: *I2S2 RX -> I2S2 -> ADMAIF3 Mux
   arecord-9812  [000] ....  5674.069823: snd_soc_dapm_path: *I2S2 RX -> I2S2 -> ADMAIF2 Mux

Given that you are using ADMAIF2 you should clear the mux for ADMAIF3 …

$ amixer -c tegrasndt186ref sset "ADMAIF3 Mux" None

On my Jetson for loopback I simply …

$ amixer -c tegrasndt186ref sset "ADMAIF2 Mux" I2S2
$ amixer -c tegrasndt186ref sset "I2S1 Mux" ADMAIF1
$ speaker-test -D hw:tegrasndt186ref,0 -c 2 -F S16_LE -r 48000 -l 3 -t sine -f 500 & sleep 1 ; arecord -D hw:tegrasndt186ref,1 -c 2 -f S16_LE -r 48000 -d 10 cap.wav

With regard to pin configuration, I have the following …

$ sudo grep "dap1\|dap2" /sys/kernel/debug/tegra_pinctrl_reg
Bank: 0 Reg: 0x02431028 Val: 0x00000444 -> dap1_fs_pj3
Bank: 0 Reg: 0x02431030 Val: 0x00000454 -> dap1_din_pj2
Bank: 0 Reg: 0x02431038 Val: 0x00000404 -> dap1_dout_pj1
Bank: 0 Reg: 0x02431040 Val: 0x00000444 -> dap1_sclk_pj0
Bank: 0 Reg: 0x02434000 Val: 0x00000458 -> dap2_din_pc3
Bank: 0 Reg: 0x02434008 Val: 0x00000400 -> dap2_dout_pc2
Bank: 0 Reg: 0x02434010 Val: 0x00000440 -> dap2_fs_pc4
Bank: 0 Reg: 0x02434018 Val: 0x00000440 -> dap2_sclk_pc1

However, your pin setup looks fine too.

If you are seeing errors such as …

$ dmesg
[ 2381.837583] tegra210-i2s tegra210-i2s.1: Failed at I2S1_RX sw reset
[ 2381.843930] tegra210-i2s tegra210-i2s.1: ASoC: PRE_PMU: I2S2 DAP RX event failed: -22

This typically indicates that the I2S interface is not receiving the bit clock. So make sure you double checking your wiring.

Errors such as …

arecord: pcm_read:2103: read error: Input/output error

Indicate no data was received and so again no bit-clock or frame-sync.

Regards,
Jon

1 Like