bnad.c (a402eae64d0ad12b1c4a411f250d6c161e67f623) bnad.c (bc1f44709cf27fb2a5766cadafe7e2ad5e9cb221)
1/*
2 * Linux network driver for QLogic BR-series Converged Network Adapter.
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License (GPL) Version 2 as
6 * published by the Free Software Foundation
7 *
8 * This program is distributed in the hope that it will be useful, but

--- 3097 unchanged lines hidden (view full) ---

3106
3107 return NETDEV_TX_OK;
3108}
3109
3110/*
3111 * Used spin_lock to synchronize reading of stats structures, which
3112 * is written by BNA under the same lock.
3113 */
1/*
2 * Linux network driver for QLogic BR-series Converged Network Adapter.
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License (GPL) Version 2 as
6 * published by the Free Software Foundation
7 *
8 * This program is distributed in the hope that it will be useful, but

--- 3097 unchanged lines hidden (view full) ---

3106
3107 return NETDEV_TX_OK;
3108}
3109
3110/*
3111 * Used spin_lock to synchronize reading of stats structures, which
3112 * is written by BNA under the same lock.
3113 */
3114static struct rtnl_link_stats64 *
3114static void
3115bnad_get_stats64(struct net_device *netdev, struct rtnl_link_stats64 *stats)
3116{
3117 struct bnad *bnad = netdev_priv(netdev);
3118 unsigned long flags;
3119
3120 spin_lock_irqsave(&bnad->bna_lock, flags);
3121
3122 bnad_netdev_qstats_fill(bnad, stats);
3123 bnad_netdev_hwstats_fill(bnad, stats);
3124
3125 spin_unlock_irqrestore(&bnad->bna_lock, flags);
3115bnad_get_stats64(struct net_device *netdev, struct rtnl_link_stats64 *stats)
3116{
3117 struct bnad *bnad = netdev_priv(netdev);
3118 unsigned long flags;
3119
3120 spin_lock_irqsave(&bnad->bna_lock, flags);
3121
3122 bnad_netdev_qstats_fill(bnad, stats);
3123 bnad_netdev_hwstats_fill(bnad, stats);
3124
3125 spin_unlock_irqrestore(&bnad->bna_lock, flags);
3126
3127 return stats;
3128}
3129
3130static void
3131bnad_set_rx_ucast_fltr(struct bnad *bnad)
3132{
3133 struct net_device *netdev = bnad->netdev;
3134 int uc_count = netdev_uc_count(netdev);
3135 enum bna_cb_status ret;

--- 286 unchanged lines hidden (view full) ---

3422 }
3423}
3424#endif
3425
3426static const struct net_device_ops bnad_netdev_ops = {
3427 .ndo_open = bnad_open,
3428 .ndo_stop = bnad_stop,
3429 .ndo_start_xmit = bnad_start_xmit,
3126}
3127
3128static void
3129bnad_set_rx_ucast_fltr(struct bnad *bnad)
3130{
3131 struct net_device *netdev = bnad->netdev;
3132 int uc_count = netdev_uc_count(netdev);
3133 enum bna_cb_status ret;

--- 286 unchanged lines hidden (view full) ---

3420 }
3421}
3422#endif
3423
3424static const struct net_device_ops bnad_netdev_ops = {
3425 .ndo_open = bnad_open,
3426 .ndo_stop = bnad_stop,
3427 .ndo_start_xmit = bnad_start_xmit,
3430 .ndo_get_stats64 = bnad_get_stats64,
3428 .ndo_get_stats64 = bnad_get_stats64,
3431 .ndo_set_rx_mode = bnad_set_rx_mode,
3432 .ndo_validate_addr = eth_validate_addr,
3433 .ndo_set_mac_address = bnad_set_mac_address,
3434 .ndo_change_mtu = bnad_change_mtu,
3435 .ndo_vlan_rx_add_vid = bnad_vlan_rx_add_vid,
3436 .ndo_vlan_rx_kill_vid = bnad_vlan_rx_kill_vid,
3437 .ndo_set_features = bnad_set_features,
3438#ifdef CONFIG_NET_POLL_CONTROLLER

--- 456 unchanged lines hidden ---
3429 .ndo_set_rx_mode = bnad_set_rx_mode,
3430 .ndo_validate_addr = eth_validate_addr,
3431 .ndo_set_mac_address = bnad_set_mac_address,
3432 .ndo_change_mtu = bnad_change_mtu,
3433 .ndo_vlan_rx_add_vid = bnad_vlan_rx_add_vid,
3434 .ndo_vlan_rx_kill_vid = bnad_vlan_rx_kill_vid,
3435 .ndo_set_features = bnad_set_features,
3436#ifdef CONFIG_NET_POLL_CONTROLLER

--- 456 unchanged lines hidden ---