On Tue, 27 Aug 2019 at 09:01, Maxime Ripard mripard@kernel.org wrote:
On Mon, Aug 26, 2019 at 08:07:34PM +0200, codekipper@gmail.com wrote:
From: Marcus Cooper codekipper@gmail.com
Some codecs such as i2s based HDMI audio and the Pine64 DAC require a different amount of bit clocks per frame than what is calculated by the sample width. Use the values obtained by the tdm slot bindings to adjust the LRCLK width accordingly.
Signed-off-by: Marcus Cooper codekipper@gmail.com
sound/soc/sunxi/sun4i-i2s.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/sound/soc/sunxi/sun4i-i2s.c b/sound/soc/sunxi/sun4i-i2s.c index 056a299c03fb..0965a97c96e5 100644 --- a/sound/soc/sunxi/sun4i-i2s.c +++ b/sound/soc/sunxi/sun4i-i2s.c @@ -455,7 +455,10 @@ static int sun8i_i2s_set_chan_cfg(const struct sun4i_i2s *i2s, break;
case SND_SOC_DAIFMT_I2S:
lrck_period = params_physical_width(params);
if (i2s->slot_width)
lrck_period = i2s->slot_width;
else
lrck_period = params_physical_width(params); break;
That would be the case with the DSP formats too, right?
Maybe....but I need a TDM test volunteer!, CK
Maxime
-- Maxime Ripard, Bootlin Embedded Linux and Kernel engineering https://bootlin.com