Messages in this thread | | | Date | Wed, 23 Sep 2015 16:20:16 -0500 | Subject | Re: [PATCH 13/17] net: gianfar: remove misuse of IRQF_NO_SUSPEND flag | From | Li Yang <> |
| |
On Mon, Sep 21, 2015 at 11:51 AM, Thomas Gleixner <tglx@linutronix.de> wrote: > On Mon, 21 Sep 2015, Manoil Claudiu wrote: >> >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. > >> 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
| |