Lines Matching refs:netdev
297 void i40e_tx_timeout(struct net_device *netdev) in i40e_tx_timeout() argument
299 static void i40e_tx_timeout(struct net_device *netdev) in i40e_tx_timeout()
302 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_tx_timeout()
312 for (i = 0; i < netdev->num_tx_queues; i++) { in i40e_tx_timeout()
316 q = netdev_get_tx_queue(netdev, i); in i40e_tx_timeout()
317 trans_start = q->trans_start ? : netdev->trans_start; in i40e_tx_timeout()
320 (trans_start + netdev->watchdog_timeo))) { in i40e_tx_timeout()
326 if (i == netdev->num_tx_queues) { in i40e_tx_timeout()
327 netdev_info(netdev, "tx_timeout: no netdev hung queue found\n"); in i40e_tx_timeout()
344 (pf->tx_timeout_last_recovery + netdev->watchdog_timeo))) in i40e_tx_timeout()
357 …netdev_info(netdev, "tx_timeout: VSI_seid: %d, Q %d, NTC: 0x%x, HWB: 0x%x, NTU: 0x%x, TAIL: 0x%x, … in i40e_tx_timeout()
364 netdev_info(netdev, "tx_timeout recovery level %d, hung_queue %d\n", in i40e_tx_timeout()
378 netdev_err(netdev, "tx_timeout recovery unsuccessful\n"); in i40e_tx_timeout()
425 struct net_device *netdev, in i40e_get_netdev_stats_struct() argument
429 struct net_device *netdev, in i40e_get_netdev_stats_struct()
433 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_get_netdev_stats_struct()
1475 int i40e_set_mac(struct net_device *netdev, void *p) in i40e_set_mac() argument
1477 static int i40e_set_mac(struct net_device *netdev, void *p) in i40e_set_mac()
1480 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_set_mac()
1490 if (ether_addr_equal(netdev->dev_addr, addr->sa_data)) { in i40e_set_mac()
1491 netdev_info(netdev, "already using mac address %pM\n", in i40e_set_mac()
1501 netdev_info(netdev, "returning to hw mac address %pM\n", in i40e_set_mac()
1504 netdev_info(netdev, "set new mac address %pM\n", addr->sa_data); in i40e_set_mac()
1513 netdev_info(netdev, in i40e_set_mac()
1520 if (ether_addr_equal(netdev->dev_addr, hw->mac.addr)) { in i40e_set_mac()
1524 ether_addr_copy(element.mac_addr, netdev->dev_addr); in i40e_set_mac()
1529 i40e_del_filter(vsi, netdev->dev_addr, I40E_VLAN_ANY, in i40e_set_mac()
1551 ether_addr_copy(netdev->dev_addr, addr->sa_data); in i40e_set_mac()
1708 void i40e_set_rx_mode(struct net_device *netdev) in i40e_set_rx_mode() argument
1710 static void i40e_set_rx_mode(struct net_device *netdev) in i40e_set_rx_mode()
1713 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_set_rx_mode()
1723 netdev_for_each_uc_addr(uca, netdev) { in i40e_set_rx_mode()
1734 netdev_for_each_mc_addr(mca, netdev) { in i40e_set_rx_mode()
1751 netdev_for_each_mc_addr(mca, netdev) in i40e_set_rx_mode()
1755 netdev_for_each_uc_addr(uca, netdev) in i40e_set_rx_mode()
1759 for_each_dev_addr(netdev, ha) in i40e_set_rx_mode()
1772 if (vsi->current_netdev_flags != vsi->netdev->flags) { in i40e_set_rx_mode()
1884 if (vsi->netdev) { in i40e_sync_vsi_filters()
1885 changed_flags = vsi->current_netdev_flags ^ vsi->netdev->flags; in i40e_sync_vsi_filters()
1886 vsi->current_netdev_flags = vsi->netdev->flags; in i40e_sync_vsi_filters()
2181 static int i40e_change_mtu(struct net_device *netdev, int new_mtu) in i40e_change_mtu() argument
2183 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_change_mtu()
2191 netdev_info(netdev, "changing MTU from %d to %d\n", in i40e_change_mtu()
2192 netdev->mtu, new_mtu); in i40e_change_mtu()
2193 netdev->mtu = new_mtu; in i40e_change_mtu()
2194 if (netif_running(netdev)) in i40e_change_mtu()
2206 int i40e_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd) in i40e_ioctl() argument
2208 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_ioctl()
2287 static void i40e_vlan_rx_register(struct net_device *netdev, u32 features) in i40e_vlan_rx_register() argument
2289 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_vlan_rx_register()
2309 is_netdev = !!(vsi->netdev); in i40e_vsi_add_vlan()
2315 add_f = i40e_add_filter(vsi, vsi->netdev->dev_addr, vid, in i40e_vsi_add_vlan()
2320 vid, vsi->netdev->dev_addr); in i40e_vsi_add_vlan()
2343 if (is_netdev && i40e_find_filter(vsi, vsi->netdev->dev_addr, in i40e_vsi_add_vlan()
2346 i40e_del_filter(vsi, vsi->netdev->dev_addr, in i40e_vsi_add_vlan()
2348 add_f = i40e_add_filter(vsi, vsi->netdev->dev_addr, 0, in i40e_vsi_add_vlan()
2353 vsi->netdev->dev_addr); in i40e_vsi_add_vlan()
2401 struct net_device *netdev = vsi->netdev; in i40e_vsi_kill_vlan() local
2407 is_netdev = !!(netdev); in i40e_vsi_kill_vlan()
2413 i40e_del_filter(vsi, netdev->dev_addr, vid, is_vf, is_netdev); in i40e_vsi_kill_vlan()
2426 ether_addr_equal(netdev->dev_addr, f->macaddr)) in i40e_vsi_kill_vlan()
2435 i40e_del_filter(vsi, netdev->dev_addr, 0, is_vf, is_netdev); in i40e_vsi_kill_vlan()
2436 f = i40e_add_filter(vsi, netdev->dev_addr, I40E_VLAN_ANY, in i40e_vsi_kill_vlan()
2441 I40E_VLAN_ANY, netdev->dev_addr); in i40e_vsi_kill_vlan()
2482 int i40e_vlan_rx_add_vid(struct net_device *netdev, in i40e_vlan_rx_add_vid() argument
2485 static int i40e_vlan_rx_add_vid(struct net_device *netdev, in i40e_vlan_rx_add_vid()
2489 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_vlan_rx_add_vid()
2496 netdev_info(netdev, "adding %pM vid=%d\n", netdev->dev_addr, vid); in i40e_vlan_rx_add_vid()
2521 int i40e_vlan_rx_kill_vid(struct net_device *netdev, in i40e_vlan_rx_kill_vid() argument
2524 static int i40e_vlan_rx_kill_vid(struct net_device *netdev, in i40e_vlan_rx_kill_vid()
2528 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_vlan_rx_kill_vid()
2531 netdev_info(netdev, "removing %pM vid=%d\n", netdev->dev_addr, vid); in i40e_vlan_rx_kill_vid()
2552 if (!vsi->netdev) in i40e_restore_vlan()
2555 i40e_vlan_rx_register(vsi->netdev, vsi->netdev->features); in i40e_restore_vlan()
2558 i40e_vlan_rx_add_vid(vsi->netdev, htons(ETH_P_8021Q), in i40e_restore_vlan()
2699 if (!ring->q_vector || !ring->netdev) in i40e_config_xps_tx_ring()
2705 netif_set_xps_queue(ring->netdev, in i40e_config_xps_tx_ring()
2711 netif_set_xps_queue(ring->netdev, mask, ring->queue_index); in i40e_config_xps_tx_ring()
2934 if (vsi->netdev && (vsi->netdev->mtu > ETH_DATA_LEN)) in i40e_vsi_configure_rx()
2935 vsi->max_frame = vsi->netdev->mtu + ETH_HLEN in i40e_vsi_configure_rx()
3025 if (vsi->netdev) in i40e_set_vsi_rx_mode()
3026 i40e_set_rx_mode(vsi->netdev); in i40e_set_vsi_rx_mode()
3742 void i40e_netpoll(struct net_device *netdev) in i40e_netpoll() argument
3744 static void i40e_netpoll(struct net_device *netdev) in i40e_netpoll()
3747 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_netpoll()
3760 i40e_intr(pf->pdev->irq, netdev); in i40e_netpoll()
4092 if (vsi->netdev) in i40e_free_q_vector()
4166 if (!vsi->netdev) in i40e_napi_enable_all()
4181 if (!vsi->netdev) in i40e_napi_disable_all()
4220 if (vsi->netdev && netif_running(vsi->netdev)) in i40e_quiesce_vsi()
4221 vsi->netdev->netdev_ops->ndo_stop(vsi->netdev); in i40e_quiesce_vsi()
4236 if (vsi->netdev && netif_running(vsi->netdev)) in i40e_unquiesce_vsi()
4237 vsi->netdev->netdev_ops->ndo_open(vsi->netdev); in i40e_unquiesce_vsi()
4386 struct net_device *netdev; in i40e_detect_recover_hung() local
4405 netdev = vsi->netdev; in i40e_detect_recover_hung()
4406 if (!netdev) in i40e_detect_recover_hung()
4410 if (!netif_carrier_ok(netdev)) in i40e_detect_recover_hung()
4414 for (i = 0; i < netdev->num_tx_queues; i++) { in i40e_detect_recover_hung()
4417 q = netdev_get_tx_queue(netdev, i); in i40e_detect_recover_hung()
4682 struct net_device *netdev = vsi->netdev; in i40e_vsi_config_netdev_tc() local
4689 if (!netdev) in i40e_vsi_config_netdev_tc()
4693 netdev_reset_tc(netdev); in i40e_vsi_config_netdev_tc()
4698 if (netdev_set_num_tc(netdev, vsi->tc_config.numtc)) in i40e_vsi_config_netdev_tc()
4711 netdev_set_tc_queue(netdev, in i40e_vsi_config_netdev_tc()
4723 netdev_set_prio_tc_map(netdev, i, netdev_tc); in i40e_vsi_config_netdev_tc()
4932 if (pf->vsi[v]->netdev) in i40e_dcb_reconfigure()
5031 netdev_info(vsi->netdev, "NIC Link is Down\n"); in i40e_print_link_message()
5041 netdev_warn(vsi->netdev, in i40e_print_link_message()
5079 netdev_info(vsi->netdev, "NIC Link is Up %sbps Full Duplex, Flow Control: %s\n", in i40e_print_link_message()
5107 (vsi->netdev)) { in i40e_up_complete()
5109 netif_tx_start_all_queues(vsi->netdev); in i40e_up_complete()
5110 netif_carrier_on(vsi->netdev); in i40e_up_complete()
5111 } else if (vsi->netdev) { in i40e_up_complete()
5118 netdev_err(vsi->netdev, in i40e_up_complete()
5191 if (vsi->netdev) { in i40e_down()
5192 netif_carrier_off(vsi->netdev); in i40e_down()
5193 netif_tx_disable(vsi->netdev); in i40e_down()
5211 int i40e_setup_tc(struct net_device *netdev, u8 tc) in i40e_setup_tc() argument
5213 static int i40e_setup_tc(struct net_device *netdev, u8 tc) in i40e_setup_tc()
5216 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_setup_tc()
5225 netdev_info(netdev, "DCB is not enabled for adapter\n"); in i40e_setup_tc()
5231 netdev_info(netdev, "Configuring TC not supported in MFP mode\n"); in i40e_setup_tc()
5237 netdev_info(netdev, "TC count greater than enabled on link for adapter\n"); in i40e_setup_tc()
5255 netdev_info(netdev, "Failed configuring TC for VSI seid=%d\n", in i40e_setup_tc()
5279 int i40e_open(struct net_device *netdev) in i40e_open() argument
5281 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_open()
5291 netif_carrier_off(netdev); in i40e_open()
5306 vxlan_get_rx_port(netdev); in i40e_open()
5338 if (vsi->netdev) { in i40e_vsi_open()
5340 dev_driver_string(&pf->pdev->dev), vsi->netdev->name); in i40e_vsi_open()
5346 err = netif_set_real_num_tx_queues(vsi->netdev, in i40e_vsi_open()
5351 err = netif_set_real_num_rx_queues(vsi->netdev, in i40e_vsi_open()
5418 int i40e_close(struct net_device *netdev) in i40e_close() argument
5420 static int i40e_close(struct net_device *netdev) in i40e_close()
5423 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_close()
5958 if (!vsi->netdev || !vsi->netdev_registered) in i40e_vsi_link_event()
5962 netif_carrier_on(vsi->netdev); in i40e_vsi_link_event()
5963 netif_tx_wake_all_queues(vsi->netdev); in i40e_vsi_link_event()
5965 netif_carrier_off(vsi->netdev); in i40e_vsi_link_event()
5966 netif_tx_stop_all_queues(vsi->netdev); in i40e_vsi_link_event()
6034 new_link == netif_carrier_ok(vsi->netdev))) in i40e_link_event()
6081 if (pf->vsi[i] && pf->vsi[i]->netdev) in i40e_watchdog_subtask()
7372 tx_ring->netdev = vsi->netdev; in i40e_alloc_rings()
7388 rx_ring->netdev = vsi->netdev; in i40e_alloc_rings()
7630 if (vsi->netdev) in i40e_vsi_alloc_q_vector()
7631 netif_napi_add(vsi->netdev, &q_vector->napi, in i40e_vsi_alloc_q_vector()
8257 static int i40e_set_features(struct net_device *netdev, in i40e_set_features() argument
8260 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_set_features()
8304 static void i40e_add_vxlan_port(struct net_device *netdev, in i40e_add_vxlan_port() argument
8307 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_add_vxlan_port()
8320 netdev_info(netdev, "vxlan port %d already offloaded\n", in i40e_add_vxlan_port()
8329 netdev_info(netdev, "maximum number of vxlan UDP ports reached, not adding port %d\n", in i40e_add_vxlan_port()
8346 static void i40e_del_vxlan_port(struct net_device *netdev, in i40e_del_vxlan_port() argument
8349 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_del_vxlan_port()
8368 netdev_warn(netdev, "vxlan port %d was not found, not deleting\n", in i40e_del_vxlan_port()
8374 static int i40e_get_phys_port_id(struct net_device *netdev, in i40e_get_phys_port_id() argument
8377 struct i40e_netdev_priv *np = netdev_priv(netdev); in i40e_get_phys_port_id()
8621 struct net_device *netdev; in i40e_config_netdev() local
8626 netdev = alloc_etherdev_mq(etherdev_size, vsi->alloc_queue_pairs); in i40e_config_netdev()
8627 if (!netdev) in i40e_config_netdev()
8630 vsi->netdev = netdev; in i40e_config_netdev()
8631 np = netdev_priv(netdev); in i40e_config_netdev()
8634 netdev->hw_enc_features |= NETIF_F_IP_CSUM | in i40e_config_netdev()
8639 netdev->features = NETIF_F_SG | in i40e_config_netdev()
8657 netdev->features |= NETIF_F_NTUPLE; in i40e_config_netdev()
8660 netdev->hw_features |= netdev->features; in i40e_config_netdev()
8663 SET_NETDEV_DEV(netdev, &pf->pdev->dev); in i40e_config_netdev()
8678 snprintf(netdev->name, IFNAMSIZ, "%sv%%d", in i40e_config_netdev()
8679 pf->vsi[pf->lan_vsi]->netdev->name); in i40e_config_netdev()
8691 ether_addr_copy(netdev->dev_addr, mac_addr); in i40e_config_netdev()
8692 ether_addr_copy(netdev->perm_addr, mac_addr); in i40e_config_netdev()
8696 netdev->vlan_features = netdev->features & ~(NETIF_F_HW_VLAN_CTAG_TX | in i40e_config_netdev()
8699 netdev->priv_flags |= IFF_UNICAST_FLT; in i40e_config_netdev()
8700 netdev->priv_flags |= IFF_SUPP_NOFCS; in i40e_config_netdev()
8704 netdev->netdev_ops = &i40e_netdev_ops; in i40e_config_netdev()
8705 netdev->watchdog_timeo = 5 * HZ; in i40e_config_netdev()
8706 i40e_set_ethtool_ops(netdev); in i40e_config_netdev()
8708 i40e_fcoe_config_netdev(netdev, vsi); in i40e_config_netdev()
9038 if (vsi->netdev) { in i40e_vsi_release()
9040 unregister_netdev(vsi->netdev); in i40e_vsi_release()
9058 if (vsi->netdev) { in i40e_vsi_release()
9059 free_netdev(vsi->netdev); in i40e_vsi_release()
9060 vsi->netdev = NULL; in i40e_vsi_release()
9205 unregister_netdev(vsi->netdev); in i40e_vsi_reinit_setup()
9206 free_netdev(vsi->netdev); in i40e_vsi_reinit_setup()
9207 vsi->netdev = NULL; in i40e_vsi_reinit_setup()
9344 ret = register_netdev(vsi->netdev); in i40e_vsi_setup()
9348 netif_carrier_off(vsi->netdev); in i40e_vsi_setup()
9387 unregister_netdev(vsi->netdev); in i40e_vsi_setup()
9388 free_netdev(vsi->netdev); in i40e_vsi_setup()
9389 vsi->netdev = NULL; in i40e_vsi_setup()