diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2015-03-11 11:45:35 -0400 |
---|---|---|
committer | Jason Cooper <jason@lakedaemon.net> | 2015-03-14 21:28:09 -0400 |
commit | d04594c2f5ce2331d3db3430649634ca61f51937 (patch) | |
tree | 9ddb6997e2f3e1f3a568d310c9648c77dd4188a7 /arch/arm/mach-shmobile | |
parent | 49869be2d9d0e9195706da7050c81bc909f41f4f (diff) |
ARM: shmobile: remove use of gic_arch_extn.irq_set_wake
shmobile only uses gic_arch_extn.irq_set_wake to prevent the GIC
from returning -ENXIO when receiving a wake-up configuration request.
It is a lot simpler to tell the irq layer that we don't need any
configuration by using the IRQCHIP_SKIP_SET_WAKE, thanks to the
new gic_set_irqchip_flags function.
Acked-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Link: https://lkml.kernel.org/r/1426088737-15817-3-git-send-email-marc.zyngier@arm.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
Diffstat (limited to 'arch/arm/mach-shmobile')
-rw-r--r-- | arch/arm/mach-shmobile/intc-sh73a0.c | 7 | ||||
-rw-r--r-- | arch/arm/mach-shmobile/setup-r8a7779.c | 7 |
2 files changed, 2 insertions, 12 deletions
diff --git a/arch/arm/mach-shmobile/intc-sh73a0.c b/arch/arm/mach-shmobile/intc-sh73a0.c index 9e3618028acc..fd63ae6532fc 100644 --- a/arch/arm/mach-shmobile/intc-sh73a0.c +++ b/arch/arm/mach-shmobile/intc-sh73a0.c | |||
@@ -252,11 +252,6 @@ static irqreturn_t sh73a0_intcs_demux(int irq, void *dev_id) | |||
252 | return IRQ_HANDLED; | 252 | return IRQ_HANDLED; |
253 | } | 253 | } |
254 | 254 | ||
255 | static int sh73a0_set_wake(struct irq_data *data, unsigned int on) | ||
256 | { | ||
257 | return 0; /* always allow wakeup */ | ||
258 | } | ||
259 | |||
260 | #define PINTER0_PHYS 0xe69000a0 | 255 | #define PINTER0_PHYS 0xe69000a0 |
261 | #define PINTER1_PHYS 0xe69000a4 | 256 | #define PINTER1_PHYS 0xe69000a4 |
262 | #define PINTER0_VIRT IOMEM(0xe69000a0) | 257 | #define PINTER0_VIRT IOMEM(0xe69000a0) |
@@ -318,8 +313,8 @@ void __init sh73a0_init_irq(void) | |||
318 | void __iomem *gic_cpu_base = IOMEM(0xf0000100); | 313 | void __iomem *gic_cpu_base = IOMEM(0xf0000100); |
319 | void __iomem *intevtsa = ioremap_nocache(0xffd20100, PAGE_SIZE); | 314 | void __iomem *intevtsa = ioremap_nocache(0xffd20100, PAGE_SIZE); |
320 | 315 | ||
316 | gic_set_irqchip_flags(IRQCHIP_SKIP_SET_WAKE); | ||
321 | gic_init(0, 29, gic_dist_base, gic_cpu_base); | 317 | gic_init(0, 29, gic_dist_base, gic_cpu_base); |
322 | gic_arch_extn.irq_set_wake = sh73a0_set_wake; | ||
323 | 318 | ||
324 | register_intc_controller(&intcs_desc); | 319 | register_intc_controller(&intcs_desc); |
325 | register_intc_controller(&intc_pint0_desc); | 320 | register_intc_controller(&intc_pint0_desc); |
diff --git a/arch/arm/mach-shmobile/setup-r8a7779.c b/arch/arm/mach-shmobile/setup-r8a7779.c index 27dceaf9e688..c03e562be12b 100644 --- a/arch/arm/mach-shmobile/setup-r8a7779.c +++ b/arch/arm/mach-shmobile/setup-r8a7779.c | |||
@@ -713,18 +713,13 @@ void __init r8a7779_init_late(void) | |||
713 | } | 713 | } |
714 | 714 | ||
715 | #ifdef CONFIG_USE_OF | 715 | #ifdef CONFIG_USE_OF |
716 | static int r8a7779_set_wake(struct irq_data *data, unsigned int on) | ||
717 | { | ||
718 | return 0; /* always allow wakeup */ | ||
719 | } | ||
720 | |||
721 | void __init r8a7779_init_irq_dt(void) | 716 | void __init r8a7779_init_irq_dt(void) |
722 | { | 717 | { |
723 | #ifdef CONFIG_ARCH_SHMOBILE_LEGACY | 718 | #ifdef CONFIG_ARCH_SHMOBILE_LEGACY |
724 | void __iomem *gic_dist_base = ioremap_nocache(0xf0001000, 0x1000); | 719 | void __iomem *gic_dist_base = ioremap_nocache(0xf0001000, 0x1000); |
725 | void __iomem *gic_cpu_base = ioremap_nocache(0xf0000100, 0x1000); | 720 | void __iomem *gic_cpu_base = ioremap_nocache(0xf0000100, 0x1000); |
726 | #endif | 721 | #endif |
727 | gic_arch_extn.irq_set_wake = r8a7779_set_wake; | 722 | gic_set_irqchip_flags(IRQCHIP_SKIP_SET_WAKE); |
728 | 723 | ||
729 | #ifdef CONFIG_ARCH_SHMOBILE_LEGACY | 724 | #ifdef CONFIG_ARCH_SHMOBILE_LEGACY |
730 | gic_init(0, 29, gic_dist_base, gic_cpu_base); | 725 | gic_init(0, 29, gic_dist_base, gic_cpu_base); |