TI中文支持网
TI专业的中文技术问题咨询交流网站

AM5728: 关于EDMA3 LLD的配置问题

Part Number:AM5728

  

/**
 * \briefEDMA3 Initialization
 *
 * This function initializes the EDMA3 Resource Manager for the given EDMA3 controller
 * and opens a EDMA3 RM instance. It internally calls EDMA3_RM_create() and
 * EDMA3_RM_open(), in that order.
 *
 * It also registers interrupt handlers for various EDMA3 interrupts like* transfer completion or error interrupts.
 *
 *  \param  edma3Id 	[IN]		EDMA3 Controller Instance Id (Hardware
 *									instance id, starting from 0)
 *  \param  errorCode 	[IN/OUT]	Error code while opening RM instance
 *  \return EDMA3_RM_Handle: If successfully opened, the API will return the
 *associated RM's instance handle.
 */
EDMA3_RM_Handle edma3init (uint32_t edma3Id, EDMA3_RM_Result *errorCode);

typedef enum
{
CSL_XBAR_DMA_CPU_ID_SYSTEM_DMA,
CSL_XBAR_DMA_CPU_ID_EDMA,
CSL_XBAR_DMA_CPU_ID_DSP1_DMA,
CSL_XBAR_DMA_CPU_ID_DSP2_DMA
} CSL_XbarDmaCpuId;

    我有多个外设需要用到EDMA,使用EDMA3 LLD库,遇到一些问题,希望TI工程师可以答疑。

    问题1:edma3init() 函数的第一个参数 edma3Id,应该如何配置?是否按照  Table 16-125. EDMA_TPCC_PID 里的instance id配置,还是与 CSL_XbarDmaCpuId enum一致?

    问题2:若多个外设都需要使用EDMA,每个外设都需要执行一次edma3init()吗?即EDMA3_RM_Handle是否是共用的?

Nancy Wang:

zy zhao 说:edma3init() 函数的第一个参数 edma3Id,应该如何配置?是否按照  Table 16-125. EDMA_TPCC_PID 里的instance id配置,还是与 CSL_XbarDmaCpuId enum一致?

不一样的,在例程中给出的定义都是不同的。

edma3init中edma3Id :EDMA3 Controller Instance Id (Hardware  instance id, starting from 0) 我的理解是指EDMA控制器的ID号。

建议参考SDK中给出的例程学习配置。

ti-processor-sdk-rtos-am57xx-evm-06.00.00.07-Windows\pdk_am57xx_1_0_15\packages\MyExampleProjects\MCSPI_BasicExample_Dma_idkAM572x_armTestProject

zy zhao 说:若多个外设都需要使用EDMA,每个外设都需要执行一次edma3init()吗?即EDMA3_RM_Handle是否是共用的?

这个需要咨询一下相关工程师再给你回复。

,

zy zhao:

edma3init中edma3Id :EDMA3 Controller Instance Id (Hardware  instance id, starting from 0) 我的理解是指EDMA控制器的ID号。

问题就是,EDMA控制器的ID号我从哪里获取呢?在DSP或者ARM是否可以设置一样的edma3Id?

,

Nancy Wang:

zy zhao 说:

edma3init中edma3Id :EDMA3 Controller Instance Id (Hardware  instance id, starting from 0) 我的理解是指EDMA控制器的ID号。

问题就是,EDMA控制器的ID号我从哪里获取呢?在DSP或者ARM是否可以设置一样的edma3Id?

参考:

e2e.ti.com/…/edma3-on-am5728-rtos-dsp

,

zy zhao:

好的,非常感谢

,

Nancy Wang:

zy zhao 说:    问题2:若多个外设都需要使用EDMA,每个外设都需要执行一次edma3init()吗?即EDMA3_RM_Handle是否是共用的?

我将第二个问题升级到了英文论坛,请等待回复:

e2e.ti.com/…/am5728-edma

,

zy zhao:

好的,感谢回答,我会持续关注

,

Nancy Wang:

不客气。

赞(0)
未经允许不得转载:TI中文支持网 » AM5728: 关于EDMA3 LLD的配置问题
分享到: 更多 (0)