Skip to contentSkip to conversation

MFD: Make VEXPRESS MFD controller depends on VEXPRESS systems

PATCH New Manjunath Goudar 2 participants 2 messages Aug 12, 2013 1 message not in the archive Device tree

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw

PATCH v2 1/1 MFD: Make VEXPRESS MFD controller depends on VEXPRESS systems

This patch adds a of_find_node_by_phandle() and of_get_next_parent() function declaration dependence on"#ifdef CONFIG_OF" in "include/linux/of.h" else part return inline dummy implementations (returning NULL). Without this patch,build system can lead to issues. This was discovered during randconfig testing,in which VEXPRESS_CONFIG was enabled w/o CONFIG_OF being enabled,leading to the following error:

CC drivers/mfd/vexpress-config.o
drivers/mfd/vexpress-config.c: In function ?__vexpress_config_func_get?:
drivers/mfd/vexpress-config.c:117:4: error: implicit declaration of function ?of_find_node_by_phandle? [-Werror=implicit-function-declaration]

    bridge_node = of_find_node_by_phandle(
    ^
drivers/mfd/vexpress-config.c:117:16: warning: assignment makes pointer from
integer without a cast [enabled by default]
    bridge_node = of_find_node_by_phandle(
Cc Arnd Bergmann <[email protected]>
Cc Pawel Moll <[email protected]>
Cc Deepak Saxena <[email protected]>
Cc Samuel Ortiz <[email protected]>
Cc Lee Jones <[email protected]>

V2:
-Made of_find_node_by_phandle() and of_get_next_parent() function declaration
dependence on"#ifdef CONFIG_OF" in "include/linux/of.h" instead of Kconfig dependence setting in V1 patch and else part return inline dummy implementations (returning NULL) to fix the above randconfig error.

---
 include/linux/of.h | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)
include/linux/of.h +14 -2
index 90a8811..4be252a 100644
@@ -196,10 +196,22 @@ static inline struct device_node *of_find_matching_node(
 #define for_each_matching_node_and_match(dn, matches, match) \
 	for (dn = of_find_matching_node_and_match(NULL, matches, match); \
 	     dn; dn = of_find_matching_node_and_match(dn, matches, match))
-extern struct device_node *of_find_node_by_path(const char *path);
+
+#ifdef CONFIG_OF
 extern struct device_node *of_find_node_by_phandle(phandle handle);
-extern struct device_node *of_get_parent(const struct device_node *node);
 extern struct device_node *of_get_next_parent(struct device_node *node);
+#else
+static inline struct device_node *of_find_node_by_phandle(phandle handle)
+{
+	return NULL;
+}
+static inline struct device_node *of_get_next_parent(struct device_node *node)
+{
+	return NULL;
+}
+#endif
+extern struct device_node *of_find_node_by_path(const char *path);
+extern struct device_node *of_get_parent(const struct device_node *node);
 extern struct device_node *of_get_next_child(const struct device_node *node,
 					     struct device_node *prev);
 extern struct device_node *of_get_next_available_child(
Signature · 1 line
1.8.1.2
#2 lore raw

PATCH v2 1/1 MFD: Make VEXPRESS MFD controller depends on VEXPRESS systems

Quoted 24 lines · Manjunath Goudar

This patch adds a of_find_node_by_phandle() and of_get_next_parent() function declaration dependence on"#ifdef CONFIG_OF" in "include/linux/of.h" else part return inline dummy implementations (returning NULL). Without this patch,build system can lead to issues. This was discovered during randconfig testing,in which VEXPRESS_CONFIG was enabled w/o CONFIG_OF being enabled,leading to the following error:

CC drivers/mfd/vexpress-config.o
drivers/mfd/vexpress-config.c: In function ?__vexpress_config_func_get?:
drivers/mfd/vexpress-config.c:117:4: error: implicit declaration of function ?of_find_node_by_phandle? [-Werror=implicit-function-declaration]

    bridge_node = of_find_node_by_phandle(
    ^
drivers/mfd/vexpress-config.c:117:16: warning: assignment makes pointer from
integer without a cast [enabled by default]
    bridge_node = of_find_node_by_phandle(
Cc Arnd Bergmann <[email protected]>
Cc Pawel Moll <[email protected]>
Cc Deepak Saxena <[email protected]>
Cc Samuel Ortiz <[email protected]>
Cc Lee Jones <[email protected]>
Quoted 8 lines

V2:
-Made of_find_node_by_phandle() and of_get_next_parent() function declaration
dependence on"#ifdef CONFIG_OF" in "include/linux/of.h" instead of Kconfig dependence setting in V1 patch and else part return inline dummy implementations (returning NULL) to fix the above randconfig error.

---
 include/linux/of.h | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

It's all cool, but the subject line doesn't make any sense now, does it? ;-) As in: it's not a vexpress- nor mfd-related patch any more.

Pawel