Catching Interrupts

Mark VanderVoord markvandervoord at yahoo.com
Tue Oct 12 12:15:45 UTC 2004


I am attempting to write a response to an interrupt
under RTEMS for the MIPS AU1100.  I must be missing
something, though, as the handler is never called.  I
register the handler as follows:

   rtems_isr_entry old_entry;

   rtems_status_code status;

   status =
rtems_interrupt_catch(spi_isr,4,&old_entry); //4 is
the SSI0 vector on the AU1100

   if (status != RTEMS_SUCCESSFUL) {
      //handle error
   }

   *(unsigned int*)(0xB16000008) = 0x00000002;
//enable the “done” interrupt
 

This routine returns an RTEMS_SUCCESSFUL.  The
function is as below:


rtems_isr spi_isr(rtems_vector_number vector) { 

   puts("spi_isr");
   *(unsigned int*)(0xB16000004) = 0x0000000E; //clear
interrupts
}

This function is never called, even though polling the
interrupt register shows that it should be.  Any
ideas?

Thanks!

Mark

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 



More information about the users mailing list