[BACK]Return to irq_trampoline.c CVS log [TXT][DIR] Up to [local] / funnyos / arch / testarm / boot

Annotation of funnyos/arch/testarm/boot/irq_trampoline.c, Revision 1.4

1.1       init        1: /*
1.4     ! nbrk        2:  * $Id: irq_trampoline.c,v 1.3 2007/11/04 22:41:55 init Exp $
1.1       init        3:  */
1.4     ! nbrk        4: #include <sys/types.h>
        !             5:
        !             6: #include <sys/pcb.h>
1.1       init        7:
                      8: /*
1.4     ! nbrk        9:  * IRQ trampoline->
1.1       init       10:  * Will enter here when Core IRQ line is asserted.
                     11:  * IRQ controller driver configures us to call him on assert;
                     12:  * by default (until some irqc attached) we just return doing nothing.
                     13:  */
1.3       init       14:
1.4     ! nbrk       15: void irq_trampoline(struct pcb *iframep);
1.3       init       16: void __do_nothing_and_return(void);
                     17:
1.4     ! nbrk       18: /* default to do nothing (will overrided by some irqc driver) */
        !            19: void   (*irq_trampoline_func)(void) = __do_nothing_and_return;
        !            20:
        !            21: /* interrupt frame pointer */
        !            22: struct pcb *iframep;
        !            23:
1.1       init       24:
                     25: void
                     26: __do_nothing_and_return(void)
                     27: {
                     28:
                     29:        __asm __volatile("mov r1,r1");
                     30: }
                     31:
1.2       init       32:
                     33: void
1.4     ! nbrk       34: irq_trampoline(struct pcb *ifp)
1.2       init       35: {
1.4     ! nbrk       36:
        !            37:        iframep = ifp;
        !            38:
1.2       init       39:        irq_trampoline_func();
                     40: }
                     41:
1.1       init       42:

CVSweb