mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-10 21:07:02 +09:00
ASoC: rockchip: i2s-tdm: fixed PCM DSP A/B config.
DSP_A: PCM delay 1 bit mode,L data MSB after FRM LRC DSP_B: PCM no delay mode,L data MSB during FRM LRC Signed-off-by: XiaoTan Luo <lxt@rock-chips.com> Change-Id: I204384e368d741f42bc7a9862e400abb3dcce143
This commit is contained in:
@@ -562,12 +562,12 @@ static int rockchip_i2s_tdm_set_fmt(struct snd_soc_dai *cpu_dai,
|
||||
case SND_SOC_DAIFMT_I2S:
|
||||
val = I2S_TXCR_IBM_NORMAL;
|
||||
break;
|
||||
case SND_SOC_DAIFMT_DSP_A: /* PCM no delay mode */
|
||||
val = I2S_TXCR_TFS_PCM;
|
||||
break;
|
||||
case SND_SOC_DAIFMT_DSP_B: /* PCM delay 1 mode */
|
||||
case SND_SOC_DAIFMT_DSP_A: /* PCM delay 1 mode */
|
||||
val = I2S_TXCR_TFS_PCM | I2S_TXCR_PBM_MODE(1);
|
||||
break;
|
||||
case SND_SOC_DAIFMT_DSP_B: /* PCM no delay mode */
|
||||
val = I2S_TXCR_TFS_PCM;
|
||||
break;
|
||||
default:
|
||||
ret = -EINVAL;
|
||||
goto err_pm_put;
|
||||
@@ -586,12 +586,12 @@ static int rockchip_i2s_tdm_set_fmt(struct snd_soc_dai *cpu_dai,
|
||||
case SND_SOC_DAIFMT_I2S:
|
||||
val = I2S_RXCR_IBM_NORMAL;
|
||||
break;
|
||||
case SND_SOC_DAIFMT_DSP_A: /* PCM no delay mode */
|
||||
val = I2S_RXCR_TFS_PCM;
|
||||
break;
|
||||
case SND_SOC_DAIFMT_DSP_B: /* PCM delay 1 mode */
|
||||
case SND_SOC_DAIFMT_DSP_A: /* PCM delay 1 mode */
|
||||
val = I2S_RXCR_TFS_PCM | I2S_RXCR_PBM_MODE(1);
|
||||
break;
|
||||
case SND_SOC_DAIFMT_DSP_B: /* PCM no delay mode */
|
||||
val = I2S_RXCR_TFS_PCM;
|
||||
break;
|
||||
default:
|
||||
ret = -EINVAL;
|
||||
goto err_pm_put;
|
||||
@@ -615,11 +615,11 @@ static int rockchip_i2s_tdm_set_fmt(struct snd_soc_dai *cpu_dai,
|
||||
break;
|
||||
case SND_SOC_DAIFMT_DSP_A:
|
||||
val = I2S_TXCR_TFS_TDM_PCM;
|
||||
tdm_val = TDM_SHIFT_CTRL(0);
|
||||
tdm_val = TDM_SHIFT_CTRL(2);
|
||||
break;
|
||||
case SND_SOC_DAIFMT_DSP_B:
|
||||
val = I2S_TXCR_TFS_TDM_PCM;
|
||||
tdm_val = TDM_SHIFT_CTRL(2);
|
||||
tdm_val = TDM_SHIFT_CTRL(4);
|
||||
break;
|
||||
default:
|
||||
ret = -EINVAL;
|
||||
|
||||
Reference in New Issue
Block a user