1 /* SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) */ 2 /* Copyright 2024 NXP */ 3 4 #include "enetc_pf.h" 5 6 int enetc_pf_set_mac_addr(struct net_device *ndev, void *addr); 7 int enetc_setup_mac_addresses(struct device_node *np, struct enetc_pf *pf); 8 void enetc_pf_netdev_setup(struct enetc_si *si, struct net_device *ndev, 9 const struct net_device_ops *ndev_ops); 10 int enetc_mdiobus_create(struct enetc_pf *pf, struct device_node *node); 11 void enetc_mdiobus_destroy(struct enetc_pf *pf); 12 int enetc_phylink_create(struct enetc_ndev_priv *priv, struct device_node *node, 13 const struct phylink_mac_ops *ops); 14 void enetc_phylink_destroy(struct enetc_ndev_priv *priv); 15 void enetc_set_default_rss_key(struct enetc_pf *pf); 16 int enetc_vlan_rx_add_vid(struct net_device *ndev, __be16 prot, u16 vid); 17 int enetc_vlan_rx_del_vid(struct net_device *ndev, __be16 prot, u16 vid); 18 19 static inline u16 enetc_get_ip_revision(struct enetc_hw *hw) 20 { 21 return enetc_global_rd(hw, ENETC_G_EIPBRR0) & EIPBRR0_REVISION; 22 } 23