On Wed, Nov 19, 2014 at 3:39 PM, Rob Herring <robherring2@xxxxxxxxx> wrote: > On Wed, Nov 19, 2014 at 8:49 AM, Arnd Bergmann <arnd@xxxxxxxx> wrote: >> On Wednesday 19 November 2014 08:45:58 Rob Herring wrote: >>> > static inline struct device_node *dev_of_node(struct device *of_node) >>> > { >>> > if (!IS_ENABLED(CONFIG_OF)) >>> > return NULL; >>> > >>> > return dev->of_node; >>> > } >>> > >>> > Adding the IS_ENABLED() in a lot of drivers isn't horrible, but we seem >>> > to be doing it a lot. >>> >>> I think you misread things. of_node is always present now, so it >>> should always be NULL for !CONFIG_OF. >>> >> >> No, I didn't misread it but I should have been clearer with the intention: >> The idea is to tell the compiler that we know it will be NULL when CONFIG_OF >> is unset, so it can optimize out all code that does >> >> struct device_node *dn = dev_of_node(dev); >> >> if (dn) { >> ... >> /* complex code */ >> ... >> } >> >> and we can avoid using an #ifdef or if(IS_ENABLED()) in the source to >> compile out the DT-only sections of a driver. > > Oh, right. That would definitely be worthwhile to do. Agreed. g. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html