On Mon, Sep 21, 2015 at 11:51 AM, Thomas Gleixner [off-list ref] wrote:
On Mon, 21 Sep 2015, Manoil Claudiu wrote:
quoted
quoted
The device is set as wakeup capable using proper wakeup API but the
driver misuses IRQF_NO_SUSPEND to set the interrupt as wakeup source
which is incorrect.
This patch removes the use of IRQF_NO_SUSPEND flags replacing it with
enable_irq_wake instead.
What would be the purpose of IRQF_NO_SUSPEND flag then? The flag is a
friendlier API compared to calling enable_irq_wake(). For older kernels,
It's not an API, it's just a bandaid for lazy programmers.
quoted
on PPC architectures, the flag did the job. When did this change? Since
when using IRQF_NO_SUSPEND is a "misuse"?
It always was. Simply because IRQF_NO_SUSPEND has absolutely nothing
to do with wakeup interrupt sources. It's a flag which excludes the
interrupt from the suspend mechanism, but it does not flag it a wakeup
source.
It was not very clear on the intended use of IRQF_NO_SUSPEND at the
beginning as it was not documented anywhere. It's good that we have
the Documentation/power/suspend-and-interrupts.txt to clarify that
now.
Regards,
Leo