Message ID | 1276838958-28947-2-git-send-email-leoli@freescale.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Kumar Gala |
Headers | show |
diff --git a/arch/powerpc/sysdev/fsl_rio.c b/arch/powerpc/sysdev/fsl_rio.c index f908ba6..954a754 100644 --- a/arch/powerpc/sysdev/fsl_rio.c +++ b/arch/powerpc/sysdev/fsl_rio.c @@ -248,7 +248,8 @@ static int fsl_rio_mcheck_exception(struct pt_regs *regs) const struct exception_table_entry *entry = NULL; unsigned long reason = mfspr(SPRN_MCSR); - if (reason & MCSR_BUS_RBERR) { + /* covers both e500v1/v2 and e500mc */ + if (reason & (MCSR_BUS_RBERR | MCSR_LD)) { reason = in_be32((u32 *)(rio_regs_win + RIO_LTLEDCSR)); if (reason & (RIO_LTLEDCSR_IER | RIO_LTLEDCSR_PRT)) { /* Check if we are prepared to handle this fault */
The original code only covers e500 v1/v2. Signed-off-by: Li Yang <leoli@freescale.com> --- arch/powerpc/sysdev/fsl_rio.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)