summaryrefslogtreecommitdiff
path: root/backport/backport-include/linux/of_net.h
diff options
context:
space:
mode:
Diffstat (limited to 'backport/backport-include/linux/of_net.h')
-rw-r--r--backport/backport-include/linux/of_net.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/backport/backport-include/linux/of_net.h b/backport/backport-include/linux/of_net.h
index 7f4b688f..18becf5c 100644
--- a/backport/backport-include/linux/of_net.h
+++ b/backport/backport-include/linux/of_net.h
@@ -12,4 +12,20 @@ static inline const void *of_get_mac_address(struct device_node *np)
#endif
#endif
+/* The behavior of of_get_mac_address() changed in kernel 5.2, it now
+ * returns an error code and not NULL in case of an error.
+ */
+#if LINUX_VERSION_IS_LESS(5,2,0)
+static inline const void *backport_of_get_mac_address(struct device_node *np)
+{
+ const void *mac = of_get_mac_address(np);
+
+ if (!mac)
+ return ERR_PTR(-ENODEV);
+
+ return mac;
+}
+#define of_get_mac_address LINUX_BACKPORT(of_get_mac_address)
+#endif /* < 5.2 */
+
#endif /* _BP_OF_NET_H */