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:PCM186x 器件+外部时钟电路需要修改器件树

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1252963/am623-device-tree-modifications-needed-for-pcm186x-device-external-clocking-circuit

器件型号:AM623
主题中讨论的其他器件:PCM1864SK-AM62、、 TLV320AIC3106

 团队、

我的客户希望将 PCM1864器件连接到我们的 SK-AM62 (B) EVM。 我看到 Linux 驱动程序在/sound/soc/codecs/pcm186x.c/h 上可用、但在内核中没有找到 PCM186x 的 devicetree 节点的任何示例。 这个方向是否有指针?

系统中的另一个难题是 电路板上有一个由用户空间控制的时钟发生器、用于为 AM623x 和 PCM1864编解码器提供位时钟和帧同步。 这意味着它们都需要在系统中成为时钟从器件、并且无需参与 Linux 即可生成正确的音频时钟。

我在 Sitara 器件中看到的示例似乎都在使用 simple-audio 卡、将"cpu"或"codec"标记为"bitclock-master"和"frame-master"。 如何通过器件树节点将系统中的 AM623和 PCM1864都配置为时钟从设备? 是否可以向 simple-audi-CARD 添加另一个虚拟节点并将其指向为时钟主器件?

杰森

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

    大家好、Jason、

    我建议他们使用时钟树工具来设计自己的系统、并与我们分享该设计、以便了解来自外部源的时钟机制。

    请分享这些信息、本文档: https://www.ti.com/lit/pdf/sprack0

    如果他们能够将编解码器连接到我们的 McASP 并查看下面的 DTS 文件以供参考。

    更多信息可以在 Devicetree 绑定文档中找到、以供参考(简单卡/时钟)。  
    Documentation/devicetree/bindings/Clock/clock-bindings.txt
    我将在内部咨询软件团队以获得更多输入。 我会在收到响应时共享它们。
    希望这对您有所帮助。
    此致、
    苏伦
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Suren、

    在这种情况下不需要时钟树工具。 音频时钟(位时钟、帧同步)由外部生成、源自 CPU (MCASP)和编码(PCM1864)。 以下是系统的简化示意图:

    您分享的文档似乎没有设置 MCASP 和 CODEC 都是时钟从器件、而且除非我漏掉内容、否则似乎也不在 Linux 环境中。

    我已经研究了提供的器件、我们似乎总是放置 TLV320AIC3106并使用编解码器作为时钟主控的简单音频卡。

    我需要帮助的是 PCM1864编解码器和 MCASP 接收外部时钟的示例。 具体来说、我需要有关 devicetree 节点的帮助来实现该功能、而不是有关 MCASP 应如何工作的指针。

    杰森

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

    Jason、

    我已要求我们的软件专家就此提供意见。 会在我收到回复后立即作出响应。 请在下周期待答复。

    此致、

    苏伦

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

    大家好、Jason、

    当前的 simple-audio-card 框架不支持此类情况。 这是一个通用的内核查询,所以我们可以把它发布在不同的论坛或 alsa-devel IRC 上,以获得建议。

    理想情况下、从简单卡节点丢弃位时钟和帧主标志可能刚刚起作用。 客户可以尝试该实验、但请注意、即使它起作用、也是由实现定义的行为、可能在任何上游版本中发生变化。

    另一种方法是编写自定义声卡驱动程序、将 CBP_CFP (编解码器提供程序)传递给 McASP 和 CBC_CFC (编解码器消费者)到编解码器、同时将采样率限制为硬编码的外部框架锁/位时钟。

    您能否与 客户确认为什么要选择此时钟设计?

    编解码器可以将主时钟分频为各种采样率、而不仅仅是单个固定位时钟。

    我可以继续为每个查询创建 MR、以便在以后的版本中得到支持、因为它们是新开发、如果它有所帮助。

    此致、

    苏伦