cpld_desc->handle(cpld_irq, cpld_desc, regs); 
desc_handle_irq(cpld_irq, cpld_desc, regs); 
static void ixdp2x01_irq_handler(unsigned int irq, struct irqdesc *desc, struct pt_regs *regs){	u32 ex_interrupt;	int i;	desc->chip->mask(irq);	ex_interrupt = *IXDP2X01_INT_STAT_REG & valid_irq_mask;	if (!ex_interrupt) {		printk(KERN_ERR "Spurious IXDP2X01 CPLD interrupt!\n");		return;	}	for (i = 0; i < IXP2000_BOARD_IRQS; i++) {		if (ex_interrupt & (1 << i)) {			struct irqdesc *cpld_desc;			int cpld_irq = IXP2000_BOARD_IRQ(0) + i;			cpld_desc = irq_desc + cpld_irq;			cpld_desc->handle(cpld_irq, cpld_desc, regs);		}	}	desc->chip->unmask(irq);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/664399e1fbdceb18da9c9c5534dedd62327c63e8/ixdp2x01.c/buggy/arch/arm/mach-ixp2000/ixdp2x01.c