Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


Merge branch 'devel'
[palacios.git] / kitten / include / lwk / interrupt.h
1 #ifndef _LWK_INTERRUPT_H
2 #define _LWK_INTERRUPT_H
3
4 /**
5  * IRQ handler return type.
6  *
7  *    IRQ_NONE means we didn't handle the interrupt.
8  *    IRQ_HANDLED means we did handle the interrupt.
9  *    IRQ_RETVAL(x) returns IRQ_HANDLED if x is non-zero, IRQ_NONE otherwise.
10  */
11 typedef int irqreturn_t;
12 #define IRQ_NONE        (0)
13 #define IRQ_HANDLED     (1)
14 #define IRQ_RETVAL      ((x) != 0)
15
16 /**
17  * IRQ handler prototype.
18  */
19 typedef irqreturn_t (*irq_handler_t)(unsigned int irq, void *dev_id);
20
21 /**
22  * Registers an interrupt handler.
23  */
24 extern int request_irq(unsigned int     irq,
25                        irq_handler_t    handler,
26                        unsigned long    irqflags,
27                        const char       *devname,
28                        void             *dev_id);
29
30 /**
31  * Unregisters an interrupt handler.
32  */
33 extern void free_irq(unsigned int irq, void *dev_id);
34
35 #endif