Re: [GIT pull] irq updates for 4.13
From: Thomas Gleixner
Date: Tue Jul 11 2017 - 10:41:28 EST
On Tue, 11 Jul 2017, Tony Lindgren wrote:
> * Thomas Gleixner <tglx@xxxxxxxxxxxxx> [170711 02:48]:
> And "external abort on non-linefetch" means something is not clocked
> in this case. The following alone makes things boot for me again, but I don't
> quite follow what has now changed with the ordering.. Thomas, any ideas?
Ah. Now that makes sense.
Unpatched the ordering is:
chip_bus_lock(desc);
irq_request_resources(desc);
Now the offending change reordered the calls. OMAP gpio has:
omap_gpio_irq_bus_lock()
pm_runtime_get_sync(bank->chip.parent);
So that at least explains the error. So that omap gpio irq chip (ab)uses
the bus_lock() callback to do runtime power management. Sigh, I did not
expect that. Let me have a deeper look if that's OMAP only or whether this
happens in other places as well.
Thanks,
tglx