Messages in this thread | | | Subject | Re: [PATCH] pinctrl: intel: Implement intel_gpio_get_direction callback | From | Javier Arteaga <> | Date | Tue, 6 Mar 2018 15:29:06 +0000 |
| |
On 06/03/2018 14:59, Andy Shevchenko wrote: > On Tue, 2018-03-06 at 16:56 +0200, Andy Shevchenko wrote: >> On Tue, 2018-03-06 at 14:31 +0000, Javier Arteaga wrote: > >>>> +static int intel_gpio_get_direction(struct gpio_chip *chip, >>>> unsigned int offset) >>>> +{ > >>>> + if (padcfg0 & PADCFG0_PMODE_MASK) >>>> + return -EINVAL; >> >> Actually we might return direction of GPIO function while pin is in >> some >> other mode, though it would probably make not much sense in practice. > > One more though, this is a call back for GPIO function anyway, so, above > condition should never happen. I think it's safe to remove it > completely.
The story behind that check is likely *not* a valid usecase: the current iteration of the UP board drivers use gpiod_get_direction() *while* requesting GPIOs to mirror SoC GPIO config on the on-board FPGA. So the direction doesn't make sense for pins set to function mode.
As per your other feedback that driver should be reworked anyway - that's not a reason to keep the check. I just thought it's a bit more defensive, and saw there's some precedent of doing this:
f002d07c56c7 ("gpio: tegra: Implement gpio_get_direction callback")
That being said I don't have a strong argument either way :) I'll resend if you still feel it's unnecessary.
Thanks for reviewing!
| |