On Wed, Jan 20, 2021 at 1:46 AM Dmitry Osipenko <digetx@xxxxxxxxx> wrote: > The irq_set_affinity callback should not be set if parent IRQ domain > doesn't present because gpio-tegra driver callback fails in this case, > causing a noisy error messages on system suspend: > > Disabling non-boot CPUs ... > IRQ 26: no longer affine to CPU1 > IRQ128: set affinity failed(-22). > IRQ130: set affinity failed(-22). > IRQ131: set affinity failed(-22). > IRQ 27: no longer affine to CPU2 > IRQ128: set affinity failed(-22). > IRQ130: set affinity failed(-22). > IRQ131: set affinity failed(-22). > IRQ 28: no longer affine to CPU3 > IRQ128: set affinity failed(-22). > IRQ130: set affinity failed(-22). > IRQ131: set affinity failed(-22). > Entering suspend state LP1 > > Hence just don't specify the irq_set_affinity callback if parent PMC > IRQ domain is missing. Tegra isn't capable of setting affinity per GPIO, > affinity could be set only per GPIO bank, thus there is nothing to do > for gpio-tegra in regards to CPU affinity without the parent IRQ domain. > > Tested-by: Peter Geis <pgwipeout@xxxxxxxxx> # Ouya T30 > Tested-by: Matt Merhar <mattmerhar@xxxxxxxxxxxxxx> # Ouya T30 > Tested-by: Dmitry Osipenko <digetx@xxxxxxxxx> # A500 T20 and Nexus7 T30 > Fixes: efcdca286eef ("gpio: tegra: Convert to gpio_irq_chip") > Reported-by: Matt Merhar <mattmerhar@xxxxxxxxxxxxxx> > Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx> Ick, sorry for the noise! Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx> Yours, Linus Walleij