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.
工具与软件:
您好、TI 工程师:
目前我们要求控制器不能调用 TS2562驱动程序中 snd_soc_di_ops 结构中的函数、如下图所示:
但是、我们可以在 TAS2562驱动程序中配置寄存器。
我的问题是:在这种情况下、TAS2562是否支持以任何采样速率(8k、16k、32k、48k)和任何采样位数(16位、32位)播放音频?
您好!
我将该主题帖重新分配给正确的人员、 因为今天是美国的假期,有人会在明天结束之前回到你身边。 感谢您的耐心。
此致、
Nayeem
您从何处获得驱动器? 您的平台上的操作系统是什么? 如果是 Linux 或 Android、请告诉我内核版本。
TAS2562的默认设置可以自动检测采样率、因此您无需关心输入音频流的采样率是多少。 您需要关心的是位宽度、即对位成员进行采样。 该参数可以在 Linux 系统中通过 hw_param 接口进行传递。
尊敬的 Shenghao:
感谢您的帮助。
使用的代码为: https://github.com/torvalds/linux/commits/master/sound/soc convencodecs/tas2562.c
根据我们使用的 soc 芯片和项目的实际需求、我们无法调用代码中 snd_soc_di_ops 结构中的函数、如下图所示:
我们是否可以通过配置寄存器来播放任何采样率(8,000,16016000,32032000,44144100,48000)和任何采样位数(8、16、32)的音频? 我可以确保 soc 提供正确和标准的 I2S 时序。
首先、您必须注册 i2c 设备、然后注册声卡。 那么您使用什么类型的硬件平台呢?
有两个不同的硬件寄存器、一个是 ACPI、另一个是 devicetree。
这是器件树的示例
ti、tas2562.yaml«声音«绑定«devicetree«文档- kernel/git/Torvalds/linux.git - Linux 内核源树
硬件注册成功后、系统可以调用 tas2562_speaker_dai_ops。