ASoC: da7219: Add common clock usage for providing DAI clks
authorAdam Thomson <Adam.Thomson.Opensource@diasemi.com>
Fri, 9 Mar 2018 16:25:43 +0000 (16:25 +0000)
committerMark Brown <broonie@kernel.org>
Fri, 9 Mar 2018 17:40:41 +0000 (17:40 +0000)
commitfc8f7ea2d6c074baaad202c9187962bfa493ef13
tree44dea6701558da4ca58f5c89309451b9c5155506
parentc22969d70fc9253112e88da55116e04074cdeac4
ASoC: da7219: Add common clock usage for providing DAI clks

There is a need to use DA7219 as DAI clock master for other codecs
within a system, which means that the DAI clocks are required to
remain, regardless of whether the codec is actually running
playback/capture. To be able to expose control of the DAI clocking
the common clock framework has been employed.

The current implementation adds a simple clock gate for enabling
and disabling the DAI clocks, with no rate control supported
(this is still handled through standard hw_params() functions as
before). If DT is enabled then the clock is added to the OF
providers list, otherwise a clkdev lookup is used.

Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Documentation/devicetree/bindings/sound/da7219.txt
include/sound/da7219.h
sound/soc/codecs/da7219.c
sound/soc/codecs/da7219.h