On Fri, Jan 07, 2011 at 12:48:29PM -0800, Stephen Warren wrote:
Does this sound sane to you? It will mean turning the clocks on/off a lot, which goes against something you'd mentioned above not glitching the clocks every time. However, the following explains why:
It'll only glitch the clocks if you allow them to be be reconfigured while audio is active but since this would presumably cause the active streams to be reconfigured which would disrupt them.
Hence, I believe the machine driver needs to control both of those (although using utility code to avoid cut/paste of all the clock calls into each machine driver).
That's fine.
I can see 3 ways to co-ordinate this:
- Have all clocks off, except between two well-defined API calls (e.g. trigger START/STOP) such that the machine driver has a well-defined time the clock can be reconfigured without explicit calls to co-ordinate with the I2S driver.
It'd seem best from a power point of view to disable the clocks wherever possible anyway so this seems like a good option.