1/* 2 * arch/sh/kernel/cpu/sh3/ex.S 3 * 4 * The SH-3 and SH-4 exception vector table. 5 6 * Copyright (C) 1999, 2000, 2002 Niibe Yutaka 7 * Copyright (C) 2003 - 2006 Paul Mundt 8 * 9 * This file is subject to the terms and conditions of the GNU General Public 10 * License. See the file "COPYING" in the main directory of this archive 11 * for more details. 12 */ 13#include <linux/linkage.h> 14 15 .align 2 16 .data 17 18ENTRY(exception_handling_table) 19 .long exception_error /* 000 */ 20 .long exception_error 21#if defined(CONFIG_MMU) 22 .long tlb_miss_load /* 040 */ 23 .long tlb_miss_store 24 .long initial_page_write 25 .long tlb_protection_violation_load 26 .long tlb_protection_violation_store 27 .long address_error_load 28 .long address_error_store /* 100 */ 29#else 30 .long exception_error ! tlb miss load /* 040 */ 31 .long exception_error ! tlb miss store 32 .long exception_error ! initial page write 33 .long exception_error ! tlb prot violation load 34 .long exception_error ! tlb prot violation store 35 .long exception_error ! address error load 36 .long exception_error ! address error store /* 100 */ 37#endif 38#if defined(CONFIG_SH_FPU) 39 .long fpu_error_trap_handler /* 120 */ 40#else 41 .long exception_error /* 120 */ 42#endif 43 .long exception_error /* 140 */ 44 .long system_call ! Unconditional Trap /* 160 */ 45 .long exception_error ! reserved_instruction (filled by trap_init) /* 180 */ 46 .long exception_error ! illegal_slot_instruction (filled by trap_init) /*1A0*/ 47ENTRY(nmi_slot) 48#if defined (CONFIG_KGDB_NMI) 49 .long kgdb_handle_exception /* 1C0 */ ! Allow trap to debugger 50#else 51 .long exception_none /* 1C0 */ ! Not implemented yet 52#endif 53ENTRY(user_break_point_trap) 54 .long break_point_trap /* 1E0 */ 55 56 /* 57 * Pad the remainder of the table out, exceptions residing in far 58 * away offsets can be manually inserted in to their appropriate 59 * location via set_exception_table_{evt,vec}(). 60 */ 61 .balign 4096,0,4096 62