Hi,
when trying pxa_defconfig with various pxa270 and pxa255 qemu targets, I
noticed that the gpio
pin direction is no longer set. Bisect points to commit a770d946371e ("gpio:
pxa: add pin control
gpio direction and request"). As it turns out, pxa_defconfig does not configure
PINCTRL. As a result,
pinctrl stub functions are used. Those all return 0 if PINCTRL is not
configured. This causes the
pxa gpio driver to wrongly assume that pinctrl configured the gpio pin
direction, and does nothing.
Looking into gpio-mvebu.c, its use of the pinctrl functions is completely
different. It aborts
on error, not on success, from the pinctrl functions. Given that, I have no
idea how to resolve
the problem. Having the stub functions return an error might cause the mvebu
driver (and maybe
others) to fail if there is no pinctrl driver, so that does not seem to be an
option.
If the idea is to mandate pinctrl for PXA architectures, it should probably be
enabled for those
architectures. Unless I am missing something, PXA architectures to not select
PINCTRL, which
suggests that the problem may affect a wide range of systems. Please have a
look.
Thanks,
Guenter