ねえ皆さん
i.MX93ベースのボードで作業しており、PCMモードでSAIインターフェイスの1つ(特にSAI3)を使用してQuectel GSMモジュールに直接接続しようとしています。
このモジュールは、PCMライン (DIN、DOUT、CLK、SYNC) と、外部コーデックと通信するためのI2Cインターフェイスを公開します。Quectelのドキュメンテーションによると、オーディオは外部オーディオコーデックを必要とせずにPCM経由で直接送信でき、モジュールにはすでに内部コーデックがあるはずだ。
私の目標は、PCMを介してモジュールとの間で直接通話オーディオをルーティングすることです。
私は尋ねたいです:
i.MX93 SAIインターフェースをコーデックなしでPCMモードで使用できますか?
i.MX93(または同様のNXP SoC)でこの種のセットアップをすでに行った人はいますか?
この種の直接PCM接続(SAI <->モジュール)に推奨されるデバイスツリー構成は何ですか?
オーディオ カード ノードは、コーデックがない場合でもデバイス ツリーに必要ですか?
アドバイスや例を示していただければ幸いです!
よろしくお願いします。
ステファノ
こんにちは
ALSAメーリングリストのこのスレッドを見ることができます https://www.spinics.net/linux/fedora/linux-sound/msg22016.html
上記の議論以外にも、ダミーコーデックを使用してみることができます(推奨されておらず、コミュニティには受け入れられていませんが、テスト目的で試してみることができます)。
このようなものです。
DTS ファイル:
+ codec_test: codec_test {
+ #sound-dai-cells = <0>;
+ compatible = "Linux,snd-soc-dummy";
+ };
+
+ サウンドテスト {
+ compatible = "シンプルオーディオカード";
+ simple-audio-card,name = "sai-audio-card";
+ simple-audio-card,format = "left_j";
+ シンプルオーディオカード、ビットクロックマスター = <&sai_cpu>;
+ シンプルオーディオカード、フレームマスター = <&sai_cpu>;
+ ステータス = "無効";
+ sai_cpu: simple-audio-card,cpu {
+ サウンドダイ = <&sai1>;
+ dai-tdm-slot-num = <2>;
+ dai-tdm-slot-width = <32>;
+ };
+ シンプルオーディオカード、コーデック {
+ サウンドダイ = <&codec_test>;
+ };
+ };
+
--- a/sound/soc/soc-utils.c
+++ b/サウンド/soc/soc-utils.c+_device_id の静的定数構造体 soc_dummy_ids [] = {+ {.compatible
= " linux, snd-soc-dummy ",}, + {},
+ {},
+
静的構造体 platform_driver soc_dummy_driver = {.driver
= {
.名前= " snd-soc-dummy "、+ .of_match_table
= of_match_ptr (soc_dummy_ids)、}、.probe
= snd_soc_dummy_probe、};