ASoC: da7210: Add support for PLL and SRM
authorAshish Chavan <ashish.chavan@kpitcummins.com>
Tue, 17 Apr 2012 12:34:06 +0000 (18:04 +0530)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Tue, 17 Apr 2012 13:43:48 +0000 (14:43 +0100)
commit570aa7bae5e72900d62915fc56783689d95c3fb3
tree70903b1314877c7b38e1f45cfd62327bcae5da11
parent26e6781155482f17847a408e72721f63c7c71cc6
ASoC: da7210: Add support for PLL and SRM

Current DA7210 driver does support PLL mode fully. It uses fixed
value of input master clock and PLL mode is enabled and disabled based
on the sampling frequency being used for playback or recording. It also
doesn't support Sample Rate Measurement feature of DA7210 hardware.

This patch adds full support for PLL and SRM. Basically following three
modes of operation are possible for DA7210 hardware,

(1) I2S SLAVE mode with PLL bypassed
(2) I2S SLAVE mode with PLL enabled
(3) I2S Master mode with PLL enabled

This patch adds support for all three modes. Also, in case of SLAVE mode
with PLL, it supports SRM (Sample Rate Measurement) feature of the chip.

Actually this patch was submitted earlier and received some review
comments, but after that the driver got update by other patches. Because
of that, I am considering this as new patch and not versioning it based
of previous patches. This version tries to take care of all review
comments received for earlier submissions.

Signed-off-by: Ashish Chavan <ashish.chavan@kpitcummins.com>
Signed-off-by: David Dajun Chen <dchen@diasemi.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/da7210.c