Re: [PATCH v2 6/8] ASoC: cs42l42: Add Soundwire support

From: Richard Fitzgerald
Date: Fri Jan 20 2023 - 07:32:10 EST


On 19/1/23 16:27, Pierre-Louis Bossart wrote:

You lost me here. Are you saying the soundwire bus clock is only known
in the prepare stage?


hw_params() doesn't know the Soundwire bus clock so it can't do the
check. We need to wait until we have both the sample rate and the
chosen SWIRE_CLK.

Yes, makes sense. I forgot that all the stream management and bandwidth
allocation takes place in the prepare stage at the dailink level, and
the dai prepare happens after that. Thanks for the clarification.

Also, this isn't validating the params passed by the application.
The application cannot pass us "bad" params that would cause pll_config
to fail.

The only way the pll_config could fail is if the SoundWire core code
chose a SWIRE_CLK that CS42L42 cannot support. This should never happen
and if it does it means there's an error in the ACPI or the machine
driver.