TLV320aic32x4 audio codec is not detecting for tx2i

Hello!

OK, great. I don’t see anything to suggest that the codec is not detected. Furthermore, I see that you do see it listed under …

$ sudo cat /sys/kernel/debug/asoc/codecs

This means that the codec has been probed successfully by the kernel and in other words it is detected.

In your DT you have …

    nvidia,xbar = <&tegra_axbar>;
	rt565x_dai_link: nvidia,dai-link-1 {
                        link-name = "ti-capture";
                        cpu-dai = <&tegra_i2s1>;
                        codec-dai = <&aic32x4>;
                        cpu-dai-name = "I2S1";
                        codec-dai-name = "tlv320aic32x4-hifi";
                        format = "i2s";
                        bitclock-slave;
                        frame-slave;
                        bitclock-noninversion;
                        frame-noninversion;
                        bit-format = "s16_le";
                        bclk_ratio = <0>;
                        srate = <48000>;
                        num-channel = <2>;
                        ignore_suspend;
                        name-prefix = "z";
                        status = "okay";
                };
		nvidia,dai-link-2 {
    			link-name = "aic32x4-codec";
    			cpu-dai = <&tegra_i2s1>;
    			codec-dai = <&aic32x4>;
    			cpu-dai-name = "I2S1";
    			codec-dai-name = "aic32x4";
    			format = "i2s";
    			bitclock-master;
    			frame-master;
			format = "dsp_a";
			fsync-width = <0>;
    			bit-format = "s16_le";
   			name-prefix = "x";
                	status = "okay";
		};

You should only have 1 link for the codec and not 2. So you should remove one of these.

Next you need to ensure you have the ‘nvidia,audio-routing’ DT node set up as Igal has in this post for the codec.

Did you modify the codec driver as Igal has?

Have you tried using his play.sh and record.sh scripts?

Regards,
Jon