diff options
author | Shengjiu Wang <shengjiu.wang@nxp.com> | 2018-06-11 15:54:03 +0800 |
---|---|---|
committer | Dong Aisheng <aisheng.dong@nxp.com> | 2019-11-25 15:54:18 +0800 |
commit | 590ec64bb50a71c77b60b157d65b64846b56bb79 (patch) | |
tree | e4bdda7d1d5eda86cbcb7fc05a9c264130939525 /sound/soc/fsl/fsl_spdif.c | |
parent | 70e9a07d29d63c64fb365a5bb632621842f8e8d4 (diff) |
MLK-18574: ASoC: fsl_spdif: support 192kHz for rx in imx8
The ipg clock is higher enough to support 192kHz in imx8
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Viorel Suman <viorel.suman@nxp.com>
Diffstat (limited to 'sound/soc/fsl/fsl_spdif.c')
-rw-r--r-- | sound/soc/fsl/fsl_spdif.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/soc/fsl/fsl_spdif.c b/sound/soc/fsl/fsl_spdif.c index bf3e8e6de1a2..668b9bad02ff 100644 --- a/sound/soc/fsl/fsl_spdif.c +++ b/sound/soc/fsl/fsl_spdif.c @@ -50,6 +50,7 @@ struct fsl_spdif_soc_data { u32 rx_burst; u32 interrupts; u64 tx_formats; + u64 rx_rates; }; /* @@ -127,6 +128,7 @@ static struct fsl_spdif_soc_data fsl_spdif_vf610 = { .rx_burst = FSL_SPDIF_RXFIFO_WML, .interrupts = 1, .tx_formats = FSL_SPDIF_FORMATS_PLAYBACK, + .rx_rates = FSL_SPDIF_RATES_CAPTURE, .constrain_period_size = false, }; @@ -136,6 +138,7 @@ static struct fsl_spdif_soc_data fsl_spdif_imx35 = { .rx_burst = FSL_SPDIF_RXFIFO_WML, .interrupts = 1, .tx_formats = FSL_SPDIF_FORMATS_PLAYBACK, + .rx_rates = FSL_SPDIF_RATES_CAPTURE, .constrain_period_size = false, }; @@ -145,6 +148,7 @@ static struct fsl_spdif_soc_data fsl_spdif_imx8qm = { .rx_burst = 2, .interrupts = 2, .tx_formats = SNDRV_PCM_FMTBIT_S24_LE, + .rx_rates = (FSL_SPDIF_RATES_CAPTURE | SNDRV_PCM_RATE_192000), .constrain_period_size = true, }; @@ -1295,6 +1299,8 @@ static int fsl_spdif_probe(struct platform_device *pdev) spdif_priv->cpu_dai_drv.name = dev_name(&pdev->dev); spdif_priv->cpu_dai_drv.playback.formats = spdif_priv->soc->tx_formats; + spdif_priv->cpu_dai_drv.capture.rates = + spdif_priv->soc->rx_rates; /* Get the addresses and IRQ */ res = platform_get_resource(pdev, IORESOURCE_MEM, 0); |