* [PATCH 00/02] irqchip: renesas-irqc: Lazy disable and mask-on-suspend
@ 2013-12-04 12:05 Magnus Damm
2013-12-04 12:05 ` [PATCH 01/02] irqchip: renesas-irqc: Use lazy disable Magnus Damm
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Magnus Damm @ 2013-12-04 12:05 UTC (permalink / raw)
To: linux-kernel
Cc: linux-sh, rob.herring, grant.likely, horms, Magnus Damm, tglx
irqchip: renesas-irqc: Lazy disable and mask-on-suspend
[PATCH 01/02] irqchip: renesas-irqc: Use lazy disable
[PATCH 02/02] irqchip: renesas-irqc: Enable mask on suspend
Update the IRQC driver to use lazy disable and mask on suspend. This fixes
the Suspend-to-RAM behavior to make sure wakeup sources are left enabled
while suspending.
Signed-off-by: Magnus Damm <damm@opensource.se>
---
Written against renesas.git tag renesas-devel-v3.13-rc2-20131202
drivers/irqchip/irq-renesas-irqc.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 01/02] irqchip: renesas-irqc: Use lazy disable
2013-12-04 12:05 [PATCH 00/02] irqchip: renesas-irqc: Lazy disable and mask-on-suspend Magnus Damm
@ 2013-12-04 12:05 ` Magnus Damm
2013-12-04 12:05 ` [PATCH 02/02] irqchip: renesas-irqc: Enable mask on suspend Magnus Damm
2013-12-12 12:02 ` [PATCH 00/02] irqchip: renesas-irqc: Lazy disable and mask-on-suspend Simon Horman
2 siblings, 0 replies; 4+ messages in thread
From: Magnus Damm @ 2013-12-04 12:05 UTC (permalink / raw)
To: linux-kernel
Cc: linux-sh, rob.herring, grant.likely, horms, Magnus Damm, tglx
From: Magnus Damm <damm@opensource.se>
Set the ->irq_enable() and ->irq_disable() methods to NULL
to enable lazy disable of interrupts. This by itself provides
some level of optimization, but is mainly enabled as ground
work for future Suspend-to-RAM wake up support.
Signed-off-by: Magnus Damm <damm@opensource.se>
---
drivers/irqchip/irq-renesas-irqc.c | 2 --
1 file changed, 2 deletions(-)
--- 0001/drivers/irqchip/irq-renesas-irqc.c
+++ work/drivers/irqchip/irq-renesas-irqc.c 2013-12-04 18:12:45.000000000 +0900
@@ -212,8 +212,6 @@ static int irqc_probe(struct platform_de
irq_chip->name = name;
irq_chip->irq_mask = irqc_irq_disable;
irq_chip->irq_unmask = irqc_irq_enable;
- irq_chip->irq_enable = irqc_irq_enable;
- irq_chip->irq_disable = irqc_irq_disable;
irq_chip->irq_set_type = irqc_irq_set_type;
irq_chip->flags = IRQCHIP_SKIP_SET_WAKE;
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 02/02] irqchip: renesas-irqc: Enable mask on suspend
2013-12-04 12:05 [PATCH 00/02] irqchip: renesas-irqc: Lazy disable and mask-on-suspend Magnus Damm
2013-12-04 12:05 ` [PATCH 01/02] irqchip: renesas-irqc: Use lazy disable Magnus Damm
@ 2013-12-04 12:05 ` Magnus Damm
2013-12-12 12:02 ` [PATCH 00/02] irqchip: renesas-irqc: Lazy disable and mask-on-suspend Simon Horman
2 siblings, 0 replies; 4+ messages in thread
From: Magnus Damm @ 2013-12-04 12:05 UTC (permalink / raw)
To: linux-kernel
Cc: linux-sh, rob.herring, grant.likely, horms, Magnus Damm, tglx
From: Magnus Damm <damm@opensource.se>
Now when lazy interrupt disable has been enabled in the driver
then extend the code to set IRQCHIP_MASK_ON_SUSPEND which tells
the core that only IRQs marked as wakeups need to stay enabled
during Suspend-to-RAM.
Signed-off-by: Magnus Damm <damm@opensource.se>
---
drivers/irqchip/irq-renesas-irqc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- 0002/drivers/irqchip/irq-renesas-irqc.c
+++ work/drivers/irqchip/irq-renesas-irqc.c 2013-12-04 18:15:48.000000000 +0900
@@ -213,7 +213,7 @@ static int irqc_probe(struct platform_de
irq_chip->irq_mask = irqc_irq_disable;
irq_chip->irq_unmask = irqc_irq_enable;
irq_chip->irq_set_type = irqc_irq_set_type;
- irq_chip->flags = IRQCHIP_SKIP_SET_WAKE;
+ irq_chip->flags = IRQCHIP_SKIP_SET_WAKE | IRQCHIP_MASK_ON_SUSPEND;
p->irq_domain = irq_domain_add_simple(pdev->dev.of_node,
p->number_of_irqs,
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 00/02] irqchip: renesas-irqc: Lazy disable and mask-on-suspend
2013-12-04 12:05 [PATCH 00/02] irqchip: renesas-irqc: Lazy disable and mask-on-suspend Magnus Damm
2013-12-04 12:05 ` [PATCH 01/02] irqchip: renesas-irqc: Use lazy disable Magnus Damm
2013-12-04 12:05 ` [PATCH 02/02] irqchip: renesas-irqc: Enable mask on suspend Magnus Damm
@ 2013-12-12 12:02 ` Simon Horman
2 siblings, 0 replies; 4+ messages in thread
From: Simon Horman @ 2013-12-12 12:02 UTC (permalink / raw)
To: Magnus Damm; +Cc: linux-kernel, linux-sh, rob.herring, grant.likely, tglx
On Wed, Dec 04, 2013 at 09:05:37PM +0900, Magnus Damm wrote:
> irqchip: renesas-irqc: Lazy disable and mask-on-suspend
>
> [PATCH 01/02] irqchip: renesas-irqc: Use lazy disable
> [PATCH 02/02] irqchip: renesas-irqc: Enable mask on suspend
>
> Update the IRQC driver to use lazy disable and mask on suspend. This fixes
> the Suspend-to-RAM behavior to make sure wakeup sources are left enabled
> while suspending.
Thanks, I will queue these up.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-12-12 12:02 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-04 12:05 [PATCH 00/02] irqchip: renesas-irqc: Lazy disable and mask-on-suspend Magnus Damm
2013-12-04 12:05 ` [PATCH 01/02] irqchip: renesas-irqc: Use lazy disable Magnus Damm
2013-12-04 12:05 ` [PATCH 02/02] irqchip: renesas-irqc: Enable mask on suspend Magnus Damm
2013-12-12 12:02 ` [PATCH 00/02] irqchip: renesas-irqc: Lazy disable and mask-on-suspend Simon Horman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).