2076286_zh-CN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2076286_zh-CN

2076286_zh-CN

iMX93 - 在 PCM 模式下使用 SAI(无外部编解码器)

大家好,
我正在研究基于 i.MX93 的电路板,并尝试使用PCM 模式下的其中一个 SAI 接口(特别是SAI3 )直接连接到Quectel GSM 模块。

该模块公开 PCM 线路(DIN、DOUT、CLK、SYNC)以及 I2C 接口以便与外部编解码器通信。根据Quectel的文档,音频可以直接通过PCM传输,而无需外部音频编解码器,该模块应该已经具有内部编解码器。

我的目标是通过 PCM 直接将呼叫音频路由到模块/从模块路由出呼叫音频。

我想问一下:

  1. 在没有编解码器的情况下,是否可以在 PCM 模式下使用 i.MX93 SAI 接口?

  2. 是否有人已经在 i.MX93(或类似的 NXP SoC)上完成过这种设置?

  3. 对于这种直接 PCM 连接(SAI <-> MODULE),推荐的设备树配置是什么?

  4. 即使没有编解码器,设备树中是否仍然需要音频卡节点?

如能提供任何建议或示例指示,我们将不胜感激!

提前致谢,

斯特凡诺

回复:iMX93 - 在 PCM 模式下使用 SAI(无外部编解码器)太感谢了!

在使用虚拟编解码器并更改 Quectel 模块中的某些配置后,我终于使其工作正常(也使用 i2s 而不是 pcm)
回复:iMX93 - 在 PCM 模式下使用 SAI(无外部编解码器)

你好,

您可以查看 ALSA 邮件列表中的这个帖子: https://www.spinics.net/linux/fedora/linux-sound/msg22016.html

除了上述讨论之外,您还可以尝试使用虚拟编解码器(不推荐,不被社区接受,但您可以出于测试目的尝试一下)。

像这样:

DTS 文件:

+ 编解码器测试:编解码器测试 {
+ #sound-dai-cells = <0>;
+兼容=“linux,snd-soc-dummy”;
+ };
+
+ 声音测试 {
+兼容=“简单音频卡”;
+简单音频卡,名称=“sai音频卡”;
+简单音频卡,格式=“left_j”;
+简单音频卡,位时钟主控=<&sai_cpu>;
+简单音频卡,帧主控=<&sai_cpu>;
+状态=“已禁用”;
+ sai_cpu:简单音频卡,cpu {
+ 声音-dai = <&sai1>;
+ dai-tdm-slot-num = <2>;
+ dai-tdm 时隙宽度 = <32>;
+ };
+ 简单音频卡,编解码器 {
+声音-dai = <&codec_test>;
+ };
+ };
+


--- a/sound/soc/soc-utils.c
+++b/sound/soc/soc-utils.c

+静态 const struct of_device_id soc_dummy_ids[] = {
+ { .兼容=“linux,snd-soc-dummy”,},
+ { },
+};
+
静态结构平台驱动程序 soc_dummy_driver = {
。司机= {
。姓名=“snd-soc-dummy”,
+ .匹配表= of_match_ptr(soc_dummy_ids),
},
。探测= snd_soc_dummy_probe,
};


Tags (1)
No ratings
Version history
Last update:
‎11-21-2025 09:36 PM
Updated by: