diff options
author | Becky Bruce <becky.bruce@freescale.com> | 2007-08-02 16:37:15 -0400 |
---|---|---|
committer | Kumar Gala <galak@kernel.crashing.org> | 2007-08-17 14:22:28 -0400 |
commit | 86d7a9a9c4775f864e6bc5f5da66ef9ea3715734 (patch) | |
tree | 43e7a2d1b54c10e28d8607d15c454ea6556f764c /arch | |
parent | b66510cb9992d204f216049e9c01d432c7635f6c (diff) |
[POWERPC] Fix FSL BookE machine check reporting
Reserved MCSR bits on FSL BookE parts may have spurious values
when mcheck occurs. Mask these off when printing the MCSR to
avoid confusion. Also, get rid of the MCSR_GL_CI bit defined
for e500 - this bit doesn't actually have any meaning.
Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/kernel/traps.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c index 2bb1cb911783..d8502e377518 100644 --- a/arch/powerpc/kernel/traps.c +++ b/arch/powerpc/kernel/traps.c | |||
@@ -299,7 +299,7 @@ static inline int check_io_access(struct pt_regs *regs) | |||
299 | #ifndef CONFIG_FSL_BOOKE | 299 | #ifndef CONFIG_FSL_BOOKE |
300 | #define get_mc_reason(regs) ((regs)->dsisr) | 300 | #define get_mc_reason(regs) ((regs)->dsisr) |
301 | #else | 301 | #else |
302 | #define get_mc_reason(regs) (mfspr(SPRN_MCSR)) | 302 | #define get_mc_reason(regs) (mfspr(SPRN_MCSR) & MCSR_MASK) |
303 | #endif | 303 | #endif |
304 | #define REASON_FP ESR_FP | 304 | #define REASON_FP ESR_FP |
305 | #define REASON_ILLEGAL (ESR_PIL | ESR_PUO) | 305 | #define REASON_ILLEGAL (ESR_PIL | ESR_PUO) |
@@ -414,8 +414,6 @@ void machine_check_exception(struct pt_regs *regs) | |||
414 | printk("Data Cache Push Parity Error\n"); | 414 | printk("Data Cache Push Parity Error\n"); |
415 | if (reason & MCSR_DCPERR) | 415 | if (reason & MCSR_DCPERR) |
416 | printk("Data Cache Parity Error\n"); | 416 | printk("Data Cache Parity Error\n"); |
417 | if (reason & MCSR_GL_CI) | ||
418 | printk("Guarded Load or Cache-Inhibited stwcx.\n"); | ||
419 | if (reason & MCSR_BUS_IAERR) | 417 | if (reason & MCSR_BUS_IAERR) |
420 | printk("Bus - Instruction Address Error\n"); | 418 | printk("Bus - Instruction Address Error\n"); |
421 | if (reason & MCSR_BUS_RAERR) | 419 | if (reason & MCSR_BUS_RAERR) |