irq_poll.h 536 B

12345678910111213141516171819202122232425
  1. #ifndef IRQ_POLL_H
  2. #define IRQ_POLL_H
  3. struct irq_poll;
  4. typedef int (irq_poll_fn)(struct irq_poll *, int);
  5. struct irq_poll {
  6. struct list_head list;
  7. unsigned long state;
  8. int weight;
  9. irq_poll_fn *poll;
  10. };
  11. enum {
  12. IRQ_POLL_F_SCHED = 0,
  13. IRQ_POLL_F_DISABLE = 1,
  14. };
  15. extern void irq_poll_sched(struct irq_poll *);
  16. extern void irq_poll_init(struct irq_poll *, int, irq_poll_fn *);
  17. extern void irq_poll_complete(struct irq_poll *);
  18. extern void irq_poll_enable(struct irq_poll *);
  19. extern void irq_poll_disable(struct irq_poll *);
  20. #endif