Hi Niklas, On Thu, Dec 8, 2016 at 6:32 PM, Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> wrote: > From: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> > > Currently gpio modules are runtime-resumed at probe time. This means the > gpio module will be active all the time (except during system suspend, > if not configured as a wake-up source). > > While an R-Car Gen2 gpio module retains pins configured for output at > the requested level while put in standby mode, gpio register cannot be > accessed while suspended. Unfortunately pm_runtime_get_sync() cannot be > called from all contexts where gpio register access is needed. Hence > move the Runtime PM handling from probe/remove time to gpio request/free > time, which is probably the best we can do. > > On r8a7791/koelsch, gpio modules 0, 1, 3, and 4 are now suspended during > normal use (gpio2 is used for LEDs and regulators, gpio5 for keys, gpio6 > for SD-Card CD & WP, gpio7 for keys and regulators). FWIW, gpio module 3 is no longer suspended, as gpio3 is used by HDMI since commit 83a0731b39f3bc24 ("ARM: shmobile: koelsch: Add DU HDMI output support"). > Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> > [Niklas: s/gpio_to_priv(chip)/gpiochip_get_data(chip)/] > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> Thanks for fixing and resurrecting! Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds