Mrs Wu

Mrs Wu

5个粉丝

63

问答

18

专栏

5

资料

Mrs Wu  发布于  2022-11-01 15:17:36
采纳率 0%
63个问答
2203

RK3568 HDMI_RX + LT6911UXC 音频采集

我们使用了HDMI_RX芯片,LT6911UXC现在已经调通视频采集,音频数据走的是lt6911UXC->I2S3M1->rk3568x.
我们实际的设备树配置如下:

  1. hdmirx_sound: hdmirx-sound {
  2. status = "okay";
  3. compatible = "simple-audio-card";
  4. simple-audio-card,name = "rockchip,dummy-sound";
  5. simple-audio-card,format = "i2s";
  6. simple-audio-card,mclk-fs = <256>;
  7. simple-audio-card,cpu {
  8. sound-dai = <&i2s3_2ch>;
  9. };
  10. simple-audio-card,codec {
  11. sound-dai = <&dummy_codec>;
  12. };
  13. };
  14. dummy_codec: dummy-codec {
  15. status = "okay";
  16. compatible = "rockchip,dummy-codec";
  17. #sound-dai-cells = <0>;
  18. };
  19. &i2s3_2ch {
  20. status = "okay";
  21. #sound-dai-cells = <0>;
  22. pinctrl-0 = <&i2s3m1_mclk
  23. &i2s3m1_sclk //硬件上使用了I2S3的I2S3m1
  24. &i2s3m1_lrck
  25. &i2s3m1_sdi
  26. /*&i2s3m0_sdo*/>;
  27. };

按照参考配置今后,没有发现I2S3的声卡,
[ 3.218878] ALSA device list:
[ 3.218885] #0: hdmi-sound
[ 3.218900] #1: ROCKCHIP,SPDIF
[ 3.218911] #2: rockchip,i2s1-sound
[ 3.224396] EXT4-fs (mmcblk0p6): mounted filesystem with ordered data mode. Opts: (null)
[ 3.224457] VFS: Mounted root (ext4 filesystem) on device 179:6.

另外我们也用到了RK616芯片,但是只用了LCD转HDMI视频输出,硬件上音频没有使用电阻断开了,但内核设备树上有使用 I2S3M1_CLK 这个就和LT6911UXC那边的采集冲突了,改如何去掉呢?
尝试过,将i2s3m1_mclk及clock的相关的全部注释掉,系统就起不来了。

  1. rk618@50 {
  2. compatible = "rockchip,rk618";
  3. reg = <0x50>;
  4. pinctrl-names = "default";
  5. pinctrl-0 = <&i2s3m1_mclk &rk618_int>;
  6. clocks = <&cru I2S3_MCLKOUT>;
  7. clock-names = "clkin";
  8. assigned-clocks =<&cru I2S3_MCLKOUT>, <&cru I2S3_MCLK_IOE>;
  9. assigned-clock-parents = <&cru I2S3_MCLKOUT_TX>, <&cru I2S3_MCLKOUT>;
  10. assigned-clock-rates = <11289600>;
  11. reset-gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_LOW>;
  12. status = "okay";
  13. clock: cru {
  14. compatible = "rockchip,rk618-cru";
  15. clocks = <&cru I2S3_MCLKOUT>, <&cru DCLK_VOP2>;
  16. clock-names = "clkin", "lcdc0_dclkp";
  17. assigned-clocks = <&clock SCALER_PLLIN_CLK>,
  18. <&clock VIF_PLLIN_CLK>,
  19. <&clock SCALER_CLK>,
  20. <&clock VIF0_PRE_CLK>,
  21. <&clock CODEC_CLK>,
  22. <&clock DITHER_CLK>;
  23. assigned-clock-parents = <&cru I2S3_MCLKOUT_TX>,
  24. <&clock LCDC0_CLK>,
  25. <&clock SCALER_PLL_CLK>,
  26. <&clock VIF_PLL_CLK>,
  27. <&cru I2S3_MCLKOUT>,
  28. <&clock VIF0_CLK>;
  29. #clock-cells = <1>;
  30. status = "okay";
  31. };
我来回答
回答1个
时间排序
认可量排序

Mrs Wu

5个粉丝

63

问答

18

专栏

5

资料

Mrs Wu 2022-11-01 15:55:14
认可0

经过大量测试发现,确实是616里面的 pinctrl-0 = <&i2s3m1_mclk &rk618_int>; 干扰了

rk618@50 {
        compatible = "rockchip,rk618";
        reg = <0x50>;
        pinctrl-names = "default";
        pinctrl-0 = <&i2s3m1_mclk &rk618_int>;   // 这个改成 pinctrl-0 = <&rk618_int>;  声卡设备就出来了,但采集声音全是杂音,应该是下面的MCLK影响了
        clocks = <&cru I2S3_MCLKOUT>;            // 尝试注释掉这个,系统就跪了起不来了,一直刷屏,数据见附件。
        clock-names = "clkin";
        assigned-clocks =<&cru I2S3_MCLKOUT>, <&cru I2S3_MCLK_IOE>;
        assigned-clock-parents = <&cru I2S3_MCLKOUT_TX>, <&cru I2S3_MCLKOUT>;
        assigned-clock-rates = <11289600>;
        reset-gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_LOW>;
        status = "okay";

        clock: cru {
            compatible = "rockchip,rk618-cru";
            clocks = <&cru I2S3_MCLKOUT>, <&cru DCLK_VOP2>;
            clock-names = "clkin", "lcdc0_dclkp";
            assigned-clocks = <&clock SCALER_PLLIN_CLK>,

把RK616及VOP注释起来,并把I2S3设置为从模式,问题解决了!

或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区