[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <50911513.ad0Lf8479H@vostro.rjw.lan>
Date: Fri, 27 Feb 2015 23:33:35 +0100
From: "Rafael J. Wysocki" <rjw@...ysocki.net>
To: Boris Brezillon <boris.brezillon@...e-electrons.com>
Cc: Thomas Gleixner <tglx@...utronix.de>,
Jason Cooper <jason@...edaemon.net>,
Peter Zijlstra <peterz@...radead.org>,
Mark Rutland <mark.rutland@....com>,
linux-kernel@...r.kernel.org,
Nicolas Ferre <nicolas.ferre@...el.com>,
Jean-Christophe Plagniol-Villard <plagnioj@...osoft.com>,
Alexandre Belloni <alexandre.belloni@...e-electrons.com>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH 0/6] ARM: at91: fix irq_pm_install_action WARNING
On Friday, February 27, 2015 04:09:52 PM Boris Brezillon wrote:
> Commit cab303be91dc47942bc25de33dc1140123540800 [1] introduced a WARN_ON
> test which triggers a WARNING backtrace on at91 platforms.
> While this WARN_ON is absolutely necessary to warn users that they should
> not mix request with and without IRQF_NO_SUSPEND flags on shared IRQs,
> there is no easy way to solve this issue on at91 platforms.
>
> The main reason is that the init timer is often using a shared irq line
> and thus request this irq with IRQF_NO_SUSPEND flag set, while other
> peripherals request the same irq line without this flag.
>
> This problem has recently been addressed by this patch [2] which adds
> a new IRQF_COND_SUSPEND flag, that authorize mixing IRQF_NO_SUSPEND and
> !IRQF_NO_SUSPEND as long as irq handlers setting IRQF_COND_SUSPEND
> can safely be called in suspended state.
>
> Doing this also implies taking care of system wakeup in devices handlers
> if they tag the IRQ line as a wakeup source.
> The first patch of this series exports the pm_system_wakeup symbol so
> that drivers can call pm_system_wakeup from their interrupt handler.
>
> This series then patches all at91 drivers that can have devices sharing
> their IRQ line with a timer.
>
> This series depends on [2].
Series looks good to me (although admittedly I'm not familiar with the
drivers in question).
Do you want me to apply it on top of [2]?
> [1]https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/kernel/irq/pm.c?id=cab303be91dc47942bc25de33dc1140123540800
> [2]https://lkml.org/lkml/2015/2/26/675
>
> Boris Brezillon (6):
> PM / wakeup: export pm_system_wakeup symbol
> rtc: at91sam9: rework wakeup and interrupt handling
> rtc: at91rm9200: rework wakeup and interrupt handling
> clk: at91: implement suspend/resume for the PMC irqchip
> watchdog: at91sam9: request the irq with IRQF_NO_SUSPEND
> tty: serial: atmel: rework interrupt and wakeup handling
>
> drivers/base/power/wakeup.c | 1 +
> drivers/clk/at91/pmc.c | 20 ++++++++++-
> drivers/clk/at91/pmc.h | 1 +
> drivers/rtc/rtc-at91rm9200.c | 62 +++++++++++++++++++++++++--------
> drivers/rtc/rtc-at91sam9.c | 73 ++++++++++++++++++++++++++++++++-------
> drivers/tty/serial/atmel_serial.c | 49 +++++++++++++++++++++++---
> drivers/watchdog/at91sam9_wdt.c | 3 +-
> 7 files changed, 177 insertions(+), 32 deletions(-)
>
>
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists