1/* 2 * Copyright (C) 2000, 2001 Paolo Alberelli 3 * Copyright (C) 2003 Paul Mundt 4 * Copyright (C) 2004 Richard Curnow 5 * 6 * This file is subject to the terms and conditions of the GNU General Public 7 * License. See the file "COPYING" in the main directory of this archive 8 * for more details. 9 */ 10#ifndef __ASM_SH_TRAPS_64_H 11#define __ASM_SH_TRAPS_64_H 12 13#include <cpu/registers.h> 14 15extern void phys_stext(void); 16 17#define lookup_exception_vector() \ 18({ \ 19 unsigned long _vec; \ 20 \ 21 __asm__ __volatile__ ( \ 22 "getcon " __EXPEVT ", %0\n\t" \ 23 : "=r" (_vec) \ 24 ); \ 25 \ 26 _vec; \ 27}) 28 29static inline void trigger_address_error(void) 30{ 31 phys_stext(); 32} 33 34#define BUILD_TRAP_HANDLER(name) \ 35asmlinkage void name##_trap_handler(unsigned int vec, struct pt_regs *regs) 36#define TRAP_HANDLER_DECL 37 38#endif /* __ASM_SH_TRAPS_64_H */ 39