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.

[参考译文] AM623:关于将 MCASP2 配置为 I2S 主器件时的 am623 MCASP2 问题

Guru**** 2416110 points
Other Parts Discussed in Thread: AM623, TAC5111

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1529060/am623-about-am623-mcasp2-issue-when-config-mcasp2-as-i2s-master

器件型号:AM623
主题中讨论的其他器件: TAC5111

工具/软件:

你(们)好  

当将 am623 MCASP2 配置 为 I2S 主机时、我使用以下记录命令、它将报告错误。 请帮助您了解原因

警告:速率不准确(请求的= 48000Hz、GOT = 44100H[ 598.784554] DaVinci -McASP 2b20000.audio-controller:过快参考时钟 (96000000)
z)
请尝试使用插头插件
[ 598.793924] DaVinci -McASP 2b20000.audio-controller:采样率降低 400PPM

此致

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

    以下是器件树:

    main_mcasp2_pins_default:main-mcasp2-default-pins{
    pinctrl-single、pins =<
    AM62X_IOPAD (0x178、PIN_OUTPUT、2)/*(AC20) MCASP2_ACLKX */
    AM62X_IOPAD (0x174、PIN_OUTPUT、2)/*(AD21) MCASP2_AFSX */
    AM62X_IOPAD (0x18c、PIN_OUTPUT、2)/*(AC21) MCASP2_AXR0 */
    AM62X_IOPAD (0x094、PIN_INPUT、3)/*(N20) MCASP2_AXR12 */
    >;
    };

    &mcasp2{
    状态=“正常“;
    #sound-dai-cells =<0>;

    pinctrl-names =“default";“;
    pinctrl-0 =<&main_mcasp2_pins_default>;

    OP-MODE =<0>;/* MCASP_IIS_MODE */
    TDM 时隙=<2>;

    serial-dir =</* 0:不活动、1:TX、2:Rx */
    1 0 0 0
    0 0 0 0
    0 0 0 0
    2 0 0 0
    >;
    tx-num-evt =<0>;
    rx-num-evt =<0>;
    };

    codec_audio:声音{
    compatible =“simple-audio-card";“;
    简单音频卡、名称=“Otis-sound";“;
    简单音频卡、格式=“I2S_";“;
    simple-audio-card、bitclock-master =<&sndcpu>;
    simple-audio-card、frame-master =<&sndcpu>;
    ///简单音频卡,位时钟反转;

    sndcpu:简单音频卡、CPU{
    sound-dai =<&mcasp2>;
    };

    sound_master:简单音频卡、编解码器{
    sound-dai =<&tac5111>;
    };

    };

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

    我们使用 Linux SDK 10.01.10.04

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

    尊敬的 BERT:

    如果使用 MCASP 作为主站、

    在 DTS 文件上添加 system-clock-direction-out。  

    此外、将记录在 44.1kHz 而不是 48kHz 下的工作情况。 您是否还可以查看以下主题:

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1271393/am623-mcasp-i2s-master

    此致、

    Suren

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

    您好、 Suren

    感谢您的答复。 现在我发现了另一个问题,当我使用录制命令捕捉音频数据时,它只能得到采样率 88200 无论我设置它,下面的图片是日志,请帮助检查原因,非常感谢   

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

    尊敬的 BERT:

    您在设置中看到的 BLCK 和 WCLK 是否正确? 这些器件的预期值是多少? 似乎会遇到时钟问题。

    此致、

    Suren

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

    您好、 Suren

      从 am623 TRM 开始、 当将 am623 MCASP2 配置 为 I2S 主  器件时、AUXCLK 是生成 AHCLKX 和 ACLKX 的源时钟。   我使用 k3conf 工具来检查 AUXCLK 、是的   96000000。  是否有任何方法可以更改 AUXCLK 值?  

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

    尊敬的 BERT:  

    本周我正在出差、因此我的回复将被延迟。  

    请查看以下主题、我帮助客户理解 AUXCLK、并了解如何在器件树中包括这些内容。

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1519789/am623-sk-am62b-p1-mcasp-issue

    请告诉我、您是否可以在器件树中添加分配的时钟速率参数并设置分配的时钟速率(您在设置中期望的任何 BCLK)。

    此致、

    Suren

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

    您好、 Suren  

     我想我已经理解了 AUXCLK ,从时钟树中,AUXCLK   只能 从 hsdiv8 100Mhz 或 hsdiv6 96Mhz 中选择,对吧?   我更改了 mcasp2 设备树 assigned-clock-partmers   并生效  

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

    我们希望使用采样率 8k Hz 和  BCLK 256k Hz、 当将 AUXCLK 设置 为 100Mhz 或 96Mhz 时、 采样率 和 BCLK 仍然 不准确。  在 将 am623 MCASP2 配置 为 I2S 主器件时、您是否有任何建议来生成准确的时钟?  

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

    尊敬的 BERT:

    如果使用 MCASP 作为主站、则还必须添加  

    例如、根据您要使用的时钟值在 DTS 文件中执行以下操作。

    系统时钟频率=<24576000>;
    系统时钟方向输出;

    分配的时钟速率=<24576000>;

    请在添加这些变量以及分配的时钟、分配的时钟父级后分享您的 DTS 文件、并告知我们它是否有效。

    此致、

    Suren

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

    您好、 Suren  

    下面是我关于声音的 DTS

    mcasp2:音频控制器@2b20000{
    兼容=“ti、am33xx-McASP-AUDIO“;
    REG =<0x00 0x02b20000 0x00 0x2000>、
    0x00 0x02b28000 0x00 0x400>;
    reg-names =“MPU",“,"dat"、"dat";“;</s>“
    中断= 、
    ;
    中断名称=“tx",“,"rx"、"rx";“;</s>“

    DMA =<&MAIN_bcdma 0 0xc502 0>、<&MAIN_bcdma 0 0x4502 0>;
    dma-names =“tx",“,"rx"、"rx";“;</s>“

    Clocks =<&K3_CLKS 192 0>;
    时钟名称=“fck";“;
    Assigned-clocks =<&K3_CLKS 192 0>;
    assigned-clock-parter =<&k3_CLKS 192 2>;
    分配的时钟速率=<24576000>;
    电源域=<&K3_PDS 192 TI_SCI_PD_EXCLUSTE>;
    STATUS =“已禁用“;
    };

    codec_audio:声音{
    compatible =“simple-audio-card";“;
    简单音频卡、名称=“Otis-sound";“;
    简单音频卡、格式=“I2S_";“;
    simple-audio-card、bitclock-master =<&sndcpu>;
    simple-audio-card、frame-master =<&sndcpu>;

    sndcpu:简单音频卡、CPU{
    sound-dai =<&mcasp2>;
    系统时钟频率=<24576000>;
    系统时钟方向输出;
    };

    sound_master:简单音频卡、编解码器{
    sound-dai =<&tac5111>;
    };

    };

    将  assigned-clock-rate=<24576000>添加到 MCASP2 节点后、我使用 k3conf 检查 AUXCLK、它是 24615384、而不是  24576000。请帮助检查

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

    尊敬的 BERT:

    您能否尝试将频率更改为另一个值、因为 SoC 内的分频器仅是整数分频器、不确定是否对 AUXCLK/96Mhz((100MHz 的父时钟)进行分频、以便实现 24576000 可正确整除。  

    但使用现有的设置、您是否能够在编解码器上播放一些内容?

    此致、

    Suren

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

    您能否尝试将频率更改为另一个值、因为 SoC 内的分频器仅是整数分频器、不确定是否对 AUXCLK/96Mhz((100MHz 的父时钟)进行分频、以便实现 24576000 可正确整除。  

      低于 DTS 仍无法 实现 24576000  

     assigned-clock-parter =<&k3_CLKS 192 1>;
    分配的时钟速率=<24576000>;

    但使用现有的设置、您是否能够在编解码器上播放一些内容?

      是的、