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.

EMAC INTERRUPT

Why I can't get the EMAC interrupt?

I am working on the c6474evm.
I am using the EMAC LOOP back.

I did the following steps:

1.emac control modul
 ECTL_C0_TX_EN = 0xFF;
 ECTL_C0_RX_EN = 0xFF;
 ECTL_C0_RX_THRESH_EN = 0xFF;
 ECTL_C0_MISC_EN = 0xF;

2.emac modul
 EMAC_RXINTMASKSET = 0xFF;
 EMAC_TXINTMASKSET = 0xFF00FF;

3.INTC modul:hook the following events to ISR and enable them
 CSL_INTC_EVENTID_MACINT
 CSL_INTC_EVENTID_MACRXINT
 CSL_INTC_EVENTID_MACTXINT
 CSL_INTC_EVENTID_MACTHRESH

Results:
 RXINTSTATRAW
 RXINTSTATMASKED
 TXINTSTATRAW
 TXINTSTATMASKED
 MACINVECTOR
All of above have the nonzero value,right bits for the interrupts.
In the receive buffer,I get the right data.

But  I can't enter the ISR for any interrupt.
Is there something I did't notice?

Thank for your help.

Regards

  • I use the project in the CD with the EVM board : "evmc6474_v1\evmc6474_v1\tests\emac"

    It use the register level to control the EMAC, not CSL level.
    In the project itself,it can't enter the ISR,
    the author make the ISR in the main ,but not through the interrupt.
    It didn't get in the interrupt at all.

    I don't kwon what's the reason?

     

  • Hi,
    I am using C6455 dsp . AS mentioned above,I have to hook CSL_INTC_EVENTID_MACRXINT and CSL_INTC_EVENTID_MACTXINT events .But these events are not there in csl library.But these are necessary to open the handle to hook ISR.In csl library where these events are defined? Please let me know how to link to ISR?

    Thanks in advance,
    Regards,
    Vaishanvi.