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