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.

[参考译文] TAS2563:与 IMX8集成

Guru**** 2481465 points
Other Parts Discussed in Thread: TAS2563

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1170118/tas2563-integration-to-imx8

器件型号:TAS2563

我在将音频输出连接到已连接的扬声器时遇到问题。 我正在使用 Linux 内核版本5.4、并构建了以下网站中的驱动程序: https://git.ti.com/cgit/tas256xsw-android/tas2563-android-driver/。 我正在使用 PDM 分支。 我用两个次要语法修复来修补该驱动程序、以使其进行编译。 我可以通过 I2C 总线与 TAS2563进行通信并读取寄存器。 但是、一旦我使用"aplay"播放声音、我将无法获得扬声器的任何输出。 我确实看到 SDIN1线路上的流量、并且 FSYNC 时钟处于开启状态。 我使用 DTS.README 文件设置了我的设备树。 以下是相关部分:  


Sound-tas2563{
兼容="简单音频卡";
simple-audio-card、name ="tas2563";
simple-audio-card、format ="I2S";
简单音频卡、位时钟反转;
simple-audio-card、frame-master =<和 tas2563cpu>;
simple-audio-card、bitclock-master =<和 tas2563cpu>;
状态="正常";
tas2563cpu:简单音频卡、CPU{
Sound-Dai =<&SAI2>;
di-tdm-slot-num =<2>;
di-tdm-slot-width =<16>;
};

简单音频卡、编解码器{
Sound-Dai =<音频放大器>;
};
};

_________________________________

SAI2{
#sound-di-cells =<0>;
pinctrl-names ="default";
pinctrl-0 =<&pinctrl_SAI2>;
分配的时钟速率=<24576000>;
分配的时钟=<&clk IMX8MP_CLK_SAI2>;
分配的时钟父级=<&clk IMX8MP_AUDIO_PLL1_OUT>;
时钟=<audioix_clk IMX8MP_CLK_AUDIOMIX_SAI2_IPG>、
<clk IMX8MP_CLK_dumme>、
<audioix_clk IMX8MP_CLK_AUDIOMIX_SAI2_MCLK1>、
<clk IMX8MP_CLK_dumme>、
<clk IMX8MP_CLK_dummy>;
时钟名称="bus"、"mclk0"、"mclk1"、"mclk2"、"mclk3";
FSL、SAI-MCLK 方向输出;
状态="正常";
};

_________________________________

AUDIO_AMP:tas2563@4c{
#sound-di-cells =<0>;
reg =<0x4c>;
兼容="ti、tas2563";
TI、RESET-GPIO =<&GPIO_EXPANDER0 0>;
TI、IRQ-GPIO =<&GPIO4 2 0>;
TI、ASI-format =<1>;/* 0、I2S;1、DSP; *
TI、左槽=<0>;/* *
TI、右槽=<1>;/* *
TI、imon-slot-no =<0>;/* *
TI、VMON-SLOT-NO =<2>;/* *
TI、I2S-BITS =<16>;/*支持16、24、32 *
TI、BYPASS-Tmax =<0>;/* 0、非 BYPASS;1、BYPASS *
状态="ok";
};

我们非常感谢您在这方面提供的任何帮助! 我还将附上相关的 logs.e2e.ti.com/.../tas2563_5F00_log.txt

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

    您好、Luis、

    我们的驱动程序专家将查看 您的 DTS 和日志文件 、我们将尽快提供更多意见。

    此致、
    -Ivan Salazar
    应用工程师

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

    您好 Luis

    我可以收集以下信息吗?

    1. 有两种类型的 tas2563:QFN 和 WCSP。 您在项目中使用哪种类型?
    2. 请在  您的系统中删除 tas2563_cal.bin。 并使用 PPC3工具为您自己的项目创建新的 tas2563Ring_PDM.bin、请勿使用 Bitbucket 中的工具。
    3. 与我共享测试文件。根据您共享的日志,它似乎是 MP3文件。 您能否将 wav 文件与16位 PCM、立体声、48kHz 采样率配合使用?
    4. 音频格式是否为 I2S? 请在播放期间使用示波器将 bck 和 WS clk 捕获到 tas2563。
    5. 在回放期间向我转储寄存器。 如下所示的命令:
      i2cset -y -f 0 4c 0 0
      i2cset -y -f 0 4c 7f 0
      i2cset -y -f 0 4c 0 0
      i2cdump -y -f 0 4c

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

    您好、盛豪、

    我使用的是 QFN 封装。

    2.我删除了校准文件。 但是、我无法在 PCC3中安装 TAS2563应用程序。 我不断收到以下消息:

    我是否仍可以在 Bitbucket 中使用该文件?

    我正在使用此测试文件: http://mauvecloud.net/sounds/pcm1644m.wav (16位 PCM、单声道、48kHz)

    4.使用上述文件而不是 MP3会出现以下错误:

    播放波'pcm1644m.wav':sig[401.582279] tas2563 0-004C:tas2563_hw_params、格式:2.
    NED 16位小端序、速率44[401.590899] tas2563 0-004C:tas2563_set_bitwidth 1617
    100 Hz、单声道
    [401.598745] tas2563 0-004C:mnch_size:16
    [401.603601] tas2563 0-004C:BLR_clk_Ratio:32
    [401.609175] tas2563 0-004C:tas2563_slot_config:RET = 0
    [401.616229] tas2563 0-004C:tas2563_SLOT_CONFIG:RET = 0
    [401.623703] tas2563 0-004C:tas2563_slot_config:RET = 0
    [401.633621] tas2563 0-004C:tas2563_SLOT_CONFIG:RET = 0
    [401.642957] tas2563 0-004C:tas2563_SLOT_CONFIG:RET = 0
    [401.648285] tas2563 0-004C:tas2563_hw_params、采样率:44100
    [401.657466] FSL-SAI 30c2000.SAI:无法得出所需的 Tx 速率:1411200
    [401.664538] FSL-SAI 30c2000.SAI:ASOC:无法设置30c2000.SAI HW 参数:-22
    [401.671682] tas2563 0-004C:tas2563_MUTE
    [401.675614] tas2563 0-004C:MUTE:tas2563_MUTE STREAM = 0
    [401.681016] tas2563 0-004C:设置电源状态:2.
    [401.685468] tas2563 0-004C:tas2563_set_power_state:2、mbPowerup 0
    aplay:set_params:1405:无法安装 HW 参数:
    访问:rw_interleaved
    格式:S16_LE
    子格式:标准
    SAMPLE_BITS:16
    FRAME_BITS:16
    通道:1.
    价格:44100
    PERIOD_TIME:(92879 92880)
    Period_size:4096
    周期字节:8192
    期间:4.
    Buffer_Time:(371519 371520)
    Buffer_size:16384
    Buffer_bytes:32768
    tick_time:0

    在 bck 和 WS clk 上未观察到输出

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

    您的平台是否支持44100Hz?  

    似乎是从平台跟踪日志。

    [401.657466] FSL-SAI 30c2000.SAI:无法得出所需的 Tx 速率:1411200
    [401.664538] FSL-SAI 30c2000.SAI:ASOC:无法设置30c2000.SAI HW 参数:-22

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

    我可能需要调整一个时钟配置。 我成功地播放了一个采样率为48000Hz 的 wav 文件。  

    现在、我遇到的问题是音量调节。 我已设法更改数字音量控制寄存器、但将该寄存器更改为任何内容几乎会使扬声器输出完全衰减。 我是否遗漏了什么?

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

    很高兴听到您可以播放 wav 文件。 您将使用哪些命令来更改数字音量?

    为了简化操作、您可以使用平台提供的数字电容量 API。 我的大多数客户也是如此。

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

    我正在使用 i2cset 根据数据表信息更改第0x2页的寄存器0xc~0xF。 您是否正在讨论使用 amixer 更改卷?

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

    是否使用以下 i2c 命令切换到 book0page2,然后设置 vol

    i2cset -y -f 0 4c 0 0
    i2cset -y -f 0 4c 7f 0
    i2cset -y -f 0 4c 0 2

    Another suggestion is that you can change the audio source vol to control digital vol,
    this will consult platform vendor how to adjust platform digital gain