of.h: Keep extern declaration of of_* variables when !CONFIG_OF
authorHans de Goede <hdegoede@redhat.com>
Fri, 14 Nov 2014 12:26:52 +0000 (13:26 +0100)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 14 Nov 2014 13:28:58 +0000 (15:28 +0200)
Keep the extern declaration of of_allnodes and friends, when building without
of support, this way code using them can be written like this:

if (IS_ENABLED(CONFIG_OF_PLATFORM) && of_chosen) {
for_each_child_of_node(of_chosen, np)
...
}

And rely on the compiler optimizing it away, avoiding the need for #ifdef-ery.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
include/linux/of.h

index 6545e7a..f83ca9d 100644 (file)
@@ -105,8 +105,6 @@ static inline struct device_node *of_node_get(struct device_node *node)
 static inline void of_node_put(struct device_node *node) { }
 #endif /* !CONFIG_OF_DYNAMIC */
 
-#ifdef CONFIG_OF
-
 /* Pointer for first entry in chain of all nodes. */
 extern struct device_node *of_allnodes;
 extern struct device_node *of_chosen;
@@ -114,6 +112,7 @@ extern struct device_node *of_aliases;
 extern struct device_node *of_stdout;
 extern raw_spinlock_t devtree_lock;
 
+#ifdef CONFIG_OF
 static inline bool of_have_populated_dt(void)
 {
        return of_allnodes != NULL;