mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-12-13 08:45:21 +02:00
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;
|