diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-12-05 18:20:17 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-12-05 18:20:17 -0500 |
commit | 742eaa6a6e356a16788ce6530271de89bc4f8fb5 (patch) | |
tree | 12fc040daab06ac796c61c1d92bfad9bb054d1c1 /arch/arm/common/gic.c | |
parent | ba8bb18a03f8c7508565c385576a5431a4ad804a (diff) | |
parent | ae72fd588a2b302222769b44775912b83f0785eb (diff) |
Merge branch 'for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into devel-stable
Conflicts:
arch/arm/common/gic.c
arch/arm/plat-omap/include/plat/common.h
Diffstat (limited to 'arch/arm/common/gic.c')
-rw-r--r-- | arch/arm/common/gic.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/arch/arm/common/gic.c b/arch/arm/common/gic.c index a1feb6b4f9f5..b2dc2dd7f1df 100644 --- a/arch/arm/common/gic.c +++ b/arch/arm/common/gic.c | |||
@@ -612,7 +612,8 @@ static void __init gic_pm_init(struct gic_chip_data *gic) | |||
612 | sizeof(u32)); | 612 | sizeof(u32)); |
613 | BUG_ON(!gic->saved_ppi_conf); | 613 | BUG_ON(!gic->saved_ppi_conf); |
614 | 614 | ||
615 | cpu_pm_register_notifier(&gic_notifier_block); | 615 | if (gic == &gic_data[0]) |
616 | cpu_pm_register_notifier(&gic_notifier_block); | ||
616 | } | 617 | } |
617 | #else | 618 | #else |
618 | static void __init gic_pm_init(struct gic_chip_data *gic) | 619 | static void __init gic_pm_init(struct gic_chip_data *gic) |
@@ -696,12 +697,14 @@ void __init gic_init_bases(unsigned int gic_nr, int irq_start, | |||
696 | * For primary GICs, skip over SGIs. | 697 | * For primary GICs, skip over SGIs. |
697 | * For secondary GICs, skip over PPIs, too. | 698 | * For secondary GICs, skip over PPIs, too. |
698 | */ | 699 | */ |
700 | domain->hwirq_base = 32; | ||
699 | if (gic_nr == 0) { | 701 | if (gic_nr == 0) { |
700 | domain->hwirq_base = 16; | 702 | if ((irq_start & 31) > 0) { |
701 | if (irq_start > 0) | 703 | domain->hwirq_base = 16; |
702 | irq_start = (irq_start & ~31) + 16; | 704 | if (irq_start != -1) |
703 | } else | 705 | irq_start = (irq_start & ~31) + 16; |
704 | domain->hwirq_base = 32; | 706 | } |
707 | } | ||
705 | 708 | ||
706 | /* | 709 | /* |
707 | * Find out how many interrupts are supported. | 710 | * Find out how many interrupts are supported. |