Debugging basic BSP tasking functionality

Sebastian Huber sebastian.huber at
Fri Apr 19 07:27:54 UTC 2013

On 04/18/2013 07:39 PM, Matthew J Fletcher wrote:
> I've corrected that, no change. I think the issue is that no handler is getting
> registered. I believe you said previously that ISR_Handler() was the single
> entry point for all interrupt vectors then it works out what vector its called
> on and calls the appropriate handler.
> ARM looks to be the odd one out in that it uses in
> /cpukit/score/cpu/arm/arm_sec_interrupt.S
> I remember now what problem might be, i had to remove the
> _CPU_ISR_install_vector() call which add arm_exc_interrupt because on my
> hardware the vector table at 0x0000000 is mapped to on ARM internal flash
> (which does contain basic interrupt handlers), not RAM.

What do you mean with basic interrupt handlers?  The interrupt 
prologue/epilogue in arm_sec_interrupt.S is there for a purpose.  If you want 
to keep your exception vectors in the flash, then simply use arm_exc_interrupt 
(on 4.10) or _ARMV4_Exception_interrupt (on 4.11) as the entry point for the 
interrupt exception.

> I've now got a sinking feeling that i cant use rtems on my hardware as is. I
> suppose this is a question for Sebastian, but when i rtems_interrupt_handler_
> install() can the handler just be 'arm_exc_interrupt', and the argument the
> vector number ?
> I've got my fingers crossed for the answer.

No, this vector is part of the interrupt extension implementation.

You may have a look at (with Doxygen comments):


I recommend to use the Git master for ARM.  The current Git master has release 

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  : sebastian.huber at
PGP     : Public key available on request.

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

More information about the users mailing list