1*c718a0baSBibo Mao /* SPDX-License-Identifier: GPL-2.0-only */ 2*c718a0baSBibo Mao 3*c718a0baSBibo Mao #ifndef __ASM_EXCEPTION_H 4*c718a0baSBibo Mao #define __ASM_EXCEPTION_H 5*c718a0baSBibo Mao 6*c718a0baSBibo Mao #include <asm/ptrace.h> 7*c718a0baSBibo Mao #include <linux/kprobes.h> 8*c718a0baSBibo Mao 9*c718a0baSBibo Mao void show_registers(struct pt_regs *regs); 10*c718a0baSBibo Mao 11*c718a0baSBibo Mao asmlinkage void cache_parity_error(void); 12*c718a0baSBibo Mao asmlinkage void noinstr do_ade(struct pt_regs *regs); 13*c718a0baSBibo Mao asmlinkage void noinstr do_ale(struct pt_regs *regs); 14*c718a0baSBibo Mao asmlinkage void noinstr do_bce(struct pt_regs *regs); 15*c718a0baSBibo Mao asmlinkage void noinstr do_bp(struct pt_regs *regs); 16*c718a0baSBibo Mao asmlinkage void noinstr do_ri(struct pt_regs *regs); 17*c718a0baSBibo Mao asmlinkage void noinstr do_fpu(struct pt_regs *regs); 18*c718a0baSBibo Mao asmlinkage void noinstr do_fpe(struct pt_regs *regs, unsigned long fcsr); 19*c718a0baSBibo Mao asmlinkage void noinstr do_lsx(struct pt_regs *regs); 20*c718a0baSBibo Mao asmlinkage void noinstr do_lasx(struct pt_regs *regs); 21*c718a0baSBibo Mao asmlinkage void noinstr do_lbt(struct pt_regs *regs); 22*c718a0baSBibo Mao asmlinkage void noinstr do_watch(struct pt_regs *regs); 23*c718a0baSBibo Mao asmlinkage void noinstr do_syscall(struct pt_regs *regs); 24*c718a0baSBibo Mao asmlinkage void noinstr do_reserved(struct pt_regs *regs); 25*c718a0baSBibo Mao asmlinkage void noinstr do_vint(struct pt_regs *regs, unsigned long sp); 26*c718a0baSBibo Mao asmlinkage void __kprobes do_page_fault(struct pt_regs *regs, 27*c718a0baSBibo Mao unsigned long write, unsigned long address); 28*c718a0baSBibo Mao 29*c718a0baSBibo Mao asmlinkage void handle_ade(void); 30*c718a0baSBibo Mao asmlinkage void handle_ale(void); 31*c718a0baSBibo Mao asmlinkage void handle_bce(void); 32*c718a0baSBibo Mao asmlinkage void handle_sys(void); 33*c718a0baSBibo Mao asmlinkage void handle_bp(void); 34*c718a0baSBibo Mao asmlinkage void handle_ri(void); 35*c718a0baSBibo Mao asmlinkage void handle_fpu(void); 36*c718a0baSBibo Mao asmlinkage void handle_fpe(void); 37*c718a0baSBibo Mao asmlinkage void handle_lsx(void); 38*c718a0baSBibo Mao asmlinkage void handle_lasx(void); 39*c718a0baSBibo Mao asmlinkage void handle_lbt(void); 40*c718a0baSBibo Mao asmlinkage void handle_watch(void); 41*c718a0baSBibo Mao asmlinkage void handle_reserved(void); 42*c718a0baSBibo Mao asmlinkage void handle_vint(void); 43*c718a0baSBibo Mao asmlinkage void noinstr handle_loongarch_irq(struct pt_regs *regs); 44*c718a0baSBibo Mao 45*c718a0baSBibo Mao #endif /* __ASM_EXCEPTION_H */ 46