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.

RM57L843: EMAC Rx interrupt

Part Number: RM57L843

Tool/software:

Hi,

I am currently working on implementing the RX for EMAC module. My plan is to acknowledge the C0RX interrupt in the Rx interrupt handler and then process the Rx packets in a FreeRTOS task and have the following questions.

1. What additional benefits does RXnCP provide when we have C0RX flag for interrupt acknowledgement. When we can simply set C0RX bit for interrupt acknowledgement and then process the packets based on the ownership flag inside freertos task, What additional benefits does RXnCP provide? I am sure I might be missing some crucial detail here.

2. What is the best way to implement deferred processing using FreeRTOS task? Is it to read RXnCP register and right it back to the same register and acknowledging the C0RX flag inside Rx interrupt handler OR should I simply acknowledge C0RX flag in Rx interrupt handler and write each processed packet address to RXnCP register in FreeRTOS task? 

3. If we don't update the RXnCP register in interrupt handler, will EMAC keep generating the Rx interrupt until we write the value it expects?

Thanks,

Ravi