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.

[参考译文] AM62X-PET-CALC:如何在 DTB 中配置并从 Linux(A53 域)访问 MCU SPI0 作为 spidev?

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1635902/am62x-pet-calc-how-to-configure-in-dtb-and-access-mcu-spi0-from-linux-a53-domain-as-the-spidev

器件型号: AM62X-PET-CALC

尊敬的 TI 团队:

我正在开发 Texas Instruments AM62x SoC 平台、需要澄清有关 从 Linux (A53) 域访问 MCU SPI0的问题。

当前理解:

  • MCU SPI0 是 MCU 域(M4F 子系统)的一部分
  • 默认情况下、似乎保留了它供 MCU 使用
  • Linux(在 A53 上运行)不会公开 SPI0

要求:
我需要使用 Linux 的 MCU SPI0 与外部 SPI 器件 (FPGA/ADC) 进行通信。

  • 是否可以直接从 Linux (A53) 访问 MCU SPI0?
  • 如果是:
    • 中需要进行哪些更改:
      • 器件树 (DTS)
      • 系统固件/资源分区 (TISCI)

        是否有可用的示例?

如果您能指导我找到正确的方法或分享任何参考设计、将会很有帮助。

此致、
Rajesh D.

 

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

    尊敬的 Rajesh:

    您的理解部分正确。 在 MCU 域中的 MCU SPI0 并不意味着它专门为 M4F 保留。 规则很简单、每个外设一次只能由一个软件实例拥有、由 SYSFW 强制执行。 因此、只要 M4F 固件没有同时声明 MCU SPI0、Linux (A53) 就可以拥有和驱动 MCU SPI0。

    请参阅 AM62x 上多核学院的外设页面。 本页介绍如何在内核之间分配外设,并包括相同的示例 — 多核学院 >外设

    此致、
    Harshith

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

    Rajesh 您好:

    另一个注意事项:

    对于不同电源域中的外设、您还需要确保 AM62x 上的外设之间具有中断连接。 大多数 Linux 驱动程序假定外设和 A53 内核之间有一个中断信号。 如果没有中断信号、则驱动程序需要支持轮询外设以进行更新、而不是依赖中断信号。

    让我们查看 AM62x 技术参考手册 (TRM) 的“Interrupts > Interrupt Architecture > Interrupt Connections Summary“部分

    在这种情况下、A53 的 GIC 和 MCU 域 SPI 之间存在中断连接、因此您可以继续执行 Harshith 的建议。

    此致、

    Nick