root/arch/mips/include/asm/traps.h

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

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-or-later */
   2 /*
   3  *      Trap handling definitions.
   4  *
   5  *      Copyright (C) 2002, 2003  Maciej W. Rozycki
   6  */
   7 #ifndef _ASM_TRAPS_H
   8 #define _ASM_TRAPS_H
   9 
  10 /*
  11  * Possible status responses for a board_be_handler backend.
  12  */
  13 #define MIPS_BE_DISCARD 0               /* return with no action */
  14 #define MIPS_BE_FIXUP   1               /* return to the fixup code */
  15 #define MIPS_BE_FATAL   2               /* treat as an unrecoverable error */
  16 
  17 extern void (*board_be_init)(void);
  18 extern int (*board_be_handler)(struct pt_regs *regs, int is_fixup);
  19 
  20 extern void (*board_nmi_handler_setup)(void);
  21 extern void (*board_ejtag_handler_setup)(void);
  22 extern void (*board_bind_eic_interrupt)(int irq, int regset);
  23 extern void (*board_ebase_setup)(void);
  24 extern void (*board_cache_error_setup)(void);
  25 
  26 extern int register_nmi_notifier(struct notifier_block *nb);
  27 
  28 #define nmi_notifier(fn, pri)                                           \
  29 ({                                                                      \
  30         static struct notifier_block fn##_nb = {                        \
  31                 .notifier_call = fn,                                    \
  32                 .priority = pri                                         \
  33         };                                                              \
  34                                                                         \
  35         register_nmi_notifier(&fn##_nb);                                \
  36 })
  37 
  38 #endif /* _ASM_TRAPS_H */

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