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.

[参考译文] TDA2:EDMA

Guru**** 2541500 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/726834/tda2-edma

器件型号:TDA2

EDMA 与 QSPI 有何关系? 在我的 TI 驱动程序代码中、RPRC 映像从使用 EDMA 的外部 SDF 读取。 EDMA 使用的是 QSPI。 我无法了解这两者之间的关系? 请澄清。  

提前感谢!

 此致、  
Sagar

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

    从 QSPI 读取应用程序映像有两个选项:CPU copy 和 EDMA。
    EDMA 在两个存储器之间执行高性能数据传输、无需 CPU 干预。
    因此、SBL 使用 EDMA。
    希望这能澄清。

    此致、
    Rishabh
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rishabh、
    感谢您的回复。
    我想澄清的是、EDMA 是使用 QSPI 使用的引脚相同还是不同的引脚。
    源代码中
    void QSPI_ReadSeccontrollers_EDMA (void *dstAddr、uint32_t srcOffsetAddr、uint32_t length、uint32_t EDMA_ch_num)
    这是用于从外部 SDF 读取的函数。 调用以下函数内的函数

    uint32_t EDMA3 EnableTransfer (uint32_t baseAddr、uint32_t chNum、uint32_t trigMode)

    uint32_t RetVal = false;
    开关(TRIG 模式)

    案例 EDMA3_TRIG_MODE_MANUAL:
    IF (chNum < SOC_EDMA3_NUM_DMACH)

    EDMA3SetEvt (baseAddr、chNum);
    RetVal =(uint32_t) true;

    中断;

    案例 EDMA3_TRIG_MODE_QDMA:
    IF (chNum < SOC_EDMA3_NUM_QDMACH)

    EDMA3 EnableQdmaEvt (baseAddr、chNum);
    RetVal =(uint32_t) true;

    中断;

    案例 EDMA3_TRIG_MODE_EVENT:
    IF (chNum < SOC_EDMA3_NUM_DMACH)

    /*清除安全和 EMCR,清除以前的任何 NULL 请求*/
    EDMA3ClrMissEvt (baseAddr、chNum);

    /*将 ESR 设置为启用事件 *
    EDMA3 EnableDmaEvt (baseAddr、chNum);
    RetVal =(uint32_t) true;

    中断;

    默认值:
    RetVal =(uint32_t) false;
    中断;

    返回 RetVal;


    如果您有 EDMA.c、请向我解释此函数的工作原理。

    阴影区域的含义是什么?

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

    我建议您浏览 TDA2 TRM 中的 EDMA 章节。

    此致、
    Rishabh