Re: OpenPIC / CPM2 PIC and cascading interrupt priorities

2009-02-15 Thread Guillaume Knispel
On Mon, 16 Feb 2009 08:04:20 +1100 Benjamin Herrenschmidt wrote: > > static void cpm2_cascade(unsigned int irq, struct irq_desc *desc) > > { > > int cascade_irq; > > > > while ((cascade_irq = cpm2_get_irq()) >= 0) > > generic_handle_irq(cascade_irq); > > > > desc->chip->

Re: OpenPIC / CPM2 PIC and cascading interrupt priorities

2009-02-15 Thread Benjamin Herrenschmidt
> static void cpm2_cascade(unsigned int irq, struct irq_desc *desc) > { > int cascade_irq; > > while ((cascade_irq = cpm2_get_irq()) >= 0) > generic_handle_irq(cascade_irq); > > desc->chip->eoi(irq); > } You can try doing an early EOI see that helps. Ie, stick it

OpenPIC / CPM2 PIC and cascading interrupt priorities

2009-02-14 Thread Guillaume Knispel
Hi, I'm programming a board with an MPC8555E on which an external chip can raise low priority interrupts through the port C of the CPM2. Under nominal conditions it generates few interrupts, but they take a relatively long time to be processed. I also use some CPM2 controllers in such a way that