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.

[参考译文] TLV320AIC3110:TLV320AIC3101 的器件树配置所需的帮助

Guru**** 2543560 points
Other Parts Discussed in Thread: TLV320AIC3101, TLV320AIC3110

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1563276/tlv320aic3110-assistance-needed-with-device-tree-configuration-for-tlv320aic3110

器件型号:TLV320AIC3110


工具/软件:

我们目前正在器件树[LINUX-6.6.36]中测试以下配置、以使用 TPA3110D2PWP 放大器验证 TLV320AIC3101 编解码器。

但是、我们无法在 MICBIAS 获得电压、且在耳机播放时无法获得音频。

请求:
请提供 TLV320AIC3110 的正确器件树配置支持。

下面的支持申请单中提供了硬件设计原理图。 我们还附加了器件树以供审核。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1526295/tlv320aic3110-audio-codec-with-power-amplifier?tisearch=e2e-sitesearch&keymatch=tlv320aic3110#

 e2e.ti.com/.../Device_2D00_Tree_2D00_Nodes.txt

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

     Jeff McPherson 

    请查看我们用于编码的设备树。

     Sydney Northcutt 

    请回顾一下音频放大器是否需要更改。

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

    尊敬的 Dharmendra:

    我们的设备树专家今天已下班、但明天将回来与您联系。

    此致、
    Jeff McPherson

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

    尊敬的 Dharmendra:  

    我认为 DTS 看起来不错。 如果您有任何具体问题、请告诉我、我可以更深入地了解驱动程序以帮助解决这些问题。

    此致、
    Mir

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

    尊敬的 Mir:

    在引脚 12 的 MICBIAS 电压下、我们无法通电。

    MIC:  arecord -D HW:0、0 -f S16_LE -r 48000 -c 2 -d 5 --buffer-size=4096 --periode-size=1024 mic-test.wav

    命令执行无错误。

    此外 、耳机插针 27 (LOUT) 和 30 (ROUT) 处没有模拟输出信号。

    耳机:  aplay -D 可播放:0、0 -f S16_LE -r 48000 -c 2 test.wav

    谢谢您、
    达门德拉

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

    尊敬的 Dharmendra:

    MICBIAS 是否有任何电压? 我想知道器件是否没有读取 DTS 配置的所有相关.h 文件 — 从 MICBIAS 默认值应为 2V、可以看到您已将其设置为 2.5V。 您可以阅读这篇之前的 E2E 关于此问题的文章:  TLV320AIC3100:TLV320AIC31XX-Linux 驱动程序、设置麦克风偏置时的问题、Raspberry Pi 4 

    您可能还需要在 DTS 文件中添加音频路由属性、如下所述: https://www.kernel.org/doc/Documentation/devicetree/bindings/sound/tlv320aic31xx.txt

    这在简单卡文档 https://www.kernel.org/doc/Documentation/devicetree/bindings/sound/simple-card.txt 中看起来像简单音频卡、路由=

    但使用 aic31xx.txt 文件中定义的“HPL",“,"HPR"、"HPR"和“和"MIC1LP"“"MIC1LP"等“等标签“标签。

    如果这对我有帮助、请告诉我! 我认为布线可能也会影响麦克风偏置、如果没有麦克风路由、那么可能不会开启偏置以节省电力。

    此致、
    Mir

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

    尊敬的 Mir Jeffres :

    非常感谢您的持续支持。

    使用您建议的布线、我们能够获得 2.5V 的 MICBIAS 电压。

    但是、我们仍然无法使用以下命令从麦克风捕获音频:

    arecord -D HW:0、0 -f S16_LE -r 48000 -c 2 -d 5 mic-test.wav

    您能否确认哪些引脚负责麦克风输入?
    如果需要、我们可以使用 DSO 探测信号。

    为了便于您参考、我们还随附了 dts 文件。

    &sai1 {
    	#sound-dai-cells = <0>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_sai1>;
    	assigned-clocks = <&clk IMX8MP_CLK_SAI1>;
    	assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>;
    	assigned-clock-rates = <12288000>;
    	fsl,sai-mclk-direction-output;
    	status = "okay";
    };
    .
    .
    .
    &i2c6 {
    	clock-frequency = <100000>; /* Lower clock speed for external bus. */
    	pinctrl-names = "default";
    	pinctrl-0 = <&pinctrl_i2c6>;
    	status = "okay";
    
    	tlv320aic3110: audio-codec@18 {
    		#sound-dai-cells = <0>;
    		compatible = "ti,tlv320aic3110";
    		reg = <0x18>;
    		pinctrl-0 = <&pinctrl_tlv320aic3110>;
    
    		clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>;
    		clock-names = "mclk";
    		assigned-clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1>;
    		assigned-clock-rates = <24576000>;
    		mclk-frequency = <24576000>;
    
    		HPVDD-supply = <&reg_vcc_3v3>;
    		SPRVDD-supply = <&reg_vcc_3v3>;
    		SPLVDD-supply = <&reg_vcc_3v3>;
    		AVDD-supply = <&reg_vcc_3v3>;
    		IOVDD-supply = <&reg_vcc_3v3>;
    		DVDD-supply = <&reg_vcc_1v8>;
    		reset-gpios = <&gpio4 31 GPIO_ACTIVE_LOW>;
    		gpios = <&gpio4 13 GPIO_ACTIVE_HIGH>;
    		ai31xx-micbias-vg = <MICBIAS_2_5V>;
    		ai31xx-ocmv = <3>;
    	};
    .
    .
    .
    	sound {
    		compatible = "simple-audio-card";
    		simple-audio-card,name = "kirtan_sak";
    		simple-audio-card,format = "i2s";
    		simple-audio-card,bitclock-master = <&dailink_master>;
    		simple-audio-card,frame-master = <&dailink_master>;
    		simple-audio-card,convert-rate = <48000>;
    
    		simple-audio-card,widgets =
    			"Microphone", "Microphone Jack",
    			"Headphone", "Headphone Jack";
    		simple-audio-card,routing =
    			"MIC1RP", "Microphone Jack",
    			"Microphone Jack", "MICBIAS",
        		"MIC1RP P-Terminal", "Microphone Jack",
        		"Microphone Jack", "MICBIAS",
    			"Headphone Jack", "HPL",
    			"Headphone Jack", "HPR";
    
    		dailink_master: simple-audio-card,cpu {
    			sound-dai = <&sai1>;
    			system-clock-direction-out;
    		};
    
    		dailink_codec: simple-audio-card,codec {
    			sound-dai = <&tlv320aic3110>;
    			system-clock-frequency = <12000000>;
    		};
    	};

    谢谢您、

    达门德拉·萨瓦利亚。

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

    尊敬的 Dharmendra:

    根据 DTS 布线、将麦克风输入设置为 MIC1RP、尽管这只是 P 端子、但通常需要 PGA 的 P 端子和 M 端子。 我看到、对于 PGA 的 M 端子、它只是连接了 MIC1LM、由于您在原理图中将其悬空、因此您需要使用软件将 MIC1LM 配置为连接到共模 VCOM。 它现在可能无法在驱动程序中完全受支持、但我发现了这一点、我想我们可以在 aic31xx.c 驱动程序文件中再添加几行、或者检查 amixer GUI 中存在的内容...

    该寄存器需要进行更改才能将 PGA 的 M 端子连接到 VCOM、第 1 页寄存器 49 位 7-6:  

    我们在 tlv320aic31xx.h 文件中可以看到、 第 1 页寄存器 49 定义为“AIC31XX_MICPGAMI":“:  

    在 tlv320aic31xx.c 文件中搜索此内容时、提到 3 次:

    首先在默认值部分:  

    然后在这里两次:

    因此、我们正在寻找 cm_m_enum 来定义与此处相对应的 dts 文件条目。 但是、“cm_m_enum"在此“在此文件中仅提及一次、就在这里。 同时、mic1lm_m_enum 如下所述:

    因此、要直观地使用驱动器更改共模设置、我们需要为 cm_m_enum 添加一个等效的 snd_kcontrol_new 条目、如下所示:

    然后、我们可以针对 DTS 路由文件中的共模连接、其目标与您对“MIC1RP P 终端“所做的类似。

    另外、请注意、您需要包括以下设置之一、才能使麦克风选择正常工作、即使对于您的 MIC1RP P 终端也是如此:

    我认为这些是应该在 amixer 中填充的东西、GUI 称为 alsamixer。 请检查,在你改变任何驱动程序之前,我很抱歉,如果我使它更复杂. 如果更改 alamixer 或 DTS 没有帮助、我们也可以尝试更改默认寄存器值。 请发送您所看到的 alsamixer 设置的屏幕截图、如果您可以在录制期间获取寄存器转储、这也会很有帮助。

    此致、
    Mir

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

    尊敬的 Dharmendra:

    我不清楚麦克风是您问题的根源。 我不相信更换麦克风会解决任何问题、因为您和 Mir 迄今讨论的内容没有证据。 只要电解液输出示波器上看到的电压、问题就在于编解码器配置。  

    此致、
    Jeff McPherson

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

    您好、 Jeff McPherson 

    当我们尝试使用麦克风进行录制时、麦克风的 MICBIAS 上出现电压变化。
    但是当我们探测到 MIC1RP 时 — 我们在麦克风上讲话时没有信号。

    您能否帮助调试此问题(顺便说一下,我们使用的是 ICS-40212 麦克风)?

    谢谢你

    达门德拉·萨瓦利亚

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

    您好、  

    您能否验证您的 MICBIAS 是否在麦克风数据表中与麦克风接地连接相关的以下范围内:

    此致、
    Mir