Browse Source

sh64: Provide EXPEVT helper.

We need a lookup_exception_vector() helper for sh64 in order to use the
common page fault code.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt 13 years ago
parent
commit
f007688a50
1 changed files with 14 additions and 0 deletions
  1. 14 0
      arch/sh/include/asm/traps_64.h

+ 14 - 0
arch/sh/include/asm/traps_64.h

@@ -10,8 +10,22 @@
 #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();