| /* | |
| * Copyright (C) 2000, 2001 Paolo Alberelli | |
| * Copyright (C) 2003 Paul Mundt | |
| * Copyright (C) 2004 Richard Curnow | |
| * | |
| * This file is subject to the terms and conditions of the GNU General Public | |
| * License. See the file "COPYING" in the main directory of this archive | |
| * for more details. | |
| */ | |
| #ifndef __ASM_SH_TRAPS_64_H | |
| #define __ASM_SH_TRAPS_64_H | |
| #include <cpu/registers.h> | |
| extern void phys_stext(void); | |
| #define lookup_exception_vector() \ | |
| ({ \ | |
| unsigned long _vec; \ | |
| \ | |
| __asm__ __volatile__ ( \ | |
| "getcon " __EXPEVT ", %0\n\t" \ | |
| : "=r" (_vec) \ | |
| ); \ | |
| \ | |
| _vec; \ | |
| }) | |
| static inline void trigger_address_error(void) | |
| { | |
| phys_stext(); | |
| } | |
| #define BUILD_TRAP_HANDLER(name) \ | |
| asmlinkage void name##_trap_handler(unsigned int vec, struct pt_regs *regs) | |
| #define TRAP_HANDLER_DECL | |
| #endif /* __ASM_SH_TRAPS_64_H */ |