]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
ARM: shmobile: remove use of gic_arch_extn.irq_set_wake
authorMarc Zyngier <marc.zyngier@arm.com>
Wed, 11 Mar 2015 15:45:35 +0000 (15:45 +0000)
committerJason Cooper <jason@lakedaemon.net>
Sun, 15 Mar 2015 01:28:09 +0000 (01:28 +0000)
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>
arch/arm/mach-shmobile/intc-sh73a0.c
arch/arm/mach-shmobile/setup-r8a7779.c

index 9e3618028accea72442a4ca8fc1a09b36f267dd2..fd63ae6532fc9ab26149497f68870e81705ed7b7 100644 (file)
@@ -252,11 +252,6 @@ static irqreturn_t sh73a0_intcs_demux(int irq, void *dev_id)
        return IRQ_HANDLED;
 }
 
-static int sh73a0_set_wake(struct irq_data *data, unsigned int on)
-{
-       return 0; /* always allow wakeup */
-}
-
 #define PINTER0_PHYS 0xe69000a0
 #define PINTER1_PHYS 0xe69000a4
 #define PINTER0_VIRT IOMEM(0xe69000a0)
@@ -318,8 +313,8 @@ void __init sh73a0_init_irq(void)
        void __iomem *gic_cpu_base = IOMEM(0xf0000100);
        void __iomem *intevtsa = ioremap_nocache(0xffd20100, PAGE_SIZE);
 
+       gic_set_irqchip_flags(IRQCHIP_SKIP_SET_WAKE);
        gic_init(0, 29, gic_dist_base, gic_cpu_base);
-       gic_arch_extn.irq_set_wake = sh73a0_set_wake;
 
        register_intc_controller(&intcs_desc);
        register_intc_controller(&intc_pint0_desc);
index 27dceaf9e688c174910004fc80598f4beb130075..c03e562be12b17600e3492dc755a86449a222615 100644 (file)
@@ -713,18 +713,13 @@ void __init r8a7779_init_late(void)
 }
 
 #ifdef CONFIG_USE_OF
-static int r8a7779_set_wake(struct irq_data *data, unsigned int on)
-{
-       return 0; /* always allow wakeup */
-}
-
 void __init r8a7779_init_irq_dt(void)
 {
 #ifdef CONFIG_ARCH_SHMOBILE_LEGACY
        void __iomem *gic_dist_base = ioremap_nocache(0xf0001000, 0x1000);
        void __iomem *gic_cpu_base = ioremap_nocache(0xf0000100, 0x1000);
 #endif
-       gic_arch_extn.irq_set_wake = r8a7779_set_wake;
+       gic_set_irqchip_flags(IRQCHIP_SKIP_SET_WAKE);
 
 #ifdef CONFIG_ARCH_SHMOBILE_LEGACY
        gic_init(0, 29, gic_dist_base, gic_cpu_base);