[PATCH] gpio/rockchip: Stop calling pinctrl for set_direction
Linus Walleij
linusw at kernel.org
Tue Jan 27 02:00:46 PST 2026
On Mon, Jan 26, 2026 at 2:48 PM Bartosz Golaszewski <brgl at kernel.org> wrote:
> On Mon, Jan 26, 2026 at 1:12 PM Robin Murphy <robin.murphy at arm.com> wrote:
> >
> > Marking the whole controller as sleeping due to the pinctrl calls in the
> > .direction_{input,output} callbacks has the unfortunate side effect that
> > legitimate invocations of .get and .set, which cannot themselves sleep,
> > in atomic context now spew WARN()s from gpiolib.
> >
> > However, as Heiko points out, the driver doing this is a bit silly to
> > begin with, as the pinctrl .gpio_set_direction hook doesn't even care
> > about the direction, the hook is only used to claim the mux. And sure
> > enough, the .gpio_request_enable hook exists to serve this very purpose,
> > so switch to that and remove the problematic business entirely.
> >
> > Cc: stable at vger.kernel.org
> > Fixes: 20cf2aed89ac ("gpio: rockchip: mark the GPIO controller as sleeping")
> > Suggested-by: Heiko Stuebner <heiko at sntech.de>
> > Signed-off-by: Robin Murphy <robin.murphy at arm.com>
> > ---
>
> Linus,
>
> With your Ack I can queue this for v6.19-rc8.
Late to the show :)
Heiko's ACK is more than enough for this driver, he knows
Rockchip way better than me.
Yours,
Linus Walleij
More information about the Linux-rockchip
mailing list