root/arch/sh/include/asm/hw_irq.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 #ifndef __ASM_SH_HW_IRQ_H
   3 #define __ASM_SH_HW_IRQ_H
   4 
   5 #include <linux/init.h>
   6 #include <linux/sh_intc.h>
   7 #include <linux/atomic.h>
   8 
   9 extern atomic_t irq_err_count;
  10 
  11 struct ipr_data {
  12         unsigned char irq;
  13         unsigned char ipr_idx;          /* Index for the IPR registered */
  14         unsigned char shift;            /* Number of bits to shift the data */
  15         unsigned char priority;         /* The priority */
  16 };
  17 
  18 struct ipr_desc {
  19         unsigned long *ipr_offsets;
  20         unsigned int nr_offsets;
  21         struct ipr_data *ipr_data;
  22         unsigned int nr_irqs;
  23         struct irq_chip chip;
  24 };
  25 
  26 void register_ipr_controller(struct ipr_desc *);
  27 
  28 void __init plat_irq_setup(void);
  29 void __init plat_irq_setup_sh3(void);
  30 void __init plat_irq_setup_pins(int mode);
  31 
  32 enum { IRQ_MODE_IRQ, IRQ_MODE_IRQ7654, IRQ_MODE_IRQ3210,
  33        IRQ_MODE_IRL7654_MASK, IRQ_MODE_IRL3210_MASK,
  34        IRQ_MODE_IRL7654, IRQ_MODE_IRL3210 };
  35 
  36 #endif /* __ASM_SH_HW_IRQ_H */

/* [<][>][^][v][top][bottom][index][help] */