Add an optional DT clock "cpu_sysclk" to get the CPU DAI system-clock frequency when using the generic codec. It is set for both Tx and Rx. The way the frequency value is used is up to the CPU DAI driver implementation.
Signed-off-by: Elinor Montmasson elinor.montmasson@savoirfairelinux.com --- sound/soc/fsl/fsl-asoc-card.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/sound/soc/fsl/fsl-asoc-card.c b/sound/soc/fsl/fsl-asoc-card.c index 9aca8ad15372..c7fc9c16f761 100644 --- a/sound/soc/fsl/fsl-asoc-card.c +++ b/sound/soc/fsl/fsl-asoc-card.c @@ -754,6 +754,12 @@ static int fsl_asoc_card_probe(struct platform_device *pdev) snd_soc_of_parse_tdm_slot(np, NULL, NULL, &priv->cpu_priv.slot_num, &priv->cpu_priv.slot_width); + struct clk *cpu_sysclk = clk_get(&pdev->dev, "cpu_sysclk"); + if (!IS_ERR(cpu_sysclk)) { + priv->cpu_priv.sysclk_freq[TX] = clk_get_rate(cpu_sysclk); + priv->cpu_priv.sysclk_freq[RX] = priv->cpu_priv.sysclk_freq[TX]; + clk_put(cpu_sysclk); + } } else { dev_err(&pdev->dev, "unknown Device Tree compatible\n"); ret = -EINVAL;