Messages in this thread | | | From | Rob Herring <> | Date | Tue, 9 Jun 2015 16:23:04 -0500 | Subject | Re: [PATCH 00/15] Kill off set_irq_flags |
| |
On Tue, Jun 9, 2015 at 3:28 PM, Russell King - ARM Linux <linux@arm.linux.org.uk> wrote: > On Tue, Jun 09, 2015 at 01:26:26PM -0500, Rob Herring wrote: >> 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
| |