TC275 DMA Configuration

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
User18735
Level 2
Level 2
10 replies posted 5 replies posted First reply posted
Hello All,

I am facing a problem in configuring the DMA Controller i.e. configuring the Move Engine(MEx) of an active DMA channel for two processes:
1. Double Destination Buffer
2. DMA Channel transfer Interrupt Service Request

Does anyone has experienced the same problem. Please could you help me for this problem?
Hoping for a quick reply.

Thanking you!!

Regards,
Neeraj Singhal
0 Likes
5 Replies
User16286
Level 4
Level 4
First like received
In my version of iLLD, the DMA library was broken and failed to setup the interrupt.
You should check to see if you have the same problem.
No, I cannot give you code.
Good luck.

Toshi
0 Likes
User18735
Level 2
Level 2
10 replies posted 5 replies posted First reply posted
Hi Toshi,

Thanks for replying! Could you tell me which version of iLLD library do you have? and Which part was broken for you?
Could you please elaborate so that I get to know what to check?

Regards,
Neeraj
0 Likes
User16286
Level 4
Level 4
First like received
NeerajSDI wrote:
Hi Toshi,

Thanks for replying! Could you tell me which version of iLLD library do you have? and Which part was broken for you?
Could you please elaborate so that I get to know what to check?

Regards,
Neeraj


Check if your IfxDma_Dma_initChannel() calls IfxSrc_init() in it.
If there are no calls to IfxSrc_init(), then it's not configuring the interrupt.

Toshi
0 Likes
User18735
Level 2
Level 2
10 replies posted 5 replies posted First reply posted
Hi Toshi,

I have checked the IfxDma_Dma_initChannel() function in IfxDma_Dma.c there is IfxSrc_init() present.

volatile Ifx_SRC_SRCR *src = IfxDma_getSrcPointer(channel->dma, channel->channelId);
IfxSrc_init(src, config->channelInterruptTypeOfService, config->channelInterruptPriority);
IfxSrc_enable(src);

When I transfer data from peripheral (UART) to Mem it goes through a SRC for UART RX pin.

Do I need to make SRC for DMA in order to receive the data from memory to peripheral?


Regards,
Neeraj
0 Likes
User16286
Level 4
Level 4
First like received
The code looks correct.

The SRC is for handling the interrupt. You need to read the TC21x/TC22x/TC23x Family reference manual.

Toshi
0 Likes