Hi Russell, Today's linux-next merge of the arm tree got a conflict in arch/arm/common/gic.c between commit e6afec9b6808eff6dc392ac07c1552e87aebcdf7 ("ARM: 6496/1: GIC: Do not try to register more then NR_IRQS interrupts") from the arm-current tree and commit d9522a4675b30f128d4410a6d453ab63edd18e64 ("ARM: GIC: move gic_data [] initialization into gic_init()") from the arm tree. I fixed it up (see below) can can carry the fix for a while. -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --cc arch/arm/common/gic.c index fea1bd7,b6a1d09..0000000 --- a/arch/arm/common/gic.c +++ b/arch/arm/common/gic.c @@@ -207,15 -210,13 +210,13 @@@ void __init gic_cascade_irq(unsigned in set_irq_chained_handler(irq, gic_handle_cascade_irq); } - void __init gic_dist_init(unsigned int gic_nr, void __iomem *base, - unsigned int irq_start) + static void __init gic_dist_init(struct gic_chip_data *gic, + unsigned int irq_start) { - unsigned int max_irq, i; + unsigned int gic_irqs, irq_limit, i; + void __iomem *base = gic->dist_base; u32 cpumask = 1 << smp_processor_id(); - if (gic_nr >= MAX_GIC_NR) - BUG(); - cpumask |= cpumask << 8; cpumask |= cpumask << 16; @@@ -259,18 -262,11 +257,18 @@@ writel(0xffffffff, base + GIC_DIST_ENABLE_CLEAR + i * 4 / 32); /* + * Limit number of interrupts registered to the platform maximum + */ - irq_limit = gic_data[gic_nr].irq_offset + gic_irqs; ++ irq_limit = gic->irq_offset + gic_irqs; + if (WARN_ON(irq_limit > NR_IRQS)) + irq_limit = NR_IRQS; + + /* * Setup the Linux IRQ subsystem. */ - for (i = irq_start; i < gic->irq_offset + max_irq; i++) { + for (i = irq_start; i < irq_limit; i++) { set_irq_chip(i, &gic_chip); - set_irq_chip_data(i, &gic_data[gic_nr]); + set_irq_chip_data(i, gic); set_irq_handler(i, handle_level_irq); set_irq_flags(i, IRQF_VALID | IRQF_PROBE); } -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html