1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef IRQ_POLL_H 3#define IRQ_POLL_H 4 5struct irq_poll; 6typedef int (irq_poll_fn)(struct irq_poll *, int); 7 8struct irq_poll { 9 struct list_head list; 10 unsigned long state; 11 int weight; 12 irq_poll_fn *poll; 13}; 14 15enum { 16 IRQ_POLL_F_SCHED = 0, 17 IRQ_POLL_F_DISABLE = 1, 18}; 19 20extern void irq_poll_sched(struct irq_poll *); 21extern void irq_poll_init(struct irq_poll *, int, irq_poll_fn *); 22extern void irq_poll_complete(struct irq_poll *); 23extern void irq_poll_enable(struct irq_poll *); 24extern void irq_poll_disable(struct irq_poll *); 25 26#endif 27