[PATCH 0/4] gpio/pinctrl-rockchip: Fixes for the recently separated gpio/pinctrl driver

Heiko Stuebner
2021-09-13T22:52:25Z

It looks like rk3288-veyron(-pinky) was the one device in my boardfarm
I didn't test the pinctrl/gpio patches on and it seems this one uses
some specific parts none of the other do. So when I did my v5.15-rc1
testrun I got a surprise.

Not only did the pinctrl-hogs cause a null-pointer exception but the
device also entered a reset loop a bit later in the boot.

This series addresses the issues in hopefully a nice way and should
ideally become part of 5.15 before other people run into issues.

* Patch 1 addresses the reset-loop, which is caused by a not-ideal
check vor v1 vs. v2 controller in the debounce code
* Patch 2 is just a find when looking through the code
* Patches 3+4 address the pinctrl-hogs issue by creating a deferred
queue where the pinctrl can temporarily store these hog settings
if needed and the pinctrl driver can retrieve them during probe.

Heiko Stuebner (4):
gpio/rockchip: extended debounce support is only available on v2
gpio/rockchip: fix get_direction value handling
pinctrl/rockchip: add a queue for deferred pin output settings on
probe
gpio/rockchip: fetch deferred output settings on probe

drivers/gpio/gpio-rockchip.c | 26 +++++++++++-
drivers/pinctrl/pinctrl-rockchip.c | 67 ++++++++++++++++++++++++++++++
drivers/pinctrl/pinctrl-rockchip.h | 10 +++++
3 files changed, 101 insertions(+), 2 deletions(-)

--
2.29.2