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.

[参考译文] MCASP3可以#39;t 生成 DMA 中断

Guru**** 2540720 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/845800/mcasp3-can-t-generate-dma-interrupt

您好、先生、

处理器为 DRA78X、PDK 为4.3.05。

我们在项目中使用 MCASP3作为 Rx、McASP1作为 TX、两者都使用 DSP1 EDMA、McASP1 TX 可以生成 EDMA 回调生成、但 mcasp3 Rx 无法生成 EDMA 回调。

我连接了 mcasp3/dsp1 IRQ/dsp1 EDMA 寄存器、请帮助我们检查它。

此致、

他在织带

e2e.ti.com/.../MCASP3.txt

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

    您好、

    看起来您已在 DSP1交叉开关中正确映射了 McASP3 Rx 事件。

    顺便说一下、DSP1 IRQ 交叉开关仅用于错误中断、因此该设置不应影响正常运行时操作期间的 DMA 回调。

    您是否还更新了以下内容:

    • EDMA 通道事件映射、用于为此 McASP 实例启用 Rx 事件。  默认情况下、仅启用 DSP1 EDMA 事件0和1、所有其他事件都将被屏蔽。
    • McASP3实例 rxDmaEventNumber (通过调用 McASP_socGetInitCfg/McASP_socSetInitCfg)。  默认情况下、此设置为 System EDMA 实例。

    谢谢、
    斯蒂芬

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

    您好、微带:

    McASP3基于您的硬件 DRA78x、充当 I2S 主站、48kHz 采样率、22.576M sysclk2输入

    配置错误如下:

    C66xx_DSP1:GEL 输出:0x48470070 C66xx_DSP1:GEL 输出:= 0x000000A6  

    C66xx_DSP1:GEL 输出:0x48470074 C66xx_DSP1:GEL 输出:= 0x00008000

    1. 分频器6:这不应该是这样。
    2. HCLKRM:不应为1 (请参阅 TRM,接收时钟发生器方框图)

    请修复这些问题并更新状态。

    谢谢。

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

    您好!

    进行了一次其他更改  

    C66xx_DSP1:GEL 输出:0x484700B0 C66xx_DSP1:GEL 输出:= 0x00180023

    修改为使用 ASYNC=1、  

    问题已出现。

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

    尊敬的 Stephen:

    非常感谢你的帮助。

    为什么 DSP1 IRQ 交叉开关仅用于错误中断?

    我找不到任何 DSP1 TPCC 区域 XX 到 DSP1_INTC 的交叉存置映射、但也会发生 DSP EDMA 交叉存置、您能告诉我原因吗? 非常感谢!

    此致、

    他在织带

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

    您好、

    很抱歉,让我澄清我的最后一项发言。  通常、EDMA 中断需要中断 XBAR。  但是、这是由 EDMA LLD 执行的、不需要应用程序或 McASP LLD 进行设置。

    对于 DSP1 EDMA -> DSP1_INTC 路由、 DSP1_IRQ_16到 DSP1_IRQ_20的默认映射包含 DSP1 EDMA CC 中断。  通过查看 TRM 中的 DSP1_INTC 表可能无法清除这一点、但如果查看第4.3.4节 DSP 中断请求、尤其是图4.5、可以更清楚地看到 DSP1 EDMA 中断在内部路由到 DSP1_INTC、不需要任何进一步的配置。

    谢谢、
    斯蒂芬

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

    非常感谢、这个问题得到了解决。