Re: [PATCH] ASoC: fsl-asoc-card: Get "extal" clock rate by clk_get_rate

From: Mark Brown
Date: Thu Aug 06 2020 - 13:34:21 EST


On Thu, Aug 06, 2020 at 03:39:45PM +0800, Shengjiu Wang wrote:

> } else if (of_node_name_eq(cpu_np, "esai")) {
> + struct clk *esai_clk = clk_get(&cpu_pdev->dev, "extal");
> +
> + if (!IS_ERR(esai_clk)) {
> + priv->cpu_priv.sysclk_freq[TX] = clk_get_rate(esai_clk);
> + priv->cpu_priv.sysclk_freq[RX] = clk_get_rate(esai_clk);
> + clk_put(esai_clk);
> + }

This should handle probe deferral. Also if this clock is in use
shouldn't we be enabling it? It looks like it's intended to be a
crystal so it's probably forced on all the time but sometimes there's
power control for crystals, or perhaps someone might do something
unusual with the hardware.

Attachment: signature.asc
Description: PGP signature