On Fri, Jun 12, 2020 at 03:00:03PM +0200, Wolfram Sang wrote: > On Fri, Jun 12, 2020 at 02:18:06PM +0200, Marc Kleine-Budde wrote: > > On 6/12/20 1:51 PM, Wolfram Sang wrote: > > > > > >> This basically kills the concept of devm for interrupts. Some other > > > > > > It only works when you can ensure you have all interrupts disabled (and > > > none pending) in remove() or the error paths of probe() etc. > > > > But when requesting the interrupt as shared the interrupt handler can get called > > any time, even if you have disabled the IRQ source in your IP core....The shared > > IRQ debug code tests this. > > Yes, so you'd need something like > > if (clks_are_off) > return IRQ_NONE; Maybe then: if (pm_runtime_enabled())? The device structure should be valid at this point so the call should work. > > or skip devm_ for interrupts and handle it manually. (IIRC the input > subsystem really frowns upon devm + irqs for such reasons) > > D'accord? I guess dream of managing every resource automatically is an utopia :) Best regards, Krzysztof