treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
[linux-block.git] / arch / mips / include / asm / traps.h
CommitLineData
2874c5fd 1/* SPDX-License-Identifier: GPL-2.0-or-later */
1da177e4
LT
2/*
3 * Trap handling definitions.
4 *
5 * Copyright (C) 2002, 2003 Maciej W. Rozycki
1da177e4
LT
6 */
7#ifndef _ASM_TRAPS_H
8#define _ASM_TRAPS_H
9
10/*
11 * Possible status responses for a board_be_handler backend.
12 */
70342287 13#define MIPS_BE_DISCARD 0 /* return with no action */
1da177e4
LT
14#define MIPS_BE_FIXUP 1 /* return to the fixup code */
15#define MIPS_BE_FATAL 2 /* treat as an unrecoverable error */
16
17extern void (*board_be_init)(void);
18extern int (*board_be_handler)(struct pt_regs *regs, int is_fixup);
19
e01402b1
RB
20extern void (*board_nmi_handler_setup)(void);
21extern void (*board_ejtag_handler_setup)(void);
411ba7fc 22extern void (*board_bind_eic_interrupt)(int irq, int regset);
6fb97eff 23extern void (*board_ebase_setup)(void);
fcbf1dfd 24extern void (*board_cache_error_setup)(void);
e01402b1 25
34bd92e2
KC
26extern 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
1da177e4 38#endif /* _ASM_TRAPS_H */