On Thu, Feb 20, 2020 at 12:18 AM Linus Walleij <linus.walleij@xxxxxxxxxx> wrote: > > On Thu, Feb 6, 2020 at 6:33 PM Russell King - ARM Linux admin > <linux@xxxxxxxxxxxxxxx> wrote: > > > 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) > > 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