aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/bna/bnad.c
diff options
context:
space:
mode:
authorMichał Mirosław <mirq-linux@rere.qmqm.pl>2011-04-12 05:38:23 -0400
committerDavid S. Miller <davem@davemloft.net>2011-04-12 17:50:44 -0400
commite5ee20e70f078d584572709962f5d90f876912c3 (patch)
tree23990453ea68529a9d011efa945ab121abc2f4a9 /drivers/net/bna/bnad.c
parentd1423c7ab847e72a63e0e3512a1a7f3bce55ae01 (diff)
net: bna: convert to hw_features
Note: looks like bnad->conf_mutex is duplicating rtnl_lock. Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bna/bnad.c')
-rw-r--r--drivers/net/bna/bnad.c22
1 files changed, 9 insertions, 13 deletions
diff --git a/drivers/net/bna/bnad.c b/drivers/net/bna/bnad.c
index 9f356d5d0f33..b9f253470da2 100644
--- a/drivers/net/bna/bnad.c
+++ b/drivers/net/bna/bnad.c
@@ -501,7 +501,7 @@ bnad_poll_cq(struct bnad *bnad, struct bna_ccb *ccb, int budget)
501 501
502 skb_put(skb, ntohs(cmpl->length)); 502 skb_put(skb, ntohs(cmpl->length));
503 if (likely 503 if (likely
504 (bnad->rx_csum && 504 ((bnad->netdev->features & NETIF_F_RXCSUM) &&
505 (((flags & BNA_CQ_EF_IPV4) && 505 (((flags & BNA_CQ_EF_IPV4) &&
506 (flags & BNA_CQ_EF_L3_CKSUM_OK)) || 506 (flags & BNA_CQ_EF_L3_CKSUM_OK)) ||
507 (flags & BNA_CQ_EF_IPV6)) && 507 (flags & BNA_CQ_EF_IPV6)) &&
@@ -2903,23 +2903,20 @@ bnad_netdev_init(struct bnad *bnad, bool using_dac)
2903{ 2903{
2904 struct net_device *netdev = bnad->netdev; 2904 struct net_device *netdev = bnad->netdev;
2905 2905
2906 netdev->features |= NETIF_F_IPV6_CSUM; 2906 netdev->hw_features = NETIF_F_SG | NETIF_F_RXCSUM |
2907 netdev->features |= NETIF_F_TSO; 2907 NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
2908 netdev->features |= NETIF_F_TSO6; 2908 NETIF_F_TSO | NETIF_F_TSO6 | NETIF_F_HW_VLAN_TX;
2909 2909
2910 netdev->features |= NETIF_F_GRO; 2910 netdev->vlan_features = NETIF_F_SG | NETIF_F_HIGHDMA |
2911 pr_warn("bna: GRO enabled, using kernel stack GRO\n"); 2911 NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
2912 NETIF_F_TSO | NETIF_F_TSO6;
2912 2913
2913 netdev->features |= NETIF_F_SG | NETIF_F_IP_CSUM; 2914 netdev->features |= netdev->hw_features |
2915 NETIF_F_HW_VLAN_RX | NETIF_F_HW_VLAN_FILTER;
2914 2916
2915 if (using_dac) 2917 if (using_dac)
2916 netdev->features |= NETIF_F_HIGHDMA; 2918 netdev->features |= NETIF_F_HIGHDMA;
2917 2919
2918 netdev->features |=
2919 NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX |
2920 NETIF_F_HW_VLAN_FILTER;
2921
2922 netdev->vlan_features = netdev->features;
2923 netdev->mem_start = bnad->mmio_start; 2920 netdev->mem_start = bnad->mmio_start;
2924 netdev->mem_end = bnad->mmio_start + bnad->mmio_len - 1; 2921 netdev->mem_end = bnad->mmio_start + bnad->mmio_len - 1;
2925 2922
@@ -2970,7 +2967,6 @@ bnad_init(struct bnad *bnad,
2970 2967
2971 bnad->txq_depth = BNAD_TXQ_DEPTH; 2968 bnad->txq_depth = BNAD_TXQ_DEPTH;
2972 bnad->rxq_depth = BNAD_RXQ_DEPTH; 2969 bnad->rxq_depth = BNAD_RXQ_DEPTH;
2973 bnad->rx_csum = true;
2974 2970
2975 bnad->tx_coalescing_timeo = BFI_TX_COALESCING_TIMEO; 2971 bnad->tx_coalescing_timeo = BFI_TX_COALESCING_TIMEO;
2976 bnad->rx_coalescing_timeo = BFI_RX_COALESCING_TIMEO; 2972 bnad->rx_coalescing_timeo = BFI_RX_COALESCING_TIMEO;