I am working on a custom board based on sabre auto board. I am using linux-imx 3.10.17. I have to use ESAI for audio. I am writing a dummy driver which basically registers the soc card (which can then be used in ALSA utilities) and sets the hw params.
Now i have observed that other drivers use following functions in their code
snd_soc_dai_set_tdm_slot() and snd_soc_dai_set_sysclk(). If i am using normal mode(i2s)( not TDM) ,then do i require to use snd_soc_dai_set_tdm_slot() function in my driver?
What is the exact purpose of these functions? What exactly do they do?
I wish to use imx pll4 clock for ESAI. For that, what configuration is needed?
Also I want to set ESAI in master mode. What configuration is needed for that? Do I have to add anything in ESAI block in device tree?