Re: [PATCH] pinctrl: cherryview: fix issues caused by dynamic gpio irqs mapping

From: Mika Westerberg
Date: Fri Oct 06 2017 - 04:28:41 EST


On Wed, Oct 04, 2017 at 09:42:49AM +0300, Mika Westerberg wrote:
> On Tue, Oct 03, 2017 at 12:00:49PM -0500, Grygorii Strashko wrote:
> > New GPIO IRQs are allocated and mapped dynamically by default when
> > GPIO IRQ infrastructure is used by cherryview-pinctrl driver.
> > This causes issues on some Intel platforms [1][2] with broken BIOS which
> > hardcodes Linux IRQ numbers in their ACPI tables.
> >
> > On such platforms cherryview-pinctrl driver should allocate and map all
> > GPIO IRQs at probe time.
> > Side effect - "Cannot allocate irq_descs @ IRQ%d, assuming pre-allocated\n"
> > can be seen at boot log.
> >
> > NOTE. It still may fail if boot sequence will changed and some interrupt
> > controller will be probed before cherryview-pinctrl which will shift Linux IRQ
> > numbering (expected with CONFIG_SPARCE_IRQ enabled).
> >
> > [1] https://bugzilla.kernel.org/show_bug.cgi?id=194945
> > [2] https://lkml.org/lkml/2017/9/28/153
> > Cc: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
> > Cc: Chris Gorman <chrisjohgorman@xxxxxxxxx>
> > Cc: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
> > Cc: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
> > Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
> > Reported-by: Chris Gorman <chrisjohgorman@xxxxxxxxx>
> > Reported-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
>
> Looks reasonable to me. Thanks for taking care of this!
>
> Chris, can you try if this fixes the issue and provide your Tested-by?

Linus,

Chris gave his tested-by in another thread:

https://patchwork.kernel.org/patch/9985087/

Chris, please let me know if that was not your intention.

I'm fine with the patch as well,

Acked-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>

I guess this requires stable tag because if I understand comments in
that bug right, it affects the whole v4.13.