RK平台之DP声卡的调试

        简单介绍rk平台dp声卡的调试以及注意事项,希望对一些刚入门音频的同学有帮助。

        首先了解下这个DP和EDP;DP接口属于外部视频接口,只能用作显示器与驱动板之间的传输,不可以用芯片与芯片之间的传输;EDP接口属于内部视频接口,可以用作芯片与芯片之间的传输,也可以用作显示器与驱动板之间的传输。EDP是基于DP架构和协议基础上的一种接口,是同宗关系,性能上是没有什么区别的,只是EDP的功能比较多。

        DP声卡在SOC内走的是spdif,可以通过cat /proc/asound/cards查看下3588 evb上自带DP声卡,如下所示

        插拔dp时可以看下extcon的状态是什么,如下命令,DP=0,表示未插入,DP=1,表示插入。dp插入检测代码位于frameworks\base\services\core\java\com\android\server\WiredAccessoryManager.java

cat /sys/class/extcon/extcon*/state

        dp声卡,其hal层走hardware\rockchip\audio\spdif_hal\audio_hw.c;所以当tinyplay指定DP声卡有声音输出,而android无声音输出,需要在hal层的struct dev_proc_info SPDIF_OUT_NAME[]加上dp声卡的id即可;

        kernel目录下的.config文件中设置CONFIG_SND_SOC_ROCKCHIP_CDNDP=y;dts配置可以参考如下;

/ {
dp_sound: dp-sound {
status = "okay";
compatible = "rockchip,cdndp-sound";
rockchip,cpu = <&spdif>;
rockchip,codec = <&cdn_dp 1>;
};
};

&spdif {
status = "okay";
};

&cdn_dp {
status = "okay";
extcon = <&fusb0>;
phys = <&tcphy0_dp>;
};

&dp_sound {
status = "okay";
};

        这边需要注意的是,rockchip_cdndp.c这个是4.19及以前的kernel用的,5.10之后,alsa更新了;例如3399平台kernel 5.10,可让客户使用如下配置来注册dp声卡;

	hdmi_dp_sound: hdmi-dp-sound {
		status = "okay";
		compatible = "rockchip,rk3399-hdmi-dp";
		rockchip,cpu = <&i2s2>;
		rockchip,codec = <&cdn_dp>;
	};

        如果客户编译dp驱动会报错,我们先不用dp驱动,建议直接使用simple-card去配置注册;

    dp_codec: dp-codec {
        compatible = "simple-audio-card";
        simple-audio-card,format = "i2s";
        simple-audio-card,mclk-fs = <256>;
        simple-audio-card,name = "dp-sound";
        simple-audio-card,cpu {
            sound-dai = <&spdif>; //修改这,才出声音
        };
        simple-audio-card,codec {
            sound-dai = <&cdn_dp 1>; 
        };
    };
&i2s2 {
    #sound-dai-cells = <0>;
    status = "okay";
};

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值