xref: /linux/drivers/net/ethernet/freescale/enetc/enetc_pf_common.h (revision 793baff3f24f16dab9061045e23eea67724feae6)
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 
16 static inline u16 enetc_get_ip_revision(struct enetc_hw *hw)
17 {
18 	return enetc_global_rd(hw, ENETC_G_EIPBRR0) & EIPBRR0_REVISION;
19 }
20