On Mon, Oct 07, 2013 at 06:44:48PM +0100, Mark Brown wrote:
What are the problems you're seeing here? This used to be a big problem for modern CODECs with big sets of widgets and routes but the optimisations I did a while back (which made it into v3.4 so I think everyone is using them now) and the work that Tsutsui-san did in v3.10 on improving the graph reset got it reasonably under control for the systems that I was aware of having trouble.
I did think of one area that might be usefully improved here - we currently don't do async I/O for any of the DAPM generated writes. It's not going to be anything too massive but for faster buses like SPI or Slimbus it should deliver something.
This would require an annoying amount of plumbing in regmap to pass flags around but might be worth it for faster buses. The core I/O code is fine with it but the abstraction to allow buses to hook in at the register read/write level makes this more annoying a refactoring than I'd like while we've got all the ASoC conversions to regmap in progress.