Re: [PATCH] ASoC: codec: rt5640: Resolve failure to set DMIC clock after playback

From: Mark Brown
Date: Sat Jan 14 2023 - 12:25:51 EST


On Sat, Jan 14, 2023 at 12:30:54AM +0000, Jarrah Gosbell wrote:

> rt5640_set_dai_sysclk is called with freq == 0 when playback stops. This
> causes DMIC setup code to fail. I2S interface doesn't need to be active
> for codec to work, so don't clear rt5640->sysclk after
> rt5640_set_dai_sysclk is called with freq == 0.

The goal with set_sysclk() is to record the current clock
frequency, if the clock is stopped it should be set to zero. If
a machine driver is setting the input clock to zero when it's
still being provided then it should be fixed. If the device
doesn't need a clock for DMIC (which seems dubious) then whatever
is checking for a clock should be fixed.

Attachment: signature.asc
Description: PGP signature