Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* |
2 | * LSAPIC Interrupt Controller | |
3 | * | |
4 | * This takes care of interrupts that are generated by the CPU's | |
5 | * internal Streamlined Advanced Programmable Interrupt Controller | |
6 | * (LSAPIC), such as the ITC and IPI interrupts. | |
7 | * | |
8 | * Copyright (C) 1999 VA Linux Systems | |
9 | * Copyright (C) 1999 Walt Drummond <drummond@valinux.com> | |
10 | * Copyright (C) 2000 Hewlett-Packard Co | |
11 | * Copyright (C) 2000 David Mosberger-Tang <davidm@hpl.hp.com> | |
12 | */ | |
13 | ||
14 | #include <linux/sched.h> | |
15 | #include <linux/irq.h> | |
16 | ||
17 | static unsigned int | |
5c217b60 | 18 | lsapic_noop_startup (struct irq_data *data) |
1da177e4 LT |
19 | { |
20 | return 0; | |
21 | } | |
22 | ||
23 | static void | |
5c217b60 | 24 | lsapic_noop (struct irq_data *data) |
1da177e4 | 25 | { |
72fdbdce | 26 | /* nothing to do... */ |
1da177e4 LT |
27 | } |
28 | ||
5c217b60 | 29 | static int lsapic_retrigger(struct irq_data *data) |
c0ad90a3 | 30 | { |
5c217b60 | 31 | ia64_resend_irq(data->irq); |
c0ad90a3 IM |
32 | |
33 | return 1; | |
34 | } | |
35 | ||
fb824f48 | 36 | struct irq_chip irq_type_ia64_lsapic = { |
5c217b60 TG |
37 | .name = "LSAPIC", |
38 | .irq_startup = lsapic_noop_startup, | |
39 | .irq_shutdown = lsapic_noop, | |
40 | .irq_enable = lsapic_noop, | |
41 | .irq_disable = lsapic_noop, | |
42 | .irq_ack = lsapic_noop, | |
43 | .irq_retrigger = lsapic_retrigger, | |
1da177e4 | 44 | }; |