[PATCH 00/15] Kill off set_irq_flags
From: robh@kernel.org (Rob Herring)
Date: 2015-06-09 21:23:34
Also in:
lkml
On Tue, Jun 9, 2015 at 3:28 PM, Russell King - ARM Linux [off-list ref] wrote:
On Tue, Jun 09, 2015 at 01:26:26PM -0500, Rob Herring wrote:quoted
This series converts all users of ARM specific set_irq_flags to use common genirq functions. In many cases where irqdomains are used, the set_irq_flags calls were redundant, so I've removed them. This is not intended for 4.2, but if any subsystem maintainers want to pick up their subsystem's change that is fine. All but the last 2 patches stand on their own. Any new drivers going into 4.2 may need a similar change, but I'm sure people are told not to use set_irq_flags in reviews. ;)So what are you doing about the initial state of IRQs on legacy ARM where IRQs start off being un-requestable, and need the set_irq_flags() to make them requestable. I think you could be introducing a massive regression by making this change.
None of that changes. The initial state is set by ARCH_IRQ_INIT_FLAGS which I've not changed: #define ARCH_IRQ_INIT_FLAGS (IRQ_NOREQUEST | IRQ_NOPROBE)
Unless you can prove that this isn't the case, you shouldn't be removing this stuff, especially not from legacy platforms.
set_irq_flags() only does a translation from custom ARM IRQF_* flags to standard flags and then calls irq_modify_status(). This only removes the translation and users set/clear standard flags directly. It is a straight-forward removal of a wrapper function. I *would* like to get rid of ARCH_IRQ_INIT_FLAGS and have the same defaults across arches, but yes that would likely cause regressions. Rob