180c8c852SWei Fang /* SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) */ 280c8c852SWei Fang /* Copyright 2024 NXP */ 380c8c852SWei Fang 480c8c852SWei Fang #include "enetc_pf.h" 580c8c852SWei Fang 680c8c852SWei Fang int enetc_pf_set_mac_addr(struct net_device *ndev, void *addr); 780c8c852SWei Fang int enetc_setup_mac_addresses(struct device_node *np, struct enetc_pf *pf); 880c8c852SWei Fang void enetc_pf_netdev_setup(struct enetc_si *si, struct net_device *ndev, 980c8c852SWei Fang const struct net_device_ops *ndev_ops); 1080c8c852SWei Fang int enetc_mdiobus_create(struct enetc_pf *pf, struct device_node *node); 1180c8c852SWei Fang void enetc_mdiobus_destroy(struct enetc_pf *pf); 1280c8c852SWei Fang int enetc_phylink_create(struct enetc_ndev_priv *priv, struct device_node *node, 1380c8c852SWei Fang const struct phylink_mac_ops *ops); 1480c8c852SWei Fang void enetc_phylink_destroy(struct enetc_ndev_priv *priv); 15*99100d0dSWei Fang 16*99100d0dSWei Fang static inline u16 enetc_get_ip_revision(struct enetc_hw *hw) 17*99100d0dSWei Fang { 18*99100d0dSWei Fang return enetc_global_rd(hw, ENETC_G_EIPBRR0) & EIPBRR0_REVISION; 19*99100d0dSWei Fang } 20