162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci#ifndef _ASM_IA64_IRQ_H 362306a36Sopenharmony_ci#define _ASM_IA64_IRQ_H 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci/* 662306a36Sopenharmony_ci * Copyright (C) 1999-2000, 2002 Hewlett-Packard Co 762306a36Sopenharmony_ci * David Mosberger-Tang <davidm@hpl.hp.com> 862306a36Sopenharmony_ci * Stephane Eranian <eranian@hpl.hp.com> 962306a36Sopenharmony_ci * 1062306a36Sopenharmony_ci * 11/24/98 S.Eranian updated TIMER_IRQ and irq_canonicalize 1162306a36Sopenharmony_ci * 01/20/99 S.Eranian added keyboard interrupt 1262306a36Sopenharmony_ci * 02/29/00 D.Mosberger moved most things into hw_irq.h 1362306a36Sopenharmony_ci */ 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci#include <linux/types.h> 1662306a36Sopenharmony_ci#include <linux/cpumask.h> 1762306a36Sopenharmony_ci#include <asm/native/irq.h> 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci#define NR_IRQS IA64_NATIVE_NR_IRQS 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_cistatic __inline__ int 2262306a36Sopenharmony_ciirq_canonicalize (int irq) 2362306a36Sopenharmony_ci{ 2462306a36Sopenharmony_ci /* 2562306a36Sopenharmony_ci * We do the legacy thing here of pretending that irqs < 16 2662306a36Sopenharmony_ci * are 8259 irqs. This really shouldn't be necessary at all, 2762306a36Sopenharmony_ci * but we keep it here as serial.c still uses it... 2862306a36Sopenharmony_ci */ 2962306a36Sopenharmony_ci return ((irq == 2) ? 9 : irq); 3062306a36Sopenharmony_ci} 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ciextern void set_irq_affinity_info (unsigned int irq, int dest, int redir); 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ciint create_irq(void); 3562306a36Sopenharmony_civoid destroy_irq(unsigned int irq); 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci#endif /* _ASM_IA64_IRQ_H */ 38