Re: [PATCH 1/21] [POWERPC] Reworking machine check handling and Fix 440/440A
On Sun, 23 Dec 2007 19:32:10 -0600 Josh Boyer <[EMAIL PROTECTED]> wrote: > On Fri, 21 Dec 2007 15:39:21 +1100 > Benjamin Herrenschmidt <[EMAIL PROTECTED]> wrote: > > > Index: linux-merge/arch/powerpc/kernel/traps.c > > === > > --- linux-merge.orig/arch/powerpc/kernel/traps.c2007-12-20 > > 11:34:43.0 +1100 > > +++ linux-merge/arch/powerpc/kernel/traps.c 2007-12-20 11:35:40.0 > > +1100 > > [snip] > > > -#elif defined (CONFIG_E500) > > + return 0; > > +} > > +#elif defined(CONFIG_E500) > > +int machine_check_e500(struct pt_regs *regs) > > This... > > > +{ > > + unsigned long reason = get_mc_reason(regs); > > + > > printk("Machine check in kernel mode.\n"); > > printk("Caused by (from MCSR=%lx): ", reason); > > > > @@ -403,7 +416,14 @@ static int generic_machine_check_excepti > > printk("Bus - Instruction Parity Error\n"); > > if (reason & MCSR_BUS_RPERR) > > printk("Bus - Read Parity Error\n"); > > -#elif defined (CONFIG_E200) > > + > > + return 0; > > +} > > +#elif defined(CONFIG_E200) > > +int machine_check_e200(struct pt_regs *regs) > > ... and this cause build failures for most of the mpc8xxx defconfigs. > The reason is that e200 and e500 are both lumped under CONFIG_FSL_BOOKE > in cputable.c, but you have them segregated more here. I've added a > fix that just does CONFIG_FSL_BOOKE here to match cputable.c. Actually, reverse that. There are other places where e200 and e500 are separated by ifdefs, so I made cputable.c match the rest. josh ___ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev
Re: [PATCH 1/21] [POWERPC] Reworking machine check handling and Fix 440/440A
On Fri, 21 Dec 2007 15:39:21 +1100 Benjamin Herrenschmidt <[EMAIL PROTECTED]> wrote: > Index: linux-merge/arch/powerpc/kernel/traps.c > === > --- linux-merge.orig/arch/powerpc/kernel/traps.c 2007-12-20 > 11:34:43.0 +1100 > +++ linux-merge/arch/powerpc/kernel/traps.c 2007-12-20 11:35:40.0 > +1100 [snip] > -#elif defined (CONFIG_E500) > + return 0; > +} > +#elif defined(CONFIG_E500) > +int machine_check_e500(struct pt_regs *regs) This... > +{ > + unsigned long reason = get_mc_reason(regs); > + > printk("Machine check in kernel mode.\n"); > printk("Caused by (from MCSR=%lx): ", reason); > > @@ -403,7 +416,14 @@ static int generic_machine_check_excepti > printk("Bus - Instruction Parity Error\n"); > if (reason & MCSR_BUS_RPERR) > printk("Bus - Read Parity Error\n"); > -#elif defined (CONFIG_E200) > + > + return 0; > +} > +#elif defined(CONFIG_E200) > +int machine_check_e200(struct pt_regs *regs) ... and this cause build failures for most of the mpc8xxx defconfigs. The reason is that e200 and e500 are both lumped under CONFIG_FSL_BOOKE in cputable.c, but you have them segregated more here. I've added a fix that just does CONFIG_FSL_BOOKE here to match cputable.c. josh ___ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev
Re: [PATCH 1/21] [POWERPC] Reworking machine check handling and Fix 440/440A
On Fri, 2007-12-21 at 06:01 -0600, Josh Boyer wrote: > On Fri, 21 Dec 2007 15:39:21 +1100 > Benjamin Herrenschmidt <[EMAIL PROTECTED]> wrote: > > > > Index: linux-merge/include/asm-ppc/reg_booke.h > > === > > --- linux-merge.orig/include/asm-ppc/reg_booke.h2007-09-28 > > 11:42:10.0 +1000 > > +++ linux-merge/include/asm-ppc/reg_booke.h 2007-12-20 11:35:40.0 > > +1100 > > @@ -207,7 +207,7 @@ > > #defineCCR1_TCS0x0080 /* Timer Clock Select */ > > > > /* Bit definitions for the MCSR. */ > > -#ifdef CONFIG_440A > > +#ifdef CONFIG_44x > > Should be #ifdef CONFIG_4xx as I pointed out last time. I'll fix it > when I commit. Ah weird, I though I fixed it... I must have fixed powerpc and not ppc. Ben. ___ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev
Re: [PATCH 1/21] [POWERPC] Reworking machine check handling and Fix 440/440A
On Fri, 21 Dec 2007 15:39:21 +1100 Benjamin Herrenschmidt <[EMAIL PROTECTED]> wrote: > Index: linux-merge/include/asm-ppc/reg_booke.h > === > --- linux-merge.orig/include/asm-ppc/reg_booke.h 2007-09-28 > 11:42:10.0 +1000 > +++ linux-merge/include/asm-ppc/reg_booke.h 2007-12-20 11:35:40.0 > +1100 > @@ -207,7 +207,7 @@ > #define CCR1_TCS0x0080 /* Timer Clock Select */ > > /* Bit definitions for the MCSR. */ > -#ifdef CONFIG_440A > +#ifdef CONFIG_44x Should be #ifdef CONFIG_4xx as I pointed out last time. I'll fix it when I commit. josh ___ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev