Merge tag 'platform-drivers-x86-v4.15-1' of git://git.infradead.org/linux-platform...
[platform/kernel/linux-starfive.git] / include / linux / irq_poll.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef IRQ_POLL_H
3 #define IRQ_POLL_H
4
5 struct irq_poll;
6 typedef int (irq_poll_fn)(struct irq_poll *, int);
7
8 struct irq_poll {
9         struct list_head list;
10         unsigned long state;
11         int weight;
12         irq_poll_fn *poll;
13 };
14
15 enum {
16         IRQ_POLL_F_SCHED        = 0,
17         IRQ_POLL_F_DISABLE      = 1,
18 };
19
20 extern void irq_poll_sched(struct irq_poll *);
21 extern void irq_poll_init(struct irq_poll *, int, irq_poll_fn *);
22 extern void irq_poll_complete(struct irq_poll *);
23 extern void irq_poll_enable(struct irq_poll *);
24 extern void irq_poll_disable(struct irq_poll *);
25
26 #endif