高通平台测试功能发现FM无声,硬件确认连接没有问题。原因是usecase和pcmid 对应关系错误。
【vendor/qcom/opensource/audio-hal/primary-hal/configs/lito/audio_platform_info_qrd.xml】
- <usecase name="USECASE_AUDIO_PLAYBACK_FM" type="in" id="38"/>
+ <usecase name="USECASE_AUDIO_PLAYBACK_FM" type="in" id="37"/>
原因:
1、fm用的是SLIMBUS_8 LOOPBACK 【mixer_path_wcd937x_aw.xml】
<!-- fm --> <ctl name="SLIMBUS_8 LOOPBACK Volume" value="0" />
2、PCM_ID 能看到 SLIMBUS_8对应着37
dugl:/ # cat /proc/asound/pcm
00-00: MultiMedia1 (*) : : playback 1 : capture 1
00-01: MultiMedia2 (*) : : playback 1 : capture 1
00-02: VoiceMMode1 (*) : : playback 1 : capture 1
00-37: SLIMBUS_8 Hostless (*) : : playback 1 : capture 1
00-38: TX CDC DMA5 Capture tx_macro_tx3-38 : : capture 1
00-39: Primary MI2S_TX Hostless (*) : : capture 1
00-40: Primary MI2S_RX Hostless (*) : : playback 1