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.

[参考译文] Linux/TDA2EVM5777:在 A15的 TDA2x EVM 上启用音频回放

Guru**** 2539500 points
Other Parts Discussed in Thread: TLV320AIC3106

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/677637/linux-tda2evm5777-enabling-audio-playback-on-tda2x-evm-from-a15

器件型号:TDA2EVM5777
主题中讨论的其他器件:TLV320AIC3106

工具/软件:Linux

您好!

我们在 TDA2x EVM 上运行 Vision SDK 版本03_02_00_00 (A15上的 Linux)。
构建 Vision SDK 映像时、在 Linux+BIOS 模式下将 MAKECONFIG 设置为"tda2xx_EVM_Linux_All"。

由于我们的用例需要音频回放、我们使用一些.wav 文件通过'aplay'来验证音频回放。 但是、无法听到音频(在线路输出和耳机输出端口上)。
控制台上出现以下错误。

[39.895169]  tlv320aic3x-codec 0-0019:无法同步寄存器0x2-0x2。 -121.

我们还尝试使用了"测试程序"实用程序、在该实用程序中看到类似的错误、并且无法听到任何音频。 控制台打印内容如下:

$扬声器测试
扬声器测试1.1.0
播放设备为默认设置
流参数为48000Hz、S16_LE、1个通道
使用16个粉色噪声的八倍
速率设置为48000Hz (请求的48000Hz)
缓冲器大小范围为278至35665
周期大小范围为139至17833
使用最大缓冲器尺寸35664
周期= 4
设置 PERIOD_SIZE = 5094
设置为 buffer_size = 35664
 0 -左前
每个周期的时间= 2.234905
 0 -左前
每个周期的时间= 2.972102
 0 -左前
[228.455813] tlv320aic3x-codec 0-0019:无法同步寄存器0x7-0x7。 -121.

在文档 VisionSDK_Linux_DevelopmentGuide.pdf 中、有人提到在 dra7-evm.dts 中默认删除了'sound'。
您能否建议在构建 VISION SDK 映像(Linux+BIOS)时启用声音的步骤。


PS:aplay -l 和-L 的输出似乎表明检测到设备、其日志如下:

$ aplay -L
null
   丢弃所有样本(回放)或生成零样本(捕获)
脉冲
   PulseAudio Sound 服务器
默认:card=DRA7xxEVM
   DRA7xx-EVM、
   默认音频设备
sysdefault:card=DRA7xxEVM
   DRA7xx-EVM、
   默认音频设备

$ aplay -l
****播放硬件设备列表****
卡0:DRA7xxEVM [DRA7xx-EVM]、器件0:Davinci-McASP/0-tlv320aic3x-hifi tlv320aic3x-hifi-0[]
 子设备:1/1
 子设备#0:子设备#0

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

    您好、Uday、

    我正面临着完全相同的问题。 您是否能够解决该问题?

    谢谢

    Anamika

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

    您能告诉我您正在使用的此板的修订版吗? 从您提供的打印输出中、听起来音频编解码器可能被内核探测(基于 DTB 设置)、但无法到达 I2C 地址0x19上的音频编解码器。 在该 EVM 上、有一个开关用于配置在与主板上的 AIC3106音频编解码器通信时使用的 I2C 地址。

    您能否检查 SW8[1](即此 DIP 开关上的第二个引脚)并确保其设置为 on? 这会将硬件配置为使用 I2C 地址0x19、而不是 AIC3106编解码器。
    如果这不起作用、请务必附上您的 dra7-evm.dts、以便我查看您的设置。

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

    尊敬的 Danny:

    我们使用的是 E 版电路板。

    SW8上的两个开关处于导通状态。

    请查找随附的 dra7-EVM.dts 文件。

    谢谢、

    UDay M S

    e2e.ti.com/.../3566.dra7_2D00_evm.dts.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们还在同一电路板上尝试了 PSDK、观察结果与错误"tlv320aic3x-codec 0-0019:无法同步寄存器"相同
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、Uday、

    对于该电路板的修订版 E、AIC3106音频编解码器地址实际上固定为0x18、而不是0x19。

    请尝试对您的 dra7-EVM.dts 文件进行以下更改、然后再试一次:

     tlv320aic3106: tlv320aic3106@18
      #sound-di-cells =<0>;
      兼容="ti、tlv320aic3106";
      reg =<0x18>
      adc -稳定-ms =<40>;
      aI3x-micbias vg =<1>;  /* 2.0V *
      状态="正常";

      /*稳压器*/
      AVDD-SUPPLY =<&EVM_3V3_SW>;
      IOVdd-supply =<&EVM_3V3_SW>;
      DRVDD 电源=<&EVM_3V3_SW>;
      DVDD 电源=<&AIC_DVDD>;
     };

    请告诉我这是否能解决您的问题。

    Danny

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Danny:
    我作了建议的修改,但有意见
    1.运行扬声器测试或播放时未出现错误(tlv320aic3x-codec)。
    2.虽然没有实际的音频回放,但只能听到几秒钟的噪音。

    如前所述、SW8[1]设置为 on。 我是否应该保持相同的配置或需要进行任何更改。

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

    大家好、Uday、

    您还可以附加 dra7-EVM-common.dtsi 文件吗?  我想知道 Sound0卡是否设置正确。  您之前的打印日志似乎建议设置 DRA7xxEVM、但我也想仔细检查您的 dra7-EVM-common.dtsi。

       Danny

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此外、在运行扬声器测试时、您能否尝试"扬声器测试-nloops 0"以确保扬声器测试无限期持续?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    另一个要检查的内容是 amixer 控制设置:
    $ amixer 控件
    "pcm="" playback="" volume"="">
    $ amixer cget numid=
    $ amixer cset numid=

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

    尊敬的 Danny:

    除了修订版 E 板上的寄存器从19更改为18、我们进行了以下更改。

    diff --git a/arch/arm/boot/dts/dra7-evm-infoadas。dts b/arch/arm/boot/dts/dra7-evm-infoadas。dts
    @@-15、7 + 15、7 @@
     disable_complete (vip1);
     disable_complete (vip2);
     disable_complete (vip3);
    disable_complete (i2c2);
    //disable_complete (i2c2);
     disable_complete (WDT2);
     disable_complete (VPE);
     disable_complete (ocmcram1);

    diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts
    @@-831、6 +831、7 @@ i2c_p3_exp:&i2c2{
        ov10633@37{
           兼容="ovti、ov10633";
           reg =<0x37>;
    +      STATUS ="禁用";
     
           MUX-GPIO =<&pcf_HDMI 3 GPIO_ACTIVE_LOW>;/* CAM_FPD_MUX_S0 *
           端口{
    --

    在运行音频之前、执行了以下命令

    omapconf 写入0x4A003724 0xc0000

    omapconf 写入0x4A003728 0xc0000

    omapconf 写入0x4A00372C 0xc0000

    omapconf 写入0x4A003730 0xc0000

    amixer cset name='HP DAC Playback Volume' 118


    通过这些更改、我们可以实现音频回放。

    但是、它在摄像头捕获期间导致了故障。 ( https://e2e.ti.com/support/arm/automotive_processors/f/1021/t/688263)

    此致、
    UDay M S

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

    此主题的原始问题是否已解决? 我们是否可以关闭它并继续讨论另一个主题中的新问题?

    此致、
    Yordan