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 18 lsapic_noop_startup (unsigned int irq) 19 { 20 return 0; 21 } 22 23 static void 24 lsapic_noop (unsigned int irq) 25 { 26 /* nothing to do... */ 27 } 28 29 static int lsapic_retrigger(unsigned int irq) 30 { 31 ia64_resend_irq(irq); 32 33 return 1; 34 } 35 36 struct hw_interrupt_type irq_type_ia64_lsapic = { 37 .name = "LSAPIC", 38 .startup = lsapic_noop_startup, 39 .shutdown = lsapic_noop, 40 .enable = lsapic_noop, 41 .disable = lsapic_noop, 42 .ack = lsapic_noop, 43 .end = lsapic_noop, 44 .retrigger = lsapic_retrigger, 45 }; 46