I am using imx8mq and 4.9.51 Linux distribution. I have connected processor's SAI1 to analog devices'ADAU1361 codec.(I2S interface).
My codec is working with external oscillator(12.288Mhz)MCLK.The codec's playback is perfectly work with 48khz sampling rate's audio.But i want to play any sampling rate's audio.
So, my query is what are the changes need to support any sampling rate in machine layer code?
Let me know if you need further information.
To support multiple sample rates you can make use of the integrated PLL from ADAU1361.
You can find in the datasheet, section "CLOCKING AND SAMPLING RATES" explained how to configure the PLL to support 44.1Khz and 48Khz from a single MCLK source.
The upstream ADAU1361 Linux driver has support for PLL configuration.