On 12/07/13 21:45, Vipul Nayyar wrote:
If I don't need that intermediate variable, then my previous patch containing
void cs8900_isr(cs8900_device *cs){
  cs8900_interrupt(LPC22xx_INTERRUPT_EINT2, cs);
}
,should be correct right ?

No, because here you have now the wrong function type. What you need is this:

static void cs8900_isr(void *arg)
{
  cs8900_interrupt(LPC22xx_INTERRUPT_EINT2, arg);
}


I followed the flow of bsp_interrupt_handler_dispatch() & where it leads, but 
couldn't figure out much. Will try again tomorrow.

I still don't understand what mistake I'm doing regarding removing superfluous 
entities from the code. :-(

You should take the time to understand how the generic interrupt framework works. You can compile for example the realview_pbx_a9_qemu BSP and run it on Qemu. Set a break point to bsp_interrupt_handler_dispatch() and see what happens if you single step with the debugger though it.

--
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : [email protected]
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

_______________________________________________
rtems-devel mailing list
[email protected]
http://www.rtems.org/mailman/listinfo/rtems-devel

Reply via email to