Thread (5 messages) 5 messages, 4 authors, 2020-02-20

Re: [REGRESSION] gpio hogging fails with pinctrl gpio drivers

From: Andrey Smirnov <hidden>
Date: 2020-02-20 17:28:28
Also in: linux-gpio

On Thu, Feb 20, 2020 at 12:18 AM Linus Walleij [off-list ref] wrote:
On Thu, Feb 6, 2020 at 6:33 PM Russell King - ARM Linux admin
[off-list ref] wrote:
quoted
It seems that sometime between 4.20 and 5.5, something has broken the
ability to specify gpio-hogs in DT for GPIOs that are written around
pinctrl drivers.
(explanation that makes perfect sense)
quoted
Consequently, adding a gpio-hog to DT for this driver results in the
driver endlessly returning -EPROBE_DEFER.
I suspect this is sx150x-specific and suspect these two commits:

1a1d39e1b8dd pinctrl: sx150x: Register pinctrl before adding the gpiochip
b930151e5b55 pinctrl: sx150x: Add a static gpio/pinctrl pin range mapping

I suppose people weren't using hogs very much with the sx150x and
it didn't turn up in testing so far.

I don't think for example pinctrl-stmfx.c has this problem, as it registers
the pin ranges from the device tree as part of the core code.
But other drivers calling gpiochip_add_pin_range() may be experiencing
this.

Peter/Andrey, do you have some idea? Have you tested this usecase (hogs)
with the sx150x?
Haven't done any GPIO hogging on sx150x, unfortunately. My use-cases were:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/vf610-zii-dev-rev-c.dts

and

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/vf610-zii-scu4-aib.dts

which didn't have any hogs so far (there's a chance Russell is using
the former for his experiments, so maybe that'll change). I don't any
useful input on this regression, sorry. I do have Rev C. board readily
available, so I can provide Tested-by's if I am CC'd on fixes.

Thanks,
Andrey Smirnov

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help