工具/软件:Linux
您好,
我们正在将TLV320ADC3101用于我们的项目,并移植到内核版本3.10。96。 所有寄存器配置都在驱动程序部分完成,系统启动后,我们将使用amixer配置路径。 在我们的测试过程中,我们发现了一个问题,即麦克风无法录制。在下一个电源循环中,它也可以正常工作。 所以,我们看到的频率是2/100。
下面是我们的寄存器配置,
工作设置
不工作的设置:
以下是在应用程序部件上完成的配置,
amixer -c 0 sset "ADMAIF1 MUX" I2S3"
amixer -c 0 sset "I2S3 Mux""ADMAIF1"
下面是ADC的流式小部件,
Snd_SOC_DAPM_ADC_E ("左ADC ","左捕获",AIC3255_ADC_CHN_REG,
7,0,adc_event,snd_so_dapm_post_PMU | snd_so_dapm_post_pmd),<-- adc_event是启用ADC和取消静音的回调处理程序。 (这不称为)。
以下是我们用于录制的命令,
arecord -v -D hw:0,0 -d 1 -c 2 -f S16_le -r 8000 mic_testing.wav
正如我们所看到的,工作的设置寄存器和问题设置寄存器似乎是相同的,但只有下面的寄存器似乎是不同的。
未应用增益(第0页:寄存器36,第1页:寄存器63)-->值- 0。
已应用左AGC增益-寄存器93。 -->值-0
应用的右AGC增益-寄存器101-->值- 0
我们想知道,这一问题的原因可能是什么?