Testing I2S2 (40-pin header)

We are porting a pair of I2S mics from the TX2 to the Xavier development board and I am having trouble getting I2S2_CLK (pin 12) to start up.

On the TX2 we used I2S4 on the camera connector and had to do the following:

amixer -c 1 cset name="I2S4 Mux" "ADMAIF1"
amixer -c 1 cset name="ADMAIF1 Mux" "I2S4"

gst-launch-1.0 -vvv alsasrc device=hw:1,0 \
    ! 'audio/x-raw,format=S32LE,rate=48000,channels=2' \

I tried doing something similar on the Xavier, but with I2S2 instead of I2S4, but no luck. Could someone list the steps for sampling from a simple I2S device on the 40-pin header?



By default the pins for the I2S2 interface on the 40-pin header default to GPIO mode and need to be reconfigured as I2S2. If you have L4T r32.3 or later you can do this using the jetson-io tool [0] …

$ sudo /opt/nvidia/jetson-io/config-by-function.py -o dtb i2s2
$ sudo reboot


[0] https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide%2Fhw_setup_jetson_io.html%23