mbox series

[0/2] ASoC: da7219: BCLK and TDM flexibility improvements

Message ID cover.1550079836.git.Adam.Thomson.Opensource@diasemi.com (mailing list archive)
Headers show
Series ASoC: da7219: BCLK and TDM flexibility improvements | expand

Message

Adam Thomson Feb. 13, 2019, 5:47 p.m. UTC
This patch set updates the driver to be more flexible regarding the BCLK and
TDM configurations of the device.

Previously the BCLK rate was fixed at 64 periods per WCLK, when the codec is
DAI clock master, but to satisfy devices which prefer a lower rate, and to save
power, the BCLK rate is now calculated based on hw_params() data.

As a fallout of the BCLK efforts it was also apparent that the TDM code could be
made more flexible as well. The device is capable of automatically detecting
the BCLK rate when it is clock slave, so previous limitations imposed were
not necessary. The mask handling is now used as an input to determine the BCLK
offset to align closer with other examples within ALSA.

Adam Thomson (2):
  ASoC: da7219: Add support for master mode BCLK rate adjustment
  ASoC: da7219: Update TDM usage to be more flexible

 sound/soc/codecs/da7219.c | 116 +++++++++++++++++++++++++++++-----------------
 sound/soc/codecs/da7219.h |   1 +
 2 files changed, 74 insertions(+), 43 deletions(-)

Comments

Adam Thomson Feb. 14, 2019, 9:33 a.m. UTC | #1
On 13 February 2019 17:48, Adam Thomson wrote:

 This patch set updates the driver to be more flexible regarding the BCLK and TDM
> configurations of the device.
> 
> Previously the BCLK rate was fixed at 64 periods per WCLK, when the codec is DAI
> clock master, but to satisfy devices which prefer a lower rate, and to save power,
> the BCLK rate is now calculated based on hw_params() data.
> 
> As a fallout of the BCLK efforts it was also apparent that the TDM code could be
> made more flexible as well. The device is capable of automatically detecting the
> BCLK rate when it is clock slave, so previous limitations imposed were not
> necessary. The mask handling is now used as an input to determine the BCLK
> offset to align closer with other examples within ALSA.

Spotted a silly '&' instead of '&&' error in the 1st patch. Functionally will work
but technically should be updated. Will send V2 soon.

> 
> Adam Thomson (2):
>   ASoC: da7219: Add support for master mode BCLK rate adjustment
>   ASoC: da7219: Update TDM usage to be more flexible
> 
>  sound/soc/codecs/da7219.c | 116 +++++++++++++++++++++++++++++----------
> -------
>  sound/soc/codecs/da7219.h |   1 +
>  2 files changed, 74 insertions(+), 43 deletions(-)
> 
> --
> 1.9.1