interrupt handler in arm question

subin gangadharan subingangadharan at gmail.com
Sat Dec 10 16:31:49 EST 2011


Hi All,

I am trying to understand how the interrupt handler in arm working.By
looking at the code,what I understood,when an interrupt
happens arm disables the irq, saves the cpsr to spsr,save current pc
to lr and switches to irq mode.

So in case of interrupt it branches to the vector_irq and there it
saves some registers and depending on which context
its happened,it will call __irq_user or __irq_svc.But before that it
switches to the supervisory mode.

Here I got confused,because in this case user registered handler will
be executed in supervisory mode.
I was thinking interrupt handler will always be executed in interrupt mode.

Could any one please give some pointers on this.


-- 
With Regards
Subin Gangadharan

I am not afraid and I am also not afraid of being afraid.



More information about the Kernelnewbies mailing list