Lines Matching full:netdev
38 * @netdev: repr netdev to increment stats on
41 void ice_repr_inc_rx_stats(struct net_device *netdev, unsigned int len) in ice_repr_inc_rx_stats() argument
43 struct ice_repr *repr = ice_netdev_to_repr(netdev); in ice_repr_inc_rx_stats()
55 * @netdev: pointer to port representor netdev
59 ice_repr_get_stats64(struct net_device *netdev, struct rtnl_link_stats64 *stats) in ice_repr_get_stats64() argument
61 struct ice_netdev_priv *np = netdev_priv(netdev); in ice_repr_get_stats64()
87 * @netdev: pointer to port representor netdev
89 struct ice_repr *ice_netdev_to_repr(const struct net_device *netdev) in ice_netdev_to_repr() argument
91 struct ice_netdev_priv *np = netdev_priv(netdev); in ice_netdev_to_repr()
98 * @netdev: network interface device structure
106 static int ice_repr_vf_open(struct net_device *netdev) in ice_repr_vf_open() argument
108 struct ice_repr *repr = ice_netdev_to_repr(netdev); in ice_repr_vf_open()
116 netif_carrier_on(netdev); in ice_repr_vf_open()
117 netif_tx_start_all_queues(netdev); in ice_repr_vf_open()
122 static int ice_repr_sf_open(struct net_device *netdev) in ice_repr_sf_open() argument
124 netif_carrier_on(netdev); in ice_repr_sf_open()
125 netif_tx_start_all_queues(netdev); in ice_repr_sf_open()
132 * @netdev: network interface device structure
140 static int ice_repr_vf_stop(struct net_device *netdev) in ice_repr_vf_stop() argument
142 struct ice_repr *repr = ice_netdev_to_repr(netdev); in ice_repr_vf_stop()
150 netif_carrier_off(netdev); in ice_repr_vf_stop()
151 netif_tx_stop_all_queues(netdev); in ice_repr_vf_stop()
156 static int ice_repr_sf_stop(struct net_device *netdev) in ice_repr_sf_stop() argument
158 netif_carrier_off(netdev); in ice_repr_sf_stop()
159 netif_tx_stop_all_queues(netdev); in ice_repr_sf_stop()
222 return ice_add_cls_flower(repr->netdev, repr->src_vsi, flower); in ice_repr_setup_tc_cls_flower()
248 ice_repr_setup_tc(struct net_device *netdev, enum tc_setup_type type, in ice_repr_setup_tc() argument
251 struct ice_netdev_priv *np = netdev_priv(netdev); in ice_repr_setup_tc()
286 * ice_is_port_repr_netdev - Check if a given netdevice is a port representor netdev
287 * @netdev: pointer to netdev
289 bool ice_is_port_repr_netdev(const struct net_device *netdev) in ice_is_port_repr_netdev() argument
291 return netdev && (netdev->netdev_ops == &ice_repr_vf_netdev_ops || in ice_is_port_repr_netdev()
292 netdev->netdev_ops == &ice_repr_sf_netdev_ops); in ice_is_port_repr_netdev()
296 * ice_repr_reg_netdev - register port representor netdev
297 * @netdev: pointer to port representor netdev
298 * @ops: new ops for netdev
301 ice_repr_reg_netdev(struct net_device *netdev, const struct net_device_ops *ops) in ice_repr_reg_netdev() argument
303 eth_hw_addr_random(netdev); in ice_repr_reg_netdev()
304 netdev->netdev_ops = ops; in ice_repr_reg_netdev()
305 ice_set_ethtool_repr_ops(netdev); in ice_repr_reg_netdev()
307 netdev->hw_features |= NETIF_F_HW_TC; in ice_repr_reg_netdev()
309 netif_carrier_off(netdev); in ice_repr_reg_netdev()
310 netif_tx_stop_all_queues(netdev); in ice_repr_reg_netdev()
312 return register_netdev(netdev); in ice_repr_reg_netdev()
332 free_netdev(repr->netdev); in ice_repr_destroy()
339 unregister_netdev(repr->netdev); in ice_repr_rem_vf()
346 unregister_netdev(repr->netdev); in ice_repr_rem_sf()
374 repr->netdev = alloc_etherdev(sizeof(struct ice_netdev_priv)); in ice_repr_create()
375 if (!repr->netdev) { in ice_repr_create()
388 np = netdev_priv(repr->netdev); in ice_repr_create()
391 repr->netdev->min_mtu = ETH_MIN_MTU; in ice_repr_create()
392 repr->netdev->max_mtu = ICE_MAX_MTU; in ice_repr_create()
394 SET_NETDEV_DEV(repr->netdev, ice_pf_to_dev(src_vsi->back)); in ice_repr_create()
399 free_netdev(repr->netdev); in ice_repr_create()
415 SET_NETDEV_DEVLINK_PORT(repr->netdev, &vf->devlink_port); in ice_repr_add_vf()
416 err = ice_repr_reg_netdev(repr->netdev, &ice_repr_vf_netdev_ops); in ice_repr_add_vf()
432 unregister_netdev(repr->netdev); in ice_repr_add_vf()
478 SET_NETDEV_DEVLINK_PORT(repr->netdev, &sf->devlink_port); in ice_repr_add_sf()
479 err = ice_repr_reg_netdev(repr->netdev, &ice_repr_sf_netdev_ops); in ice_repr_add_sf()
529 netif_carrier_on(repr->netdev); in ice_repr_start_tx_queues()
530 netif_tx_start_all_queues(repr->netdev); in ice_repr_start_tx_queues()
539 netif_carrier_off(repr->netdev); in ice_repr_stop_tx_queues()
540 netif_tx_stop_all_queues(repr->netdev); in ice_repr_stop_tx_queues()