linux-next: manual merge of the irqdomain tree with the arm tree

From: Stephen Rothwell
Date: Wed Feb 08 2012 - 23:14:23 EST


Hi Grant,

Today's linux-next merge of the irqdomain tree got a conflict in
arch/arm/common/gic.c between commit c11907f588d6 ("ARM: 7318/1: gic:
refactor irq_start assignment") from the arm tree and commit 7da5a66bbf1f
("irq_domain: Remove 'new' irq_domain in favour of the ppc one") from the
irqdomain tree.

I fixed it up (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@xxxxxxxxxxxxxxxx

diff --cc arch/arm/common/gic.c
index ca6b5dd,8cf934c..0000000
--- a/arch/arm/common/gic.c
+++ b/arch/arm/common/gic.c
@@@ -348,12 -344,15 +345,11 @@@ void __init gic_cascade_irq(unsigned in

static void __init gic_dist_init(struct gic_chip_data *gic)
{
- unsigned int i, irq;
+ unsigned int i;
u32 cpumask;
unsigned int gic_irqs = gic->gic_irqs;
- struct irq_domain *domain = &gic->domain;
void __iomem *base = gic_data_dist_base(gic);
- u32 cpu = 0;
-
-#ifdef CONFIG_SMP
- cpu = cpu_logical_map(smp_processor_id());
-#endif
+ u32 cpu = cpu_logical_map(smp_processor_id());

cpumask = 1 << cpu;
cpumask |= cpumask << 8;
@@@ -694,12 -689,13 +686,12 @@@ void __init gic_init_bases(unsigned in
* For primary GICs, skip over SGIs.
* For secondary GICs, skip over PPIs, too.
*/
- hwirq_base = 32;
- if (gic_nr == 0) {
- if ((irq_start & 31) > 0) {
- hwirq_base = 16;
- if (irq_start != -1)
- irq_start = (irq_start & ~31) + 16;
- }
+ if (gic_nr == 0 && (irq_start & 31) > 0) {
- domain->hwirq_base = 16;
++ hwirq_base = 16;
+ if (irq_start != -1)
+ irq_start = (irq_start & ~31) + 16;
+ } else {
- domain->hwirq_base = 32;
++ hwirq_base = 32;
}

/*

Attachment: pgp00000.pgp
Description: PGP signature