主题中讨论的其他器件:TAS2505
您好!
我们将 Yocto Zeus 用于 imx8m 定制板、需要与扬声器模块 TAS2505集成。
我们从以下链接中找到了 TAS2505驱动程序。
https://github.com/dangtranhieu2012/tas2505-linux-driver
请提供相应的器件树配置以及与 Linux BSP 相关的其他技术支持。
谢谢、此致、
洛根
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.
您好!
我们将 Yocto Zeus 用于 imx8m 定制板、需要与扬声器模块 TAS2505集成。
我们从以下链接中找到了 TAS2505驱动程序。
https://github.com/dangtranhieu2012/tas2505-linux-driver
请提供相应的器件树配置以及与 Linux BSP 相关的其他技术支持。
谢谢、此致、
洛根
洛根、您好!
此致、
-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;
};
谢谢、
洛根
洛根、您好!
您可以尝试以下操作:
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
请帮助我们在播放时无需每次重新设置音量即可获得音频。
谢谢、此致、
洛根