Gernerate frame sync signal on I2S without playing an an audio stream


When I play an audio file, I can see the I2S bus frame sync line has a 48KHz signal. I wonder how to configure the audio module to generate frame sync on a I2S bus without actually playing audio?

The reason for the question is that the I2S is connected to an external device, which uses the frame sync to keep it “wake up”.



Hi Jin,

I don’t know of a simple way to do this without having to customise the Tegra I2S kernel driver. However, essentially to keep the frame-sync toggling you need to keep the I2S clock enabled (which is enabled by calling tegra210_i2s_runtime_resume()) and ensure the bit TEGRA210_I2S_AXBAR_RX_EN_SHIFT or TEGRA210_I2S_AXBAR_TX_EN_SHIFT is set in the corresponding TEGRA210_I2S_AXBAR_RX_ENABLE/TEGRA210_I2S_AXBAR_TX_ENABLE register.

You could try adding a new custom mixer kcontrol to the tegra210_i2s_controls in the Tegra I2S driver so that you could do this from userspace.

Hope this helps.