On Thu, Jul 6, 2023 at 7:08 PM Fabio Estevam festevam@gmail.com wrote:
Hi Andreas,
On Thu, Jul 6, 2023 at 5:47 AM Andreas Henriksson andreas@fatal.se wrote:
We've been working on an i.MX8MP where MCLK needs to be input and found that this enables the MCLK as output despite not having set the `fsl,sai-mclk-direction-output;` devicetree property in our DT. Reverting the patch fixes the issues for us.
I have to say that the code comment made me a bit confused, but once I found the commit message I understood why this code existed. If this is really i.MX8MM specific maybe mention that in the code comment and please make the code actually only trigger on i.MX8MM. It seems to me like these all fulfill the current criteria: imx7ulp, imx8mq, imx8mm, imx8mp, imx8ulp, imx93
Should I report this in bugzilla.kernel.org ?
Should we do a fix like this?
--- a/sound/soc/fsl/fsl_sai.c +++ b/sound/soc/fsl/fsl_sai.c @@ -1453,7 +1453,7 @@ static int fsl_sai_probe(struct platform_device *pdev)
/* Select MCLK direction */ if (sai->mclk_direction_output &&
sai->soc_data->max_register >= FSL_SAI_MCTL) {
sai->soc_data->max_register >= FSL_SAI_MCTL &&
sai->mclk_direction_output) { regmap_update_bits(sai->regmap, FSL_SAI_MCTL, FSL_SAI_MCTL_MCLK_EN, FSL_SAI_MCTL_MCLK_EN); }
No, this is the code in probe(). The code with the issue is in fsl_sai_set_bclk().
The clean way for fixing is to remove the code in fsl_sai_set_bclk() and add "fsl,sai-mclk-direction-output;" property in dts for some node.
best regards wang shengjiu