中国移动,我不 发表于 2021-7-23 17:12:20

rk3308b关于音频rockchip,adc-grps-route属性的问题

我用的rk3308b-cc的开发板,选择的声卡dts如下:
      vad_acodec_sound: vad-acodec-sound {
                status = "okay";
                compatible = "rockchip,multicodecs-card";
                rockchip,card-name = "rockchip,rk3308b-acodec";
                rockchip,codec-hp-det;
                rockchip,mclk-fs = <256>;
                rockchip,cpu = <&i2s_8ch_2>;
                rockchip,codec = <&acodec>, <&vad>;
      };
我的实验现象是
&acodec {
    rockchip,micbias1;
    rockchip,micbias2;
    rockchip,en-always-grps = <0 1 2 3>;
        rockchip,adc-grps-route = <3 1 0 2>;
        /*rockchip,adc-grps-route = <1 3 0 2>;*/
        /*rockchip,adc-grps-route = <1 0 3 2>;*/ /*micp3*/
        /*rockchip,adc-grps-route = <3 0 1 2>; micp8*/
    /delete-property/rockchip,loopback-grp;
};
中的rockchip,adc-grps-route属性的3在最前面那么我的mic7,mic8就有声音但是mic4没声音,1在前面mic4就有声音,mic7和mic8没有声音,然后我看到论坛的其他的帖子说这个和rockchip,det-channel属性有关系,若是我想用这个声卡采集4个mic的声音的话是不是不行,因为这个声卡只能采集2个mic的?若是要采集4mic的话,是不是要用下面的声卡:
        vad-sound {
                status = "disabled";
                compatible = "rockchip,multicodecs-card";
                rockchip,card-name = "rockchip,rk3308-vad";
                rockchip,cpu = <&pdm_i2s_dais>;
                rockchip,codec = <&acodec>, <&vad>;
        };
但是我发现这个声卡还是和acodec有关系是不是也不行,总结的问题如下:
1. 我想采集4个mic的声音的话,选择下面的那个声卡合适:
        pdm_i2s_dais: pdm-i2s-dais {
                status = "okay";
                compatible = "rockchip,rk3308-multi-dais", "rockchip,multi-dais";
                dais = <&pdm_8ch>, <&i2s_8ch_2>;
                capture,channel-mapping = <6 2>;
                playback,channel-mapping = <0 2>;
                bitclock-inversion = <1 0>;
        };

        pdm-mic-array {
                status = "disabled";
                compatible = "simple-audio-card";
                simple-audio-card,name = "rockchip,pdm-mic-array";
                simple-audio-card,cpu {
                        sound-dai = <&pdm_8ch>;
                };
                simple-audio-card,codec {
                        sound-dai = <&dummy_codec>;
                };
        };

        vad-sound {
                status = "disabled";
                compatible = "rockchip,multicodecs-card";
                rockchip,card-name = "rockchip,rk3308-vad";
                rockchip,cpu = <&pdm_i2s_dais>;
                rockchip,codec = <&acodec>, <&vad>;
        };

      vad_acodec_sound: vad-acodec-sound {
                status = "okay";
                compatible = "rockchip,multicodecs-card";
                rockchip,card-name = "rockchip,rk3308b-acodec";
                rockchip,codec-hp-det;
                rockchip,mclk-fs = <256>;
                rockchip,cpu = <&i2s_8ch_2>;
                rockchip,codec = <&acodec>, <&vad>;
      };

2. 若是vad_acodec_sound声卡可以的话,为什么我只能采集mic7 mic8的声音(rockchip,adc-grps-route属性3写在最前面且rockchip,det-channel = <0>;)?

中国移动,我不 发表于 2021-7-23 17:59:27

我采用vad-sound声卡,把dts打开,但是出现如下的错误:

导致kernel启动不了
页: [1]
查看完整版本: rk3308b关于音频rockchip,adc-grps-route属性的问题