@ChrisB_NV Can you please specify what you mean with ‘not supported’ here? We have been able to setup and use I2S7 so I’m a bit puzzled by this answer if it is that Nvidia doesn’t give any help or support using this interface or not recommend using it for some reason or something else?
I manually specified my pins for I2S7 like this in the pinmux dts:
soc_gpio170_pu0 {
nvidia,pins = "dap7_in_pu0";
nvidia,function = "i2s7_sdata_in";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,drv-type = <TEGRA_PIN_1X_DRIVER>;
nvidia,e-io-od = <TEGRA_PIN_DISABLE>;
nvidia,e-lpbk = <TEGRA_PIN_DISABLE>;
};
soc_gpio176_pu6 {
nvidia,pins = "dap7_sclk_pu6";
nvidia,function = "i2s7_sclk";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,drv-type = <TEGRA_PIN_1X_DRIVER>;
nvidia,e-io-od = <TEGRA_PIN_DISABLE>;
nvidia,e-lpbk = <TEGRA_PIN_DISABLE>;
};
soc_gpio178_pv0 {
nvidia,pins = "dap7_out_pv0";
nvidia,function = "i2s7_sdata_out";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,drv-type = <TEGRA_PIN_1X_DRIVER>;
nvidia,e-io-od = <TEGRA_PIN_DISABLE>;
nvidia,e-lpbk = <TEGRA_PIN_DISABLE>;
};
pwm10_pv1 {
nvidia,pins = "dap7_fs_pv1";
nvidia,function = "i2s7_lrck";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,drv-type = <TEGRA_PIN_1X_DRIVER>;
nvidia,e-io-od = <TEGRA_PIN_DISABLE>;
nvidia,e-lpbk = <TEGRA_PIN_DISABLE>;
};
With this settings, derived/guessed from other i2s interfaces, together with Linux device-tree and codec setup we are able to get sound out of I2S7.