On Wed, Nov 19, 2014 at 2:38 AM, Arnd Bergmann <arnd@xxxxxxxx> wrote: > On Wednesday 19 November 2014 13:35:44 Benjamin Herrenschmidt wrote: >> On Wed, 2014-11-19 at 10:39 +1100, Jeremy Kerr wrote: >> > Hi Rob, >> > >> > >> diff --git a/drivers/base/core.c b/drivers/base/core.c >> > >> index 20da3ad..8c7b607 100644 >> > >> --- a/drivers/base/core.c >> > >> +++ b/drivers/base/core.c >> > >> @@ -493,6 +493,15 @@ static int device_add_attrs(struct device *dev) >> > >> goto err_remove_dev_groups; >> > >> } >> > >> >> > >> +#ifdef CONFIG_OF >> > >> + if (dev->of_node) { >> > > >> > > if (IS_ENABLED(CONFIG_OF) && dev->of_node) >> > >> > struct device doesn't have an of_node member if !CONFIG_OF, so we'll >> > need to disable this block in the preprocessor. >> >> Actually that's no longer the case since 2.6.39 afaik > > I wonder if we should create a small helper for this, like > > 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. Rob -- 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