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.

Question about Double Interrupts with the GPIO Peripheral on 6657

Hi all,

I use GPIO15 as interrupt sources to the DSP CPU. I use host id #89 when config interrupt.

I have config GPIO as following:

                                  Description                                                                                      Register

(1)Enables all GPIO pins as interrupt sources to the DSP CPU.                                   (BINTEN)

(2)GP15 pin is configured as input pin.                                                                            (DIR)

(3)Enables the falling edge detection for GP15 pin.                                                         (SET_FAL_TRIG)

But I found one falling edge can enter an interrupt routine twice.

I have read wiki :http://processors.wiki.ti.com/index.php/Avoiding_Double_Interrupts_with_the_GPIO_Peripheral

As wiki said,

This scenario can easily be avoided. For a given bank of 16 interrupts it's recommended to use ONLY direct interrupts or ONLY the bank interrupt, but not both.

But how to config direct interrupts or bank interrupt on 6657,or How to resolve the problem.

Best Regards,

Li

  • Only direct interrupts are used on the GPIO's on C66xx. Bank interrupts are not supported.  So this does not effect C66xx devices.

    Best Regards,

    Chad

  • Hi Chad,

    Thanks for your reply.

    I have test it on TMX320C6657L, and make sure the problem exist.

    I didn`t use Rising Edge Interrupt and Falling Edge to same GPIOn at same time.

    So how to bring the problem and how to slove it?

    Best Regards,

    Li

  • Li,

    As I said, the issue of potential Double Interrupts does not affect C6657 devices.  It can only affect devices who's GPIO support both Single and Block Interrupts which C6657's GPIO's does not do this.

    Best Regards,

    Chad

  • Chad,

    I have enable GPIO as interrupt source, set falling interrupt trigger, make GPIO 15 input.

    GPIO 14 output, in gpio15 Isr. Enter GPIO 15 Isr twice.

    How to resolve it.

    Li

  • Have you put an O-scope on the line to see if you're double triggering it (i.e. it's high, it goes low, pulses high and goes low again?)  That's the only way it should be happening. 

    What specifically are you using to have GPIO14 drive the interrupt trigger.  Note that this is not a double trigger event this is two back to back triggers, not two simultaneous triggers.  That is to say that GPIO15 would have received two back to back inputs that triggered events, not one input that triggered two events.

    To correct this you need to make sure only one Falling edge is created.

    Best Regards,

    Chad