// SPDX-License-Identifier: GPL-2.0 /* * LSAPIC Interrupt Controller * * This takes care of interrupts that are generated by the CPU's * internal Streamlined Advanced Programmable Interrupt Controller * (LSAPIC), such as the ITC and IPI interrupts. * * Copyright (C) 1999 VA Linux Systems * Copyright (C) 1999 Walt Drummond <drummond@valinux.com> * Copyright (C) 2000 Hewlett-Packard Co * Copyright (C) 2000 David Mosberger-Tang <davidm@hpl.hp.com> */ #include <linux/sched.h> #include <linux/irq.h> static unsigned int lsapic_noop_startup (struct irq_data *data) { return 0; } static void lsapic_noop (struct irq_data *data) { /* nothing to do... */ } static int lsapic_retrigger(struct irq_data *data) { ia64_resend_irq(data->irq); return 1; } struct irq_chip irq_type_ia64_lsapic = { .name = "LSAPIC", .irq_startup = lsapic_noop_startup, .irq_shutdown = lsapic_noop, .irq_enable = lsapic_noop, .irq_disable = lsapic_noop, .irq_ack = lsapic_noop, .irq_retrigger = lsapic_retrigger, };