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
>> 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
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!