On 05/22/2013 10:00 AM, Florian Vaussard wrote: > Hello Stephan, Tony, > > Thank you for your reviews. > > On 05/22/2013 05:34 PM, Tony Lindgren wrote: >> * Stephen Warren <swarren@xxxxxxxxxxxxx> [130522 08:32]: >>> On 05/22/2013 08:27 AM, Florian Vaussard wrote: >>>> Define the OMAP_GPIO macro to conveniently use GPIO inside OMAP DT. >>>> For example: >>>> >>>> gpios = <&gpio6 3 0>; /* GPIO 163 */ >>>> >>>> can be replaced by >>>> >>>> gpios = OMAP_GPIO(163, 0); >>> >>>> diff --git a/include/dt-bindings/gpio/omap-gpio.h >>>> b/include/dt-bindings/gpio/omap-gpio.h >>> >>>> +#define OMAP_GPIO_0_BANK gpio1 >>>> +#define OMAP_GPIO_1_BANK gpio1 >>>> +#define OMAP_GPIO_2_BANK gpio1 >>>> +#define OMAP_GPIO_3_BANK gpio1 >>> >>> There are a /lot/ of those. Is this really worth it? ... > From a board point a view, I consider this macro as being easier to use, > than having to perform the necessary arithmetic to get the bank + offset > for each GPIO when converting existing boards or developing new ones. > > But I also agree with you, and I was sad not to find a more elegant > way. Maybe someone with better preprocessor skills could come up with > a better solution? I did a quick bit of searching before, and while cpp is certainly capable of doing the shifting/masking required to calculate the bank ID directly, I don't think it's capable of constructing the symbol gpio1 as opposed to the string "gpio1":-( I'd love to be proven wrong though, but the torture e.g. cpp "99 bottles of beer on the wall" goes through to stuff implies it isn't possible. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html