All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ARM: mach-shmobile: sh73a0 external IRQ wake update
@ 2012-12-14  3:43 Magnus Damm
  2012-12-14 13:32 ` Simon Horman
  0 siblings, 1 reply; 2+ messages in thread
From: Magnus Damm @ 2012-12-14  3:43 UTC (permalink / raw)
  To: linux-sh

From: Magnus Damm <damm@opensource.se>

Use sh73a0_set_wake() for external IRQ signals on sh73a0.

The sh73a0 IRQ hardware for external IRQ pins consists of
the INTCA interrupt controller and the GIC together doing
their best to limp along. These external IRQ pins are
treated as a special case where interrupts need to be
managed in both interrupt controllers in parallel.

The ->irq_set_wake() callback for the external IRQ pins
can be dealt with in the same way as INTCA-only without
involving the GIC. So this patch updates the external
IRQ pin code for sh73a0 to no longer involve the GIC.

Signed-off-by: Magnus Damm <damm@opensource.se>
---

 arch/arm/mach-shmobile/intc-sh73a0.c |    7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

--- 0001/arch/arm/mach-shmobile/intc-sh73a0.c
+++ work/arch/arm/mach-shmobile/intc-sh73a0.c	2012-12-14 12:29:17.000000000 +0900
@@ -315,11 +315,6 @@ static int intca_gic_set_type(struct irq
 	return irq_cbp(irq_set_type, to_intca_reloc_irq(data), type);
 }
 
-static int intca_gic_set_wake(struct irq_data *data, unsigned int on)
-{
-	return irq_cbp(irq_set_wake, to_intca_reloc_irq(data), on);
-}
-
 #ifdef CONFIG_SMP
 static int intca_gic_set_affinity(struct irq_data *data,
 				  const struct cpumask *cpumask,
@@ -339,7 +334,7 @@ struct irq_chip intca_gic_irq_chip = {
 	.irq_disable		= intca_gic_disable,
 	.irq_shutdown		= intca_gic_disable,
 	.irq_set_type		= intca_gic_set_type,
-	.irq_set_wake		= intca_gic_set_wake,
+	.irq_set_wake		= sh73a0_set_wake,
 #ifdef CONFIG_SMP
 	.irq_set_affinity	= intca_gic_set_affinity,
 #endif

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] ARM: mach-shmobile: sh73a0 external IRQ wake update
  2012-12-14  3:43 [PATCH] ARM: mach-shmobile: sh73a0 external IRQ wake update Magnus Damm
@ 2012-12-14 13:32 ` Simon Horman
  0 siblings, 0 replies; 2+ messages in thread
From: Simon Horman @ 2012-12-14 13:32 UTC (permalink / raw)
  To: linux-sh

On Fri, Dec 14, 2012 at 12:43:12PM +0900, Magnus Damm wrote:
> From: Magnus Damm <damm@opensource.se>
> 
> Use sh73a0_set_wake() for external IRQ signals on sh73a0.
> 
> The sh73a0 IRQ hardware for external IRQ pins consists of
> the INTCA interrupt controller and the GIC together doing
> their best to limp along. These external IRQ pins are
> treated as a special case where interrupts need to be
> managed in both interrupt controllers in parallel.
> 
> The ->irq_set_wake() callback for the external IRQ pins
> can be dealt with in the same way as INTCA-only without
> involving the GIC. So this patch updates the external
> IRQ pin code for sh73a0 to no longer involve the GIC.
> 
> Signed-off-by: Magnus Damm <damm@opensource.se>

Thanks applied.

I have applied this to a temporary 'soc5' branch which is based on 3.7-rc1.
I will rebase this on 3.8-rc1 once it is released and rename the branch
to the more sane 'soc'.

I have also merged this change into the next branch.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-12-14 13:32 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-12-14  3:43 [PATCH] ARM: mach-shmobile: sh73a0 external IRQ wake update Magnus Damm
2012-12-14 13:32 ` Simon Horman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.