h8300 drags linux/irqchip.h from asm/irq.h, which is in general a bad idea (asm/*.h should avoid dragging linux/*.h, as it is usually supposed to work the other way around). Move the inclusion of linux/irqchip.h to the single location where it actually matters in the arch code. Reported-by: Guenter Roeck <linux@roeck-us.net> Tested-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/20211028172849.GA701812@roeck-us.net
26 lines
527 B
C
26 lines
527 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _H8300_IRQ_H_
|
|
#define _H8300_IRQ_H_
|
|
|
|
#if defined(CONFIG_CPU_H8300H)
|
|
#define NR_IRQS 64
|
|
#define IRQ_CHIP h8300h_irq_chip
|
|
#define EXT_IRQ0 12
|
|
#define EXT_IRQS 6
|
|
#elif defined(CONFIG_CPU_H8S)
|
|
#define NR_IRQS 128
|
|
#define IRQ_CHIP h8s_irq_chip
|
|
#define EXT_IRQ0 16
|
|
#define EXT_IRQS 16
|
|
#endif
|
|
|
|
static inline int irq_canonicalize(int irq)
|
|
{
|
|
return irq;
|
|
}
|
|
|
|
void h8300_init_ipr(void);
|
|
extern struct irq_chip h8300h_irq_chip;
|
|
extern struct irq_chip h8s_irq_chip;
|
|
#endif /* _H8300_IRQ_H_ */
|