EDMA Hardware Request on MPC5777C

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

EDMA Hardware Request on MPC5777C

ソリューションへジャンプ
3,366件の閲覧回数
berat24
Contributor III

Hello everyone,

My RFIFO(0) drain flag triggers EDMA relevant channel. On each trigger, I am moving one data from source to destination thanks to this trigger.

I would like to learn whether I have to disable and enable EDMA hardware request on ERQL register to receive another trigger after each data sending.

Sincerely. 

0 件の賞賛
返信
1 解決策
3,335件の閲覧回数
davidtosenovjan
NXP TechSupport
NXP TechSupport

No, it is not so.

After end of major loop -

1) when DREQ is not set - HW request triggers another TCD execution

2) when DREQ is set - HW request does not trigger another TCD execution

元の投稿で解決策を見る

0 件の賞賛
返信
5 返答(返信)
3,361件の閲覧回数
davidtosenovjan
NXP TechSupport
NXP TechSupport

Hi, if you want to stop accepting DMA request after minor loop, then you must have set DREQ bit in transfer control descriptor. Otherwise DMA request is applied again.

0 件の賞賛
返信
3,349件の閲覧回数
berat24
Contributor III

First of all, thank you your respond @davidtosenovjan 

If I do not set DREQ bit, DMA request depends on the situation of request source(for example RFIFO) or it is an error and so I have to set it?

0 件の賞賛
返信
3,343件の閲覧回数
davidtosenovjan
NXP TechSupport
NXP TechSupport

Sorry, I have written it a bit imprecisely. If DREQ is set, HW requests are masked, when the
current major iteration count reaches zero. Thus they are disabled after major loop. But you question was actually related to minor loops (every minor loops starts by one DMA trigger).

If DREQ is not set, after end major loop, TCD is executed again. No error is reported, unless there is not other reason for that.

 

0 件の賞賛
返信
3,339件の閲覧回数
berat24
Contributor III

Hi @davidtosenovjan 

You said 'If DREQ is not set, after end major loop, TCD is executed again.' 

I understand that if DREQ is not set, eDMA run again when citer reaches zero even if there is no other hardware request.

Am I wrong?

0 件の賞賛
返信
3,336件の閲覧回数
davidtosenovjan
NXP TechSupport
NXP TechSupport

No, it is not so.

After end of major loop -

1) when DREQ is not set - HW request triggers another TCD execution

2) when DREQ is set - HW request does not trigger another TCD execution

0 件の賞賛
返信