| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 | 
| Thomas Gleixner | 5c217b6 | 2011-02-04 20:29:37 +0100 | [diff] [blame] | 18 | lsapic_noop_startup (struct irq_data *data) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 19 | { | 
|  | 20 | return 0; | 
|  | 21 | } | 
|  | 22 |  | 
|  | 23 | static void | 
| Thomas Gleixner | 5c217b6 | 2011-02-04 20:29:37 +0100 | [diff] [blame] | 24 | lsapic_noop (struct irq_data *data) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 25 | { | 
| Simon Arlott | 72fdbdc | 2007-05-11 14:55:43 -0700 | [diff] [blame] | 26 | /* nothing to do... */ | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 27 | } | 
|  | 28 |  | 
| Thomas Gleixner | 5c217b6 | 2011-02-04 20:29:37 +0100 | [diff] [blame] | 29 | static int lsapic_retrigger(struct irq_data *data) | 
| Ingo Molnar | c0ad90a | 2006-06-29 02:24:44 -0700 | [diff] [blame] | 30 | { | 
| Thomas Gleixner | 5c217b6 | 2011-02-04 20:29:37 +0100 | [diff] [blame] | 31 | ia64_resend_irq(data->irq); | 
| Ingo Molnar | c0ad90a | 2006-06-29 02:24:44 -0700 | [diff] [blame] | 32 |  | 
|  | 33 | return 1; | 
|  | 34 | } | 
|  | 35 |  | 
| Thomas Gleixner | fb824f4 | 2009-06-10 12:45:00 -0700 | [diff] [blame] | 36 | struct irq_chip irq_type_ia64_lsapic = { | 
| Thomas Gleixner | 5c217b6 | 2011-02-04 20:29:37 +0100 | [diff] [blame] | 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, | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 44 | }; |