[PATCH] ASoC: fsl_sai: Enable transmitter when generating MCLK
Shengjiu Wang
shengjiu.wang at gmail.com
Tue Nov 8 06:29:16 CET 2022
On Tue, Nov 8, 2022 at 5:52 AM Marek Vasut <marex at denx.de> wrote:
> For SAI to generate MCLK on external SoC pad, the transmitter must be
> enabled as well. With transmitter disabled, no clock are generated.
> Enable the transmitter using the TERE bit.
>
It is already done in trigger(), why need to do this operation in probe()
and set_bclk() again?
best regards
wang shengjiu
>
> Signed-off-by: Marek Vasut <marex at denx.de>
> ---
> Cc: Fabio Estevam <festevam at gmail.com>
> Cc: Jaroslav Kysela <perex at perex.cz>
> Cc: Liam Girdwood <lgirdwood at gmail.com>
> Cc: Mark Brown <broonie at kernel.org>
> Cc: Nicolin Chen <nicoleotsuka at gmail.com>
> Cc: Shengjiu Wang <shengjiu.wang at gmail.com>
> Cc: Takashi Iwai <tiwai at suse.com>
> Cc: Xiubo Li <Xiubo.Lee at gmail.com>
> To: alsa-devel at alsa-project.org
> ---
> sound/soc/fsl/fsl_sai.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/sound/soc/fsl/fsl_sai.c b/sound/soc/fsl/fsl_sai.c
> index 1c9be8a5dcb13..98c62027e5799 100644
> --- a/sound/soc/fsl/fsl_sai.c
> +++ b/sound/soc/fsl/fsl_sai.c
> @@ -503,6 +503,10 @@ static int fsl_sai_set_bclk(struct snd_soc_dai *dai,
> bool tx, u32 freq)
> /* SAI is in master mode at this point, so enable MCLK */
> regmap_update_bits(sai->regmap, FSL_SAI_MCTL,
> FSL_SAI_MCTL_MCLK_EN,
> FSL_SAI_MCTL_MCLK_EN);
> +
> + /* Transmitter must be enabled to generate MCLK on pad */
> + regmap_update_bits(sai->regmap, FSL_SAI_xCSR(1, ofs),
> + FSL_SAI_CSR_TERE, FSL_SAI_CSR_TERE);
> }
>
> return 0;
> @@ -1445,6 +1449,11 @@ static int fsl_sai_probe(struct platform_device
> *pdev)
> sai->soc_data->max_register >= FSL_SAI_MCTL) {
> regmap_update_bits(sai->regmap, FSL_SAI_MCTL,
> FSL_SAI_MCTL_MCLK_EN,
> FSL_SAI_MCTL_MCLK_EN);
> +
> + /* Transmitter must be enabled to generate MCLK on pad */
> + regmap_update_bits(sai->regmap,
> + FSL_SAI_xCSR(1,
> sai->soc_data->reg_offset),
> + FSL_SAI_CSR_TERE, FSL_SAI_CSR_TERE);
> }
>
> ret = pm_runtime_put_sync(dev);
> --
> 2.35.1
>
>
More information about the Alsa-devel
mailing list