大部分高通平台提供四组MI2S(MI2S和I2S,个人理解为M可以多通路,如双MIC信号在codec内mix后输入)。其中分为两组引脚,每组引脚对应内部选择器,分为两组MI2S引脚。
而PCM和I2S使用引脚相同,但是很多配置不同,后面说到DAPM会提到dai_link和FE,BE的区别。
第一组I2S为pri_mi2s,这组一般在内部接高通的codec。
第二组I2S为sec_mi2s,这组只有RX引脚平台没有引出,也就是说,只能作为RX,半双工。
第三组I2S为thr_mi2s,这组高通默认是设置为MIC的输入I2S,且只有RX功能。
第四组I2S为quat_mi2s,全双工,可外接I2S信号(有的项目需要将外部的高清I2S信号从手机speaker播放)。
对应的PCM两组引脚AUX_PCM和SEC_AUX_PCM.
一般用SEC_AUX_PCM用作外接第三方codec,注意第三codec高通CE不会提供帮助,只能获取patch,但是需要修改。
MI2S的相关配置高通有文档介绍,需要注意的是,配置引脚的时候尽量赋绝对值,不要使用与和或操作,高通文档已知缺陷。
调试I2S输入的时候,请先从主模式播放,然后转从模式。
转载请附带原地址,便于有疑问的交流!thanks