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.

[参考译文] TAS2505EVM:imx8m MINI 的器件驱动程序

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1064392/tas2505evm-device-driver-to-imx8m-mini

器件型号:TAS2505EVM
主题中讨论的其他器件:TAS2505

您好!

我们将 Yocto Zeus 用于 imx8m 定制板、需要与扬声器模块 TAS2505集成。

我们从以下链接中找到了 TAS2505驱动程序。

https://github.com/dangtranhieu2012/tas2505-linux-driver

请提供相应的器件树配置以及与 Linux BSP 相关的其他技术支持。

谢谢、此致、

洛根

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

    洛根、您好!

    请参阅上一个主题 :https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1061783/tas2505-driver-to-linux-os/3928527#3928527

    此致、
    -Ivan Salazar
    应用工程师

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

    您好 Ivan Salazar、

                      感谢您的支持。  

    我们 添加了 TAS2505驱动器、并且能够在这里发出声音。 但是、无论何时播放音频、都需要使用 alsamixer 更改放大器音量。

    TAS2505支持48000和44100Hz 采样频率、但48000Hz 音频只能播放。

    *如何在不使用 alsamixer 的情况下取消静音或播放

    *我们需要播放22050 Hz 的音频,以及如何计算

    struct tas2505_rate_divs{
       u32 MCLK_p;
       u32速率;
       U8 PLL_r;
       U8 PLL_j;
       U16 PLL_d;
       U8 MDAC;
       U8 ndac;
       U16 dosr;
    };

    谢谢、

    洛根

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

    洛根、您好!

    我将查看所需的 PLL 设置、并在明天之前用一些值进行回复。
    关于 alsamixer 问题、我需要咨询一些软件同事、然后再提出进一步的意见。

    此致、
    -Ivan Salazar
    应用工程师

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

    洛根、您好!

    您可以尝试以下操作:

    static const struct tas2505_rate_divs tas2505_divs[] = {
    	{ 12288000, 44100, 1, 7, 35, 4, 4, 128 },
    	{ 12288000, 48000, 1, 7, 0, 7, 2, 128 },
    	{ 12288000, 22050, 1, 7, 35, 8, 4, 128 },
    };

    此致、
    -Ivan Salazar
    应用工程师

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

    您好 Ivan Salazar、

    我们在 tas2505.c 文件中应用了 tas2505_rate _divs 结构(针对22050Hz 采样频率)、但它不起作用。 驱动程序仅工作48000Hz 采样音频。 即使是默认的驱动程序44100Hz 采样音频也无法正常工作。 我不确定、是否保存了正确的驱动程序文件。

    请共享 tas2505驱动程序文件(tas2505.c、tas2505.h 和其他所需文件)

    谢谢、此致、

    洛根

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

    洛根、您好!

    请从我们的产品文件夹 https://git.ti.com/cgit/lpaa-android-drivers/tas2505-linux-driver/中尝试此操作

    如果您在使用时遇到问题、请告诉我日志文件等、我可以与我们的软件团队联系。

    此致、
    -Ivan Salazar
    应用工程师

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

    您好 Ivan Salazar、

    感谢您的支持。 现在、我们可以使用22050Hz 的采样频率。

    一个问题是、无论何时新播放音频、声音都不会发出、但驱动程序初始化功能会取消音量的静音。 为了获得声音、首先需要播放音频、然后使用 alsamixer 或通过 i2c 重新设置放大器音量寄存器(第1页中为0x30)。 保留默认卷:30,

    aplay -Dsysdefault:tas2505 eurohighburst.wav &
    i2cset -y -f 2 0x18 0x00 0x01
    i2cset -y -f 2 0x18 0x30 0x10

    请帮助我们在播放时无需每次重新设置音量即可获得音频。

    谢谢、此致、

    洛根

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

    洛根、您好!

    很高兴它现在适用于22050Hz、代码中是否有任何变化? 还是主机或硬件上有什么变化?
    如果您可以分享更多详细信息、则有助于更好地理解。

    我将在执行 Play 命令后检查音量、并尽快获得反馈。

    此致、
    -Ivan Salazar
    应用工程师

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

    洛根、您好!

    您能否共享运行时日志、以便我们进一步分析什么是器件配置?
    此外、如果您可以在初始化之后、回放之前以及回放之后执行寄存器转储、这也会有所帮助。

    此致、
    -Ivan Salazar
    应用工程师