Re: [PATCH] regulator: core: GPIO #0 is a valid GPIO

Dirk Behme
2014-09-01T07:47:06Z

On 29.08.2014 21:01, Mark Brown wrote:
> On Fri, Aug 29, 2014 at 10:19:16PM +0400, Dmitry Eremin-Solenikov wrote:
>> From: Dirk Behme <dirk.behme@de.bosch.com>
>>
>> With GPIO #0, this if statement will always fail. Remove this, the
>> check for gpio_is_valid() is sufficent here.
>
> No, read the archives

Could you kindly give us a pointer to the relevant thread in the archive?

> this will break boards using zero as default.
> Any current boards should be using DT and so shouldn't be using fixed
> GPIO numbers in the first place which will mean they'll not end up
> getting zero as a valid GPIO.

Hmm? What's wrong with a DT entry

<&gpio1 0 0>;

for ena_gpio resulting in zero as a valid GPIO?

> If you are using zero as a GPIO for some
> reason provide a way to specify that the GPIO is a real GPIO and not
> just the default value for the struct.

Do you want to say that GPIO #0 (<&gpio1 0 0>;) isn't a valid GPIO for
config->ena_gpio?

I wonder how this fits to

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/gpio/gpio-legacy.txt

"GPIOs are identified by unsigned integers in the range 0..MAX_INT"

"If you want to initialize a structure with an invalid GPIO number, use
some negative number (perhaps "-EINVAL");"

then?

Best regards

Dirk