On 06/08/2012 04:50 PM, Chris Stone wrote:

There was a call to generic_handle_irq that should have been calling
ipipe_handle_chained_irq so I have a fix for the problem. Here is a
diff:

diff -r 0f7a4ec77dc0 arch/powerpc/sysdev/mpc8xxx_gpio.c
--- a/arch/powerpc/sysdev/mpc8xxx_gpio.c        Mon Jun 04 11:04:14 2012 -0400
+++ b/arch/powerpc/sysdev/mpc8xxx_gpio.c        Fri Jun 08 10:39:40 2012 -0400
@@ -151,7 +151,7 @@

         mask = in_be32(mm->regs + GPIO_IER)&  in_be32(mm->regs + GPIO_IMR);
         if (mask)
-               generic_handle_irq(irq_linear_revmap(mpc8xxx_gc->irq,
+               ipipe_handle_chained_irq(irq_linear_revmap(mpc8xxx_gc->irq,
                                                      32 - ffs(mask)));
  }

I did not see this in the core-3.2 branch of the ipipe git, so you may need to
merge this in. Let me know if I should be providing this fix in another form.


This won't apply to a mainline 3.2.x kernel. Are these bits part of a vendor-specific tree?

--
Philippe.

_______________________________________________
Xenomai mailing list
[email protected]
http://www.xenomai.org/mailman/listinfo/xenomai

Reply via email to