OMAP L138 EVM with TMS320C6748 SOM-M1.
If I set flag event 19 to 1, interrupt don't generated.
But, I see that interrupt is generated after reset bits 14-8 in INT_MUX1 from 0x13 to 0x00.
Where is my mistake ?
CSR &= 0xFFFFFFFE; ICR = 0xFFF0; EVTCLR0 |= 0x00080000; // clear event19 flag
INT_MUX1 &= 0xFFFF00FF; INT_MUX1 |= 0x00001300; // int_sel5 (14-8 bits) event19 (USB0_INT DSP)
count= 0; ISTP = (unsigned int)intcVectorTable; ICR = 0xFFF0; IER = 0x000000F3; CSR |= 0x00000001;
for (ii=0; ii<1000; ii++){ EVTSET0 |= 0x00080000; // set event19 flag // No interrupt !!!
for (jj=0; jj<100; jj++){ kk += jj; if (kk > 100) kk= 0; };
};
// No interrupt: count==0 !!!
INT_MUX1 |= 0x00001300; // int_sel5 (14-8 bits) event19 (USB0_INT DSP)
for (ii=0; ii<1000; ii++){
EVTSET0 |= 0x00080000; // set event19 flag
INT_MUX1 &= 0xFFFF00FF; // interrupt !!!
INT_MUX1 |= 0x00001300; // int_sel5 (14-8 bits) event19 (USB0_INT DSP)
for (jj=0; jj<100; jj++){ kk += jj; if (kk > 100) kk= 0; };
};
// count == 1000 !!!
for (ii=0; ii<1000; ii++){
ISR = 0x00000020; // set interrupt // ISR register bit 5 // interrupt also generated !!!
for (jj=0; jj<100; jj++){ kk += jj; if (kk > 100) kk= 0; };
};
interrupt void USB0_Isr(void)
{
count++; EVTCLR0 |= 0x00080000; // clear event19 flag
ICR = 0x00000020; // clear bit 5
// INT_MUX1 |= 0x00001300; // int_sel5 (14-8 bits) event19 (USB0_INT DSP)
}