aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/coldfire/patches/019-Fix-the-format-field-for-the-Coldfire-exception-fram.patch
blob: 42c6f1b550f2244820a1737b72cf7234bc8ea8d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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;