diff --git a/include/linux/of.h b/include/linux/of.h
index b5f1c88e40a7c1cdb3a27dec78bf6b60acd539c5..bd716f8908de022b1b391401c5c877aed9a85ba8 100644
--- a/include/linux/of.h
+++ b/include/linux/of.h
@@ -200,13 +200,6 @@ extern int of_property_read_u32_array(const struct device_node *np,
 				      u32 *out_values,
 				      size_t sz);
 
-static inline int of_property_read_u32(const struct device_node *np,
-				       char *propname,
-				       u32 *out_value)
-{
-	return of_property_read_u32_array(np, propname, out_value, 1);
-}
-
 extern int of_property_read_string(struct device_node *np, char *propname,
 					const char **out_string);
 extern int of_device_is_compatible(const struct device_node *device,
@@ -241,12 +234,32 @@ extern void of_attach_node(struct device_node *);
 extern void of_detach_node(struct device_node *);
 #endif
 
-#else
+#else /* CONFIG_OF */
 
 static inline bool of_have_populated_dt(void)
 {
 	return false;
 }
 
+static inline int of_property_read_u32_array(const struct device_node *np,
+				char *propname, u32 *out_values, size_t sz)
+{
+	return -ENOSYS;
+}
+
+static inline int of_property_read_string(struct device_node *np,
+				char *propname, const char **out_string)
+{
+	return -ENOSYS;
+}
+
 #endif /* CONFIG_OF */
+
+static inline int of_property_read_u32(const struct device_node *np,
+				       char *propname,
+				       u32 *out_value)
+{
+	return of_property_read_u32_array(np, propname, out_value, 1);
+}
+
 #endif /* _LINUX_OF_H */