1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * OF helpers for network devices.
4 */
5
6#ifndef __LINUX_OF_NET_H
7#define __LINUX_OF_NET_H
8
9#include <linux/phy.h>
10
11#if defined(CONFIG_OF) && defined(CONFIG_NET)
12#include <linux/of.h>
13
14struct net_device;
15extern int of_get_phy_mode(struct device_node *np, phy_interface_t *interface);
16extern int of_get_mac_address(struct device_node *np, u8 *mac);
17extern int of_get_mac_address_nvmem(struct device_node *np, u8 *mac);
18int of_get_ethdev_address(struct device_node *np, struct net_device *dev);
19extern struct net_device *of_find_net_device_by_node(struct device_node *np);
20#else
21static inline int of_get_phy_mode(struct device_node *np,
22 phy_interface_t *interface)
23{
24 return -ENODEV;
25}
26
27static inline int of_get_mac_address(struct device_node *np, u8 *mac)
28{
29 return -ENODEV;
30}
31
32static inline int of_get_mac_address_nvmem(struct device_node *np, u8 *mac)
33{
34 return -ENODEV;
35}
36
37static inline int of_get_ethdev_address(struct device_node *np, struct net_device *dev)
38{
39 return -ENODEV;
40}
41
42static inline struct net_device *of_find_net_device_by_node(struct device_node *np)
43{
44 return NULL;
45}
46#endif
47
48#endif /* __LINUX_OF_NET_H */
49

source code of linux/include/linux/of_net.h