[PATCH] genirq: better describe IRQF_NO_SUSPEND semantics

Peter Zijlstra peterz at infradead.org
Wed Feb 25 07:19:38 PST 2015


On Tue, Feb 24, 2015 at 01:26:05AM +0100, Rafael J. Wysocki wrote:
> On Friday, February 20, 2015 02:53:46 PM Mark Rutland wrote:
> > The IRQF_NO_SUSPEND flag is intended to be used for interrupts required
> > to be enabled during the suspend-resume cycle. This mostly consists of
> > IPIs and timer interrupts, potentially including chained irqchip
> > interrupts if these are necessary to handle timers or IPIs. If an
> > interrupt does not fall into one of the aforementioned categories,
> > requesting it with IRQF_NO_SUSPEND is likely incorrect.
> > 
> > Using IRQF_NO_SUSPEND does not guarantee that the interrupt can wake the
> > system from a suspended state. For an interrupt to be able to trigger a
> > wakeup, it may be necessary to program various components of the system.
> > In these cases it is necessary to use {enable,disabled}_irq_wake.
> > 
> > Unfortunately, several drivers assume that IRQF_NO_SUSPEND ensures that
> > an IRQ can wake up the system, and the documentation can be read
> > ambiguously w.r.t. this property.
> > 
> > This patch updates the documentation regarding IRQF_NO_SUSPEND to make
> > this caveat explicit, hopefully making future misuse rarer. Cleanup of
> > existing misuse will occur as part of later patch series.
> > 
> > Cc: Boris Brezillon <boris.brezillon at free-electrons.com>
> > Cc: Ian Campbell <ian.campbell at citrix.com>
> > Cc: Jonathan Corbet <corbet at lwn.net>
> > Cc: Peter Zijlstra <peterz at infradead.org>
> > Cc: Rafael J. Wysocki <rafael.j.wysocki at intel.com>
> > Cc: Thomas Gleixner <tglx at linutronix.de>
> > Signed-off-by: Mark Rutland <mark.rutland at arm.com>
> 
> Applied to linux-pm.git/linux-next, thanks!
> 
> Peter, please let me know if you don't want this to go it.

No seems fine, Thanks!

Acked-by: Peter Zijlstra (Intel) <peterz at infradead.org>



More information about the linux-arm-kernel mailing list