aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/marvell/mvneta.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2013-04-22 20:32:51 -0400
committerDavid S. Miller <davem@davemloft.net>2013-04-22 20:32:51 -0400
commit6e0895c2ea326cc4bb11e8fa2f654628d5754c31 (patch)
tree7089303ac11a12edc43a8c4fa1b23974e10937ea /drivers/net/ethernet/marvell/mvneta.c
parent55fbbe46e9eb3cbe6c335503f5550855a1128dce (diff)
parent60d509fa6a9c4653a86ad830e4c4b30360b23f0e (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts: drivers/net/ethernet/emulex/benet/be_main.c drivers/net/ethernet/intel/igb/igb_main.c drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c include/net/scm.h net/batman-adv/routing.c net/ipv4/tcp_input.c The e{uid,gid} --> {uid,gid} credentials fix conflicted with the cleanup in net-next to now pass cred structs around. The be2net driver had a bug fix in 'net' that overlapped with the VLAN interface changes by Patrick McHardy in net-next. An IGB conflict existed because in 'net' the build_skb() support was reverted, and in 'net-next' there was a comment style fix within that code. Several batman-adv conflicts were resolved by making sure that all calls to batadv_is_my_mac() are changed to have a new bat_priv first argument. Eric Dumazet's TS ECR fix in TCP in 'net' conflicted with the F-RTO rewrite in 'net-next', mostly overlapping changes. Thanks to Stephen Rothwell and Antonio Quartulli for help with several of these merge resolutions. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/marvell/mvneta.c')
-rw-r--r--drivers/net/ethernet/marvell/mvneta.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/drivers/net/ethernet/marvell/mvneta.c b/drivers/net/ethernet/marvell/mvneta.c
index e48261e468f3..c96678555233 100644
--- a/drivers/net/ethernet/marvell/mvneta.c
+++ b/drivers/net/ethernet/marvell/mvneta.c
@@ -374,7 +374,6 @@ static int rxq_number = 8;
374static int txq_number = 8; 374static int txq_number = 8;
375 375
376static int rxq_def; 376static int rxq_def;
377static int txq_def;
378 377
379#define MVNETA_DRIVER_NAME "mvneta" 378#define MVNETA_DRIVER_NAME "mvneta"
380#define MVNETA_DRIVER_VERSION "1.0" 379#define MVNETA_DRIVER_VERSION "1.0"
@@ -1475,7 +1474,8 @@ error:
1475static int mvneta_tx(struct sk_buff *skb, struct net_device *dev) 1474static int mvneta_tx(struct sk_buff *skb, struct net_device *dev)
1476{ 1475{
1477 struct mvneta_port *pp = netdev_priv(dev); 1476 struct mvneta_port *pp = netdev_priv(dev);
1478 struct mvneta_tx_queue *txq = &pp->txqs[txq_def]; 1477 u16 txq_id = skb_get_queue_mapping(skb);
1478 struct mvneta_tx_queue *txq = &pp->txqs[txq_id];
1479 struct mvneta_tx_desc *tx_desc; 1479 struct mvneta_tx_desc *tx_desc;
1480 struct netdev_queue *nq; 1480 struct netdev_queue *nq;
1481 int frags = 0; 1481 int frags = 0;
@@ -1485,7 +1485,7 @@ static int mvneta_tx(struct sk_buff *skb, struct net_device *dev)
1485 goto out; 1485 goto out;
1486 1486
1487 frags = skb_shinfo(skb)->nr_frags + 1; 1487 frags = skb_shinfo(skb)->nr_frags + 1;
1488 nq = netdev_get_tx_queue(dev, txq_def); 1488 nq = netdev_get_tx_queue(dev, txq_id);
1489 1489
1490 /* Get a descriptor for the first part of the packet */ 1490 /* Get a descriptor for the first part of the packet */
1491 tx_desc = mvneta_txq_next_desc_get(txq); 1491 tx_desc = mvneta_txq_next_desc_get(txq);
@@ -2679,7 +2679,7 @@ static int mvneta_probe(struct platform_device *pdev)
2679 return -EINVAL; 2679 return -EINVAL;
2680 } 2680 }
2681 2681
2682 dev = alloc_etherdev_mq(sizeof(struct mvneta_port), 8); 2682 dev = alloc_etherdev_mqs(sizeof(struct mvneta_port), txq_number, rxq_number);
2683 if (!dev) 2683 if (!dev)
2684 return -ENOMEM; 2684 return -ENOMEM;
2685 2685
@@ -2761,16 +2761,17 @@ static int mvneta_probe(struct platform_device *pdev)
2761 2761
2762 netif_napi_add(dev, &pp->napi, mvneta_poll, pp->weight); 2762 netif_napi_add(dev, &pp->napi, mvneta_poll, pp->weight);
2763 2763
2764 dev->features = NETIF_F_SG | NETIF_F_IP_CSUM;
2765 dev->hw_features |= NETIF_F_SG | NETIF_F_IP_CSUM;
2766 dev->vlan_features |= NETIF_F_SG | NETIF_F_IP_CSUM;
2767 dev->priv_flags |= IFF_UNICAST_FLT;
2768
2764 err = register_netdev(dev); 2769 err = register_netdev(dev);
2765 if (err < 0) { 2770 if (err < 0) {
2766 dev_err(&pdev->dev, "failed to register\n"); 2771 dev_err(&pdev->dev, "failed to register\n");
2767 goto err_deinit; 2772 goto err_deinit;
2768 } 2773 }
2769 2774
2770 dev->features = NETIF_F_SG | NETIF_F_IP_CSUM;
2771 dev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM;
2772 dev->priv_flags |= IFF_UNICAST_FLT;
2773
2774 netdev_info(dev, "mac: %pM\n", dev->dev_addr); 2775 netdev_info(dev, "mac: %pM\n", dev->dev_addr);
2775 2776
2776 platform_set_drvdata(pdev, pp->dev); 2777 platform_set_drvdata(pdev, pp->dev);
@@ -2833,4 +2834,3 @@ module_param(rxq_number, int, S_IRUGO);
2833module_param(txq_number, int, S_IRUGO); 2834module_param(txq_number, int, S_IRUGO);
2834 2835
2835module_param(rxq_def, int, S_IRUGO); 2836module_param(rxq_def, int, S_IRUGO);
2836module_param(txq_def, int, S_IRUGO);