Re: [PATCH] regulator: core: GPIO #0 is a valid GPIO
From: Dmitry Eremin-Solenikov
Date: Mon Sep 01 2014 - 07:59:44 EST
On 09/01/2014 02:15 PM, Mark Brown wrote:
On Mon, Sep 01, 2014 at 09:46:54AM +0200, Dirk Behme wrote:
I wonder how this fits to
"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");"
There's no practical way to deploy that without breaking users - as soon
as you treat 0 as a valid GPIO you make all existing users relying on
the natural behaviour of treating 0 as default instantly buggy which is
not practical. Really the GPIO API is badly specified here.
Back in the time before DTS conversion started, the 0 was a correct GPIO
number. If somebody wanted to specify that no gpio is provided, he
provided -1 as an invalid number. I have the feeling that allowing users
to use 0 as 'no gpio' is a mistake. Or the API should be changed
to disallow GPIO 0 to exist at all.
With best wishes
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/