diff options
author | Nicolin Chen <Guangyu.Chen@freescale.com> | 2014-04-30 18:54:08 +0800 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-05-05 12:27:39 -0700 |
commit | 527cda78eb601b0ad303dc4999811731eff5560e (patch) | |
tree | 7e9cf19dae788c441b77700f57eceaed8bc4f01c /sound/soc/fsl | |
parent | 27c647bff20c6883dd0b4e3fc24c3d414a9e192a (diff) | |
download | blackbird-obmc-linux-527cda78eb601b0ad303dc4999811731eff5560e.tar.gz blackbird-obmc-linux-527cda78eb601b0ad303dc4999811731eff5560e.zip |
ASoC: fsl_spdif: Print actual sample rate for debug
People would simply know what the driver gets the best for the current
sample rate playback.
Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'sound/soc/fsl')
-rw-r--r-- | sound/soc/fsl/fsl_spdif.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sound/soc/fsl/fsl_spdif.c b/sound/soc/fsl/fsl_spdif.c index 1a92d7fe1a86..53e24ab952d3 100644 --- a/sound/soc/fsl/fsl_spdif.c +++ b/sound/soc/fsl/fsl_spdif.c @@ -75,6 +75,7 @@ struct fsl_spdif_priv { struct platform_device *pdev; struct regmap *regmap; bool dpll_locked; + u16 txrate[SPDIF_TXRATE_MAX]; u8 txclk_df[SPDIF_TXRATE_MAX]; u8 sysclk_df[SPDIF_TXRATE_MAX]; u8 txclk_src[SPDIF_TXRATE_MAX]; @@ -418,7 +419,8 @@ clk_set_bypass: regmap_update_bits(regmap, REG_SPDIF_STC, STC_SYSCLK_DF_MASK, STC_SYSCLK_DF(sysclk_df)); - dev_dbg(&pdev->dev, "set sample rate to %d\n", sample_rate); + dev_dbg(&pdev->dev, "set sample rate to %dHz for %dHz playback\n", + spdif_priv->txrate[rate], sample_rate); return 0; } @@ -1049,6 +1051,7 @@ static u32 fsl_spdif_txclk_caldiv(struct fsl_spdif_priv *spdif_priv, savesub = 0; spdif_priv->txclk_df[index] = txclk_df; spdif_priv->sysclk_df[index] = sysclk_df; + spdif_priv->txrate[index] = arate; goto out; } else if (arate / rate[index] == 1) { /* A little bigger than expect */ @@ -1059,6 +1062,7 @@ static u32 fsl_spdif_txclk_caldiv(struct fsl_spdif_priv *spdif_priv, savesub = sub; spdif_priv->txclk_df[index] = txclk_df; spdif_priv->sysclk_df[index] = sysclk_df; + spdif_priv->txrate[index] = arate; } else if (rate[index] / arate == 1) { /* A little smaller than expect */ sub = (rate[index] - arate) * 100000; @@ -1068,6 +1072,7 @@ static u32 fsl_spdif_txclk_caldiv(struct fsl_spdif_priv *spdif_priv, savesub = sub; spdif_priv->txclk_df[index] = txclk_df; spdif_priv->sysclk_df[index] = sysclk_df; + spdif_priv->txrate[index] = arate; } } } @@ -1118,6 +1123,8 @@ static int fsl_spdif_probe_txclk(struct fsl_spdif_priv *spdif_priv, if (spdif_priv->txclk[index] == spdif_priv->sysclk) dev_dbg(&pdev->dev, "use sysclk df %d for %dHz sample rate\n", spdif_priv->sysclk_df[index], rate[index]); + dev_dbg(&pdev->dev, "the best rate for %dHz sample rate is %dHz\n", + rate[index], spdif_priv->txrate[index]); return 0; } |