This patchset adds support for runtime pm on tx/rx/wsa/wcd lpass macro, wsa881x and wcd938x codecs that are wired up on SoundWire bus. During pm testing it was also found that soundwire clks enabled by lpass macros are not enabling all the required clocks correctly, so last 3 patches corrects them. Tested this on SM8250 MTP along SoundWire In band Headset Button wakeup interrupts. Changes since v1: - move to handing clks individually from clk bluk apis - tidy up the clk provider side code by using devm variants - added error handling. Srinivas Kandagatla (16): ASoC: codecs: va-macro: move to individual clks from bulk ASoC: codecs: rx-macro: move clk provider to managed variants ASoC: codecs: tx-macro: move clk provider to managed variants ASoC: codecs: rx-macro: move to individual clks from bulk ASoC: codecs: tx-macro: move to individual clks from bulk ASoC: codecs: wsa-macro: move to individual clks from bulk ASoC: codecs: wsa-macro: setup soundwire clks correctly ASoC: codecs: tx-macro: setup soundwire clks correctly ASoC: codecs: rx-macro: setup soundwire clks correctly ASoC: codecs: va-macro: add runtime pm support ASoC: codecs: wsa-macro: add runtime pm support ASoC: codecs: rx-macro: add runtime pm support ASoC: codecs: tx-macro: add runtime pm support ASoC: codecs: wsa881x: add runtime pm support ASoC: codecs: wcd938x: add simple clk stop support ASoC: codecs: wcd-mbhc: add runtime pm support sound/soc/codecs/lpass-rx-macro.c | 168 +++++++++++++++++++++++----- sound/soc/codecs/lpass-tx-macro.c | 169 ++++++++++++++++++++++++----- sound/soc/codecs/lpass-va-macro.c | 106 ++++++++++++++---- sound/soc/codecs/lpass-wsa-macro.c | 157 +++++++++++++++++++++++---- sound/soc/codecs/wcd-mbhc-v2.c | 26 +++++ sound/soc/codecs/wcd938x-sdw.c | 1 + sound/soc/codecs/wsa881x.c | 54 +++++++++ 7 files changed, 580 insertions(+), 101 deletions(-) -- 2.21.0