This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TLV320DAC3100:TLV320DAC3100

Guru**** 2473270 points
Other Parts Discussed in Thread: TLV320DAC3100

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1210480/tlv320dac3100-tlv320dac3100

器件型号:TLV320DAC3100

大家好!

我正在开发一款具有编解码器 TLVDAC3100的原型。 我们需要通过3.5mm 耳机插孔播放音频。 我已按如下方式更新了器件树:

sound {
        compatible = "simple-audio-card";
        simple-audio-card,name = "Audio Output";
        simple-audio-card,format = "i2s";
        simple-audio-card,bitclock-master = <&sound_codec>;
        simple-audio-card,frame-master = <&sound_codec>;
        simple-audio-card,widgets =
        "Headphone", "Headphone Jack",
        "Speaker", "speakerOut";
        simple-audio-card,routing =
            "Headphone Jack", "HPLOUT",
            "Headphone Jack", "HPROUT",
        	"speakerOut", "SPK";
        simple-audio-card,cpu {
            sound-dai = <&sai1>;
        };

        sound_codec: simple-audio-card,codec {
            sound-dai = <&codec1>;
            clocks = <&clks IMX7D_AUDIO_MCLK_ROOT_CLK>;
        };
    };

codec1: codec@18 {
            compatible = "ti,tlv320dac3100";
            pinctrl-names = "default";
            pinctrl-0 = <&pinctrl_codec1>;
            reg = <0x18>; //verify this
            #sound-dai-cells = <0>;
            HPVDD-supply = <&audio_3v3>;
            SPRVDD-supply = <&audio_3v3>;
            SPLVDD-supply = <&audio_3v3>;
            AVDD-supply = <&audio_3v3>;
            IOVDD-supply = <&audio_3v3>;
            DVDD-supply = <&audio_3v3>;
            gpio-reset = <&gpio3 22 GPIO_ACTIVE_HIGH>;
            status = "okay";
	    };

&sai1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_sai1>;
	assigned-clocks = <&clks IMX7D_SAI1_ROOT_SRC>,
			  <&clks IMX7D_SAI1_ROOT_CLK>;
	assigned-clock-parents = <&clks IMX7D_PLL_AUDIO_POST_DIV>;
	assigned-clock-rates = <0>, <24576000>; // find correct value
	status = "okay";
};


我看到以下输出:


3.916525] snd-soc-dummy snd-soc-dummy:编解码器寄存器 snd-soc-dummy
[ 3.92366] snd-soc-dummy snd-soc-dummy:aSOC:已注册的编解码器'nd-soc-dume'
[ 3.927194] mmc1:地址0001处的新型超高速 SDR104 SDIO 卡
[ 3.930415] snd-soc-dummy snd-soc-dummy:aSOC:平台寄存器 snd-soc-dummy.
[3.945113] tlv320aic31xx-codec 2-0018:probe sai ## aic31xx_i2c_probe:tlv320dac3100 codec_type = 4
[ 3.955143] tlv320aic31xx-codec 2-0018:探测 SAI 成功## aic31xx_i2c_probe:tlv320dac3100 codec_type = 4
[ 3.965284] tlv320aic31xx-codec 2-0018:编解码器寄存器2-0018
[ 3.971063] tlv320aic31xx-codec 2-0018:aSOC:已注册编解码器"tlv320aic31xx-codec.2-0018"
[3.980562] ASOC-Simple-card sound: Simple audio card
[ 3.989289] FSL-SAI 308a0000.SAI:探测 SAI
[ 3.994007] FSL-SAI 308a0000.SAI:探测 SAI 几乎成功
[ 3.999769] FSL-SAI 308a0000.SAI:ASOC:平台寄存器308a0000.SAI
4.382055] ASOC-simple-card sound: Simple audio card
[4.387461] ASOC-simple-card 声音:简单设备可用
[4.393364] tlv320aic31xx-codec 2-0018:SAI 探测编解码器# aic31xx_codec_probe
[4.400584] tlv320aic31xx-codec 2-0018:SAI probe## sucsful aic31xx_codec_probe
[ 4.408241] tlv320aic31xx-codec 2-0018:## aic31xx_set_di_fmt:fMT = 0x1001
[4.415508] ASOC-simple-card sound: tlv320dac31xx-hifi <->308a0000.sai mapping ok
[4.423104] ASOC-simple-card sound: ASOC:找不到 HPLOUT 的源控件
[4.430109] ASOC-simple-card sound: ASOC:Failed to add route HPLOUT -> Direct -> Headphone Jack
[4.438929] ASOC-simple-card sound: ASOC:找不到 HPROUT 的源控件
[4.445922] ASOC-simple-card sound: ASOC:Failed to add route HPROUT -> Direct -> Headphone Jack
[ 4.455205] tlv320aic31xx-codec 2-0018:## aic31xx_set_bias 级别:0 -> 1.
ALSA 设备列表:
[4.560538]#0:音频输出


为什么会给出呢 添加路由 HPLOUT 和 HPROUT 失败
我的器件树是否正确? 我想通过连接到外部耳机的音频插孔3.5毫米插座和集成音频播放
扬声器。 请向我建议的正确更改 简单的声卡路由 。 我是音频新手。

此外、还附加了原理图片段。  

                 

谢谢。
Asma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    为了给您提供良好的支持、请告诉我内核版本、硬件平台类型以及您从何处获得代码?