主题中讨论的其他器件:TLV320AIC3254
工具/软件:Linux
大家好、
我尝试使用具有 BeagleBone Black 的 TLV320AIC3254音频编解码器。 我在设置 BCLK 频率时会遇到一些问题。 下面是 HW_params:
静态 int tlv320aic32x4_hw_params (struct snd_pcm_substream *子流、
struct snd_pcm_hw_params *参数)
{
struct snd_soc_PCM_runtime* RTD =子流->专用数据;
struct snd_soc_dai * codec_dai = rtd->codec_dai;
struct snd_soc_dai * cpu_dai = rtd->cpu_dai;
struct snd_soc_card * soc_card = rtd->卡;
int ret = 0;
struct platform_device *pdev = TO_platform_device (SoC_card->dev);
unsigned int BCLK_freq = EVM_GET_BCLK (params);
无符号 SYSCLK =(struct snd_soc_card_drvdata_Davinci *)
SND_SoC_CARD_GET_drvdata (SoC_CARD)->SYSCLK;
printk ("TLV320AIC32X4 HW 参数\n"\});
printk ("SYSCLK=%d\n"、SYSCLK);
printk ("BCLK_freq=%d\n"、BCLK_freq);
printk ("clkdiv=%d\n"、SYSCLK/BCLK_freq);
/*设置 CPU 系统时钟*/
RET = snd_soc_da_set_SYSCLK (cpu_dai、0、SYSCLK、snd_SOC_clock_out);
如果(RET < 0)
回程;
/*设置编解码器系统时钟*/
RET = snd_soc_da_set_SYSCLK (codec_dai、0、SYSCLK、snd_SOC_clock_out);
如果(RET < 0)
回程;
回程;
}
对于16位立体声、默认设置为1、1112 MHz。 我要为32位立体声设置该值、它是2、8224 MHz。 我不知道怎么做?
非常感谢、
Hiep Nguyen