Commit ef9247ef authored by Paul Mundt's avatar Paul Mundt

sh: Tidy up the SH-3 exception vector table.

Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent d88a3ea6
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* The SH-3 and SH-4 exception vector table. * The SH-3 and SH-4 exception vector table.
* Copyright (C) 1999, 2000, 2002 Niibe Yutaka * Copyright (C) 1999, 2000, 2002 Niibe Yutaka
* Copyright (C) 2003 - 2006 Paul Mundt * Copyright (C) 2003 - 2008 Paul Mundt
* *
* This file is subject to the terms and conditions of the GNU General Public * 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 * License. See the file "COPYING" in the main directory of this archive
...@@ -12,13 +12,30 @@ ...@@ -12,13 +12,30 @@
*/ */
#include <linux/linkage.h> #include <linux/linkage.h>
#if !defined(CONFIG_MMU)
#define tlb_miss_load exception_error
#define tlb_miss_store exception_error
#define initial_page_write exception_error
#define tlb_protection_violation_load exception_error
#define tlb_protection_violation_store exception_error
#define address_error_load exception_error
#define address_error_store exception_error
#endif
#if !defined(CONFIG_SH_FPU)
#define fpu_error_trap_handler exception_error
#endif
#if !defined(CONFIG_KGDB_NMI)
#define kgdb_handle_exception exception_error
#endif
.align 2 .align 2
.data .data
ENTRY(exception_handling_table) ENTRY(exception_handling_table)
.long exception_error /* 000 */ .long exception_error /* 000 */
.long exception_error .long exception_error
#if defined(CONFIG_MMU)
.long tlb_miss_load /* 040 */ .long tlb_miss_load /* 040 */
.long tlb_miss_store .long tlb_miss_store
.long initial_page_write .long initial_page_write
...@@ -26,30 +43,13 @@ ENTRY(exception_handling_table) ...@@ -26,30 +43,13 @@ ENTRY(exception_handling_table)
.long tlb_protection_violation_store .long tlb_protection_violation_store
.long address_error_load .long address_error_load
.long address_error_store /* 100 */ .long address_error_store /* 100 */
#else
.long exception_error ! tlb miss load /* 040 */
.long exception_error ! tlb miss store
.long exception_error ! initial page write
.long exception_error ! tlb prot violation load
.long exception_error ! tlb prot violation store
.long exception_error ! address error load
.long exception_error ! address error store /* 100 */
#endif
#if defined(CONFIG_SH_FPU)
.long fpu_error_trap_handler /* 120 */ .long fpu_error_trap_handler /* 120 */
#else
.long exception_error /* 120 */
#endif
.long exception_error /* 140 */ .long exception_error /* 140 */
.long system_call ! Unconditional Trap /* 160 */ .long system_call ! Unconditional Trap /* 160 */
.long exception_error ! reserved_instruction (filled by trap_init) /* 180 */ .long exception_error ! reserved_instruction (filled by trap_init) /* 180 */
.long exception_error ! illegal_slot_instruction (filled by trap_init) /*1A0*/ .long exception_error ! illegal_slot_instruction (filled by trap_init) /*1A0*/
ENTRY(nmi_slot) ENTRY(nmi_slot)
#if defined (CONFIG_KGDB_NMI)
.long kgdb_handle_exception /* 1C0 */ ! Allow trap to debugger .long kgdb_handle_exception /* 1C0 */ ! Allow trap to debugger
#else
.long exception_none /* 1C0 */ ! Not implemented yet
#endif
ENTRY(user_break_point_trap) ENTRY(user_break_point_trap)
.long break_point_trap /* 1E0 */ .long break_point_trap /* 1E0 */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment