Hello. On 24.03.2011 0:09, Thomas Gleixner wrote:
Tons of unused code, but that's Ralfs problem.
Signed-off-by: Thomas Gleixner<tglx@xxxxxxxxxxxxx>
[...]
Index: linux-mips-next/arch/mips/vr41xx/common/irq.c =================================================================== --- linux-mips-next.orig/arch/mips/vr41xx/common/irq.c +++ linux-mips-next/arch/mips/vr41xx/common/irq.c @@ -62,7 +62,6 @@ EXPORT_SYMBOL_GPL(cascade_irq); static void irq_dispatch(unsigned int irq) { irq_cascade_t *cascade; - struct irq_desc *desc; if (irq>= NR_IRQS) { atomic_inc(&irq_err_count); @@ -71,14 +70,16 @@ static void irq_dispatch(unsigned int ir cascade = irq_cascade + irq; if (cascade->get_irq != NULL) { - unsigned int source_irq = irq; + struct irq_desc *desc = irq_to_desc(irq); + struct irq_data *idata = irq_desc_get_irq_data(desc); + struct irq_chip *chip = irq_desc_get_chip(desc); int ret; - desc = irq_desc + source_irq; - if (desc->chip->mask_ack) - desc->chip->mask_ack(source_irq); + + if (chip->irq_mask_ack) + chip->irq_mask_ack(idata); else { - desc->chip->mask(source_irq); - desc->chip->ack(source_irq); + chip->irq_mask(idata); + chip->irq_ack(idata); } ret = cascade->get_irq(irq); irq = ret; @@ -86,8 +87,8 @@ static void irq_dispatch(unsigned int ir atomic_inc(&irq_err_count); else irq_dispatch(irq); - if (!(desc->status& IRQ_DISABLED)&& desc->chip->unmask) - desc->chip->unmask(source_irq); + if (!(desc->status& IRQ_DISABLED)&& chip->irq_unmask) + chip->irq_unmask(idata);
Hm, doesn't this (I mean the old) code break after the previous patch? WBR, Sergei