mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-30 23:49:42 +02:00
7e7649baa9
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31546 3c298f89-4303-0410-b956-a3cf2f4a3e73
28 lines
890 B
Diff
28 lines
890 B
Diff
From 53cfdf92d9b68f5dac006853dd6727d7bf666b17 Mon Sep 17 00:00:00 2001
|
|
From: Alison Wang <b18965@freescale.com>
|
|
Date: Thu, 4 Aug 2011 09:59:44 +0800
|
|
Subject: [PATCH 19/52] Fix the format field for the Coldfire exception frame
|
|
|
|
Different with M68K, the correct format field encoding
|
|
for ColdFire should be 4, 5, 6 or 7.
|
|
|
|
Signed-off-by: Alison Wang <b18965@freescale.com>
|
|
---
|
|
arch/m68k/mm/fault.c | 4 ++++
|
|
1 files changed, 4 insertions(+), 0 deletions(-)
|
|
|
|
--- a/arch/m68k/mm/fault.c
|
|
+++ b/arch/m68k/mm/fault.c
|
|
@@ -45,7 +45,11 @@ int send_fault_sig(struct pt_regs *regs)
|
|
regs->stkadj = frame_extra_sizes[regs->format];
|
|
tregs = (struct pt_regs *)((ulong)regs + regs->stkadj);
|
|
tregs->vector = regs->vector;
|
|
+#ifdef CONFIG_COLDFIRE
|
|
+ tregs->format = regs->stkadj + 4;
|
|
+#else
|
|
tregs->format = 0;
|
|
+#endif
|
|
tregs->pc = fixup->fixup;
|
|
tregs->sr = regs->sr;
|
|
return -1;
|