On Tue, Feb 07, 2012 at 06:55:49PM +0530, Ashish Chavan wrote:
On Wed, 2012-02-01 at 11:50 +0000, Mark Brown wrote:
On Wed, Feb 01, 2012 at 04:55:29PM +0530, Ashish Chavan wrote:
You need checks elsewhere to make sure that the user doesn't try to reconfigure master/slave while the PLL is active.
AFAIK master/slave configuration is static(depending on the board configuration) and done via set_fmt() from hw_params() of platform driver. Can you please point me to an example where dynamic/runtime setting of I2S master/slave mode is supported?
The most common case is things like bluetooth SCO connections where if there's a baseband you want to clock from the baseband but if there's no baseband (eg, for VoIP calls) you can't do that. Some devices also need to change audio interface configuration depening on things like the number of channels.
Even without any dynamic reconfiguration you also have cases where the sequence people use to power things up is to set the clocking and then configure the audio interface format - even if the audio interface format is always the same you'll still get it being reconfigured the first time you start up.