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.

[参考译文] TAS2110:Linux 驱动程序实现。

Guru**** 2012440 points
Other Parts Discussed in Thread: TAS2110, TAS2563, TAS2505, TAS2562, TAS2557
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1120737/tas2110-linux-driver-implementation

器件型号:TAS2110
主题中讨论的其他器件: TAS2563TAS2505TAS2562TAS2557TAS2558

您好!

我有用于 Jetson Nano (内核4.9.253)的定制载板、它具有 TAS2110音频放大器。 首先、我手动进行测试-播放 I2S 声音并使用脚本通过 I2C 进行配置、因此硬件正常。 我想为该 IC 实施驱动程序、因此我使用您网站 https://git.ti.com/cgit/lpaa-android-drivers/tas2505-linux-driver/上的驱动程序。 我知道它是 TAS2563的驱动程序、但我看到它是 TAS2110的替代产品。
在将此驱动程序添加到内核(https://forums.developer.nvidia.com/t/tas2557-tas2563-implement-driver-from-kernel-source/218181)期间、我支持 Nvidia。  他们说、内核侧的一切看起来都很好、并且故障可能来自驱动程序源。
您能不能说该驱动器适用于 TAS2110放大器? 如果不是、您能说我必须更改什么吗?还是可以发送其他驱动程序?

此致、
Mateusz


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

    您好、Mateus、

    不确定您是否链接了正确的驱动程序、因为该驱动程序适用于 TAS2505、但您提到了 TAS2563、请确认。
    您可以尝试以下任一操作:

    此致、
    -Ivan Salazar
    应用工程师

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

    您好、Mateusz

    请参阅此主题 TAS2110:TAS2110 Linux 驱动程序-音频论坛-音频- TI E2E 支持论坛

    tas2557和 tas2563都是需要固件的 DSP 内置芯片。 我认为 tas2562或 tas2558驱动程序代码更适合 tas2110。

    祝你好运。

    盛豪

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

    我现在使用的是 TAS2110、但将来可能会是 tas2563。 我使用 TAS2505的驱动  程序、因为它仅适用于您的 git 上的 Linux (其余的驱动程序适用于 Android)。

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

    Android 版驱动程序可用于 Linux、因为两者都使用 Linux 内核

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

    感谢您的回复。
    我为 TAS2562编译了驱动程序、没有错误、但我的寄存器编解码器有问题。 在 dmesg 日志中、我看到:
    [1.478687] Tegra-ASOC:Sound: Failed to set tas2562 SYSCLK!(Tegra-ASOC:声音:无法设置 tas2562 SYSCLK!)
    [1.484433] Tegra-ASOC:声音:ASOC:无法初始化 tas2562-playback:-524
    [1.491381] Tegra-ASOC:声音:ASOC:无法实例化卡-524
    [1.498653] USB 1-3:使用 Tegra-xusb 的新型高速 USB 器件编号2
    [1.501418] Tegra-ASOC:声音:Snd_soc_register_card 失败(-524)
    [1.507772] Tegra-ASOC:探测声音失败,错误为-524
    完整的 dmesg 日志:

    e2e.ti.com/.../dmesg_5F00_full.txt
    我检查了文件/sys/kernel/debug/ASOC/*
    e2e.ti.com/.../sys_5F00_kernel_5F00_debug_5F00_asoc_5F00_components.txte2e.ti.com/.../sys_5F00_kernel_5F00_debug_5F00_asoc_5F00_dais.txte2e.ti.com/.../sys_5F00_kernel_5F00_debug_5F00_asoc_5F00_platforms.txt

    上述错误是从以下函数调用的:

    静态 int tegra_machine_tas2562_init (struct snd_soc_pcm_runtime * RTD){
    struct device *dev = rtd->card->dev;
    Int 错误;

    ERR = SND_SoC_DAI_SET_SYSCLK (RTD->CODE_DAI、0、12288000、
    SND_SOC_CLOCK_IN);
    如果(err){
    DEV_ERR (dev、"无法设置 tas2562 SYSCLK!\n");
    退货错误;

    返回0;


    当我使用具有类似设置的 tas2505驱动程序时(仅将 tas2505更改为 tas 2562)、我没有任何问题。
    您是否有任何想法、错误是什么?

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

    您好、Mateus、

    我们将检查您的错误说明、并尽快提供进一步的评论

    此致、
    -Ivan Salazar
    应用工程师

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

    我在设备树中发现错误、现在我看到系统中有声卡

    sudo cat /proc/asound/cards 
     0 [tegrahda       ]: tegra-hda - tegra-hda
                          tegra-hda at 0x70038000 irq 82
     1 [tegrasndt210ref]: tegra-snd-t210r - tegra-snd-t210ref-mobile-TAS2xx
                          tegra-snd-t210ref-mobile-TAS2xxx_AMP
    

    当我播放声音时、I2S 和 I2C 保持安静(只有 MCLK 为11.3MHz)。

    在 UART 启动期间、我有:
    [1.400695] tas2562 2-004C:驱动程序 ID:1.0.1
    [1.429716] tas2562 2-004C:GPIO 已启动!!
    [1.467630] tas2562 2-004C:tas2562_codec_probe!!!

    我检查了文件/sys/kernel/debug/ASOC/*
    e2e.ti.com/.../cat_5F00_sys_5F00_kernel_5F00_debug_5F00_asoc_5F00_codecs.txte2e.ti.com/.../cat_5F00_sys_5F00_kernel_5F00_debug_5F00_asoc_5F00_dais.txt

    在我附加 dmesg 日志和源文件的下面:
    e2e.ti.com/.../sound_5F00_card_5F00_lit.txt
    e2e.ti.com/.../tas2562.he2e.ti.com/.../tas2562_2D00_codec.ce2e.ti.com/.../tas2562_2D00_codec.he2e.ti.com/.../tas2562_2D00_misc.ce2e.ti.com/.../tas2562_2D00_misc.he2e.ti.com/.../tas2562_2D00_regmap.ce2e.ti.com/.../tegra_5F00_machine_5F00_driver_5F00_mobile.c

    您能否再次检查错误设置的内容?

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

    您好、Mateus、

    在回放过程中、I2S 信号必须工作。 正确的是、I2C 是安静的。 我认为平台端的设置错误、正如您所知、tas2110是从器件、这取决于主器件端的正确时钟。 请咨询平台供应商。

    BR

    丁胜豪