sh2(A) exception handler update

Previous thread: sh: update Solution Engine 7343 by Linux Kernel Mailing List on Monday, July 28, 2008 - 10:07 am. (1 message)

Next thread: sh: Export sh7343 VPU and VEU using uio_pdrv_genirq by Linux Kernel Mailing List on Monday, July 28, 2008 - 10:07 am. (1 message)
From: Linux Kernel Mailing List
Date: Monday, July 28, 2008 - 10:07 am

Gitweb:     http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6e80f5...
Commit:     6e80f5e8c4c685eb7bc34c3916e3d986b03f9981
Parent:     cafd63b0076b78bc8f114abbeb724c7e5f5bfe5d
Author:     Yoshinori Sato <ysato@users.sourceforge.jp>
AuthorDate: Thu Jul 10 01:20:03 2008 +0900
Committer:  Paul Mundt <lethal@linux-sh.org>
CommitDate: Mon Jul 28 18:10:34 2008 +0900

    sh2(A) exception handler update
    
    This patch is
    
    By sh2
    - Remove duplicate code
    - Reduce stack usage
    - Cleanup and little optimize
    
    By sh2a
    - Add missing handler(256 to 511)
    - Use sh2a instructions handler
    
    Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
    Signed-off-by: Paul Mundt <lethal@linux-sh.org>
---
 arch/sh/kernel/cpu/sh2/entry.S   |  133 ++++++++-------------
 arch/sh/kernel/cpu/sh2/ex.S      |   15 ++-
 arch/sh/kernel/cpu/sh2a/Makefile |    2 +-
 arch/sh/kernel/cpu/sh2a/entry.S  |  249 ++++++++++++++++++++++++++++++++++++++
 arch/sh/kernel/cpu/sh2a/ex.S     |   72 +++++++++++
 arch/sh/kernel/traps_32.c        |    4 +
 6 files changed, 385 insertions(+), 90 deletions(-)

diff --git a/arch/sh/kernel/cpu/sh2/entry.S b/arch/sh/kernel/cpu/sh2/entry.S
index 0fc8906..ee894e5 100644
--- a/arch/sh/kernel/cpu/sh2/entry.S
+++ b/arch/sh/kernel/cpu/sh2/entry.S
@@ -3,7 +3,7 @@
  *
  * The SH-2 exception entry
  *
- * Copyright (C) 2005,2006 Yoshinori Sato
+ * Copyright (C) 2005-2008 Yoshinori Sato
  * Copyright (C) 2005  AXE,Inc.
  *
  * This file is subject to the terms and conditions of the GNU General Public
@@ -36,43 +36,41 @@ OFF_TRA	=  (16*4+6*4)
 #include <asm/entry-macros.S>
 
 ENTRY(exception_handler)
-	! already saved r0/r1
+	! stack
+	! r0 <- point sp
+	! r1
+	! pc
+	! sr
+	! r0 = temporary
+	! r1 = vector (pseudo EXPEVT / INTEVT / TRA)
 	mov.l	r2,@-sp
 	mov.l	r3,@-sp
-	mov	r0,r1
 	cli
 	mov.l	$cpu_mode,r2
 	mov.l	@r2,r0
 	mov.l	@(5*4,r15),r3	! previous ...
Previous thread: sh: update Solution Engine 7343 by Linux Kernel Mailing List on Monday, July 28, 2008 - 10:07 am. (1 message)

Next thread: sh: Export sh7343 VPU and VEU using uio_pdrv_genirq by Linux Kernel Mailing List on Monday, July 28, 2008 - 10:07 am. (1 message)