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.

[参考译文] TDA4VEN-Q1:如何启用 mcspi 从模式放大器;DMA?

Guru**** 2462990 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1456314/tda4ven-q1-how-to-enable-mcspi-slave-mode-dma

器件型号:TDA4VEN-Q1

工具与软件:

尊敬的 TI 专家:

HW Env:我们自己的 TDA4Ven 板

SW 编码:SDK10.0.5

但我无法通过逻辑分析仪捕获 TDA4发送的数据。 这是由于 DMA 无效造成的吗?

此致。

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

    指定的专家正在休假、请预计会延迟回复。

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

    尊敬的 Diwakar:

    这里有更新吗?

    此致。

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

    尊敬的 JC:

    为什么在 Linux 驱动器中的 SPI 中需要 DMA 和从模式? 您能详细说明一下吗?  

    此致、

    Brijesh

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

    您好、Brijesh:

    由于 SPI 作为主设备在 CPU 上的使用率较高、请访问  https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1455573/tda4ven-q1-spi-performance-issues/5589563?tisearch=e2e-sitesearch&keymatch=%2520user%253A512804#5589563上的此链接 我们目前正在尝试其他解决方案  

    目前、我们有一些材料可指导我们将 SPI 作为从站和 DMA 实施。 对于 SPI 作为主器件、我们不知道是否可以使用 DMA 以及如何启用 DMA。

    此致。

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

    尊敬的 JC:

    在本例中、让我们继续讨论以下线程、并在 DMA 处理下述线程时启用从模式。

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1455573/tda4ven-q1-spi-performance-issues/5589563#5589563

    此致、

    Brijesh  

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

    您好!

    + DMA =<&MAIN_pktdma 0xc308 0>、<&MAIN_pktdma 0x4308 0>;
    + dma-names ="tx0"、"rx0";

    这对我来说是正确的。

    我看到您进行了修改。 我是否可以知道为什么评论了"+    //ti,windir-d0-out-D1-in;"?

    &MAIN_SPI2{
    pinctrl-names ="默认值";
    pinctrl-0 =<&SPI2_PINS_DEFAULT>;
    - ti,windir-d0-out-D1-in;
    +//ti,windir-d0-out-D1-in;
    状态="正常";
    spidev@0{
    spi-max-Frequency =<24000000>;
    @@-1148、3 +1148、13 @@ spidev@0{
    兼容="ti、spi-evm";
    };
    };
    +
    +&MAIN_SPI2{
    + pinctrl-0 =<&SPI2_PINS_DEFAULT>;
    + SPI 从设备;
    + slave@0{
    + reg =<0>;
    + spi-max-Frequency =<24000000>;
    + compatible ="ti、spi-evm";
    +};
    +};

    有两个 MAIN_SPI2节点的原因是什么?

    此致

    Tarun Mukesh

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

    尊敬的 Tarun Mukes:

    我看到您的修改。 我是否可以知道为什么评论了"+    //ti,windir-d0-out-D1-in;"?[/QUOT]

    此修改旨在解决 MISO 和 MOSI 引脚的配置问题。 当 TDA4用作 SPI MSAter 时、该配置必须存在。 有关详细信息、请参阅此链接 TDA4VEN-Q1:如何在内核中启用 SPI 驱动程序-处理器论坛-处理器- TI E2E 支持论坛;当 TDA4用作 SPI 从设备时、我阻止了此配置。

    具有两个 MAIN_SPI2节点的原因是什么?

    一个节点用于配置 spidev 驱动程序、另一个节点用于配置 SPID 从站。

    此致。

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

    尊敬的 Xie:

    根据设计、SPI 应该为主器件或从器件、但不能同时作为两者。 您能否注释一个 MAIN_SPI2 OUT、因为第二个实例部分覆盖第一个实例、并将节点定义为主器件或从器件?

    此致、

    Takuma

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

    你好、Takuma、

    根据您的建议、我只保留了一个 MAIN_SPI2节点、但 tda4ven 似乎没有发送任何数据(mosi)。 您能否检查我的修改是否正确和有效?

    e2e.ti.com/.../spi_2D00_slave-mode_2D00_and_2D00_dma-enable.txt

    此致。

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

    你好、Ajins、

    感谢您的参与。 负责处理此线程的 Takuma 正在旅行、必须能够在周一查看。

    谢谢。

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

    尊敬的 Xie JC:

    关于该主题的任何进一步更新/问题? 您是否能够将 DMA 用于 SPI 以及使用 DMA 降低总体 CPU 负载?  

    此致、

    Brijesh

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

    您好、Brijesh:

    我想有关的最新消息是在一个月前提供的、但尚未收到任何反馈。 在 SPI 中高 CPU 使用率的问题尚未解决。

    我在一个月前更新了以下修改:

    此致。

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

    尊敬的 Xie JC:

    对于延迟、我们深表歉意。 您是否可以尝试切换 <&MAIN_pktdma 0xc308 0>和<&MAIN_pktdma 0x4308 0>? 也就是说、将 <&MAIN_pktdma 0xc308 0>映射到 rx0 name 而不是 tx0 name?

    此致、

    Takuma