Re: [PATCH 1/2] gpio: add pin biasing and drive mode to gpiolib

From: Alan Cox
Date: Wed Apr 20 2011 - 05:44:43 EST


> > gpio_get_property(gpio, GPIO_BIAS, GPIO_BIAS_WHATEVER);
> > gpio_set_property(gpio, GPIO_BIAS, GPIO_BIAS_WHATEVER_ELSE);
>
> Yeah I'm all for that so long as the capability constants are defined by the gpio provider, eg <linux/gpio/mygpioexpander.h>. There's no way gpiolib should be keeping a big ole list of every possible config option for every gpio provider. Well, maybe gpiolib can know about the options (eg GPIO_BIAS) so long as it doesn't have to enumerate every possible value.

It needs to know about any that might become common across multiple
devices so that if multiple devices have the same feature set it works
but I agree entirely about any weird platform or device specific stuff.

Perhaps for that it just needs to define

GPIO_PRIVATE_PROP 0x8000 /* to FFFF */

and be done with it


For multiple properties that can be shared you can't really get away from
needing a common name or number space. The good thing is that gpiolib
itself doesn't really care about that. To the core gpio code it's just a
set of numbers that only drivers and users know about.

Alan
--
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/