Messages in this thread Patch in this message | | | Subject | [PATCH] 3/3 handle level triggered irqs on dbox2 (2.4.22-pre6) | From | Andreas Oberritter <> | Date | 19 Jul 2003 15:36:28 +0200 |
| |
This one is for components of the dbox2 which cannot be set up to do edge triggered irqs because no documentation is available. #ifdef CONFIG_DBOX2 is put around it because other boards don't seem to need it. Is there a better way to handle level based interrupts? diff -Naur linux-2.4.22-pre6/arch/ppc/kernel/irq.c linux-2.4.22-pre6-dbox2/arch/ppc/kernel/irq.c --- linux-2.4.22-pre6/arch/ppc/kernel/irq.c 2003-06-13 16:51:31.000000000 +0200 +++ linux-2.4.22-pre6-dbox2/arch/ppc/kernel/irq.c 2003-07-15 09:16:34.000000000 +0200 @@ -507,6 +507,14 @@ else if (irq_desc[irq].handler->enable) irq_desc[irq].handler->enable(irq); } + +#ifdef CONFIG_DBOX2 + if (action) { + if (action->flags & SA_ONESHOT) + disable_irq_nosync(irq); + } +#endif + spin_unlock(&desc->lock); } | |