Messages in this thread | | | Subject | Re: [PATCH v8 19/22] ASoC: tegra: Enable audio mclk during tegra_asoc_utils_init | From | Sameer Pujar <> | Date | Mon, 20 Jan 2020 09:40:24 +0530 |
| |
On 1/19/2020 8:44 PM, Dmitry Osipenko wrote: > External email: Use caution opening links or attachments > > > 14.01.2020 10:24, Sowjanya Komatineni пишет: >> Tegra PMC clock clk_out_1 is dedicated for audio mclk from Tegra30 >> through Tegra210 and currently Tegra clock driver keeps the audio >> mclk enabled. >> >> With the move of PMC clocks from clock driver into pmc driver, >> audio mclk enable from clock driver is removed and this should be >> taken care by the audio driver. >> >> tegra_asoc_utils_init calls tegra_asoc_utils_set_rate and audio mclk >> rate configuration is not needed during init and set_rate is actually >> done during hw_params callback. >> >> So, this patch removes tegra_asoc_utils_set_rate call and just leaves >> the audio mclk enabled. >> >> Signed-off-by: Sowjanya Komatineni <skomatineni@nvidia.com> >> --- >> sound/soc/tegra/tegra_asoc_utils.c | 11 +++++++++-- >> 1 file changed, 9 insertions(+), 2 deletions(-) >> >> diff --git a/sound/soc/tegra/tegra_asoc_utils.c b/sound/soc/tegra/tegra_asoc_utils.c >> index 1dce5ad6e665..99584970f5f4 100644 >> --- a/sound/soc/tegra/tegra_asoc_utils.c >> +++ b/sound/soc/tegra/tegra_asoc_utils.c >> @@ -216,9 +216,16 @@ int tegra_asoc_utils_init(struct tegra_asoc_utils_data *data, >> data->clk_cdev1 = clk_out_1; >> } >> >> - ret = tegra_asoc_utils_set_rate(data, 44100, 256 * 44100); >> - if (ret) >> + /* >> + * FIXME: There is some unknown dependency between audio mclk disable >> + * and suspend-resume functionality on Tegra30, although audio mclk is >> + * only needed for audio. >> + */ >> + ret = clk_prepare_enable(data->clk_cdev1); >> + if (ret) { >> + dev_err(data->dev, "Can't enable cdev1: %d\n", ret); >> return ret; >> + } >> >> return 0; >> } >> > Shouldn't the clock be disabled on driver's removal?
I am not sure if we really need to do in this series as it does not change the behavior from what was there earlier. Also there is already a FIXME item here and we end up adding clock disable in remove() path of multiple drivers, which is going to be removed once we address FIXME.
| |