aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/acenic.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-05-21 00:04:44 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-05-21 00:04:44 -0400
commitf8965467f366fd18f01feafb5db10512d7b4422c (patch)
tree3706a9cd779859271ca61b85c63a1bc3f82d626e /drivers/net/acenic.c
parenta26272e5200765691e67d6780e52b32498fdb659 (diff)
parent2ec8c6bb5d8f3a62a79f463525054bae1e3d4487 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1674 commits) qlcnic: adding co maintainer ixgbe: add support for active DA cables ixgbe: dcb, do not tag tc_prio_control frames ixgbe: fix ixgbe_tx_is_paused logic ixgbe: always enable vlan strip/insert when DCB is enabled ixgbe: remove some redundant code in setting FCoE FIP filter ixgbe: fix wrong offset to fc_frame_header in ixgbe_fcoe_ddp ixgbe: fix header len when unsplit packet overflows to data buffer ipv6: Never schedule DAD timer on dead address ipv6: Use POSTDAD state ipv6: Use state_lock to protect ifa state ipv6: Replace inet6_ifaddr->dead with state cxgb4: notify upper drivers if the device is already up when they load cxgb4: keep interrupts available when the ports are brought down cxgb4: fix initial addition of MAC address cnic: Return SPQ credit to bnx2x after ring setup and shutdown. cnic: Convert cnic_local_flags to atomic ops. can: Fix SJA1000 command register writes on SMP systems bridge: fix build for CONFIG_SYSFS disabled ARCNET: Limit com20020 PCI ID matches for SOHARD cards ... Fix up various conflicts with pcmcia tree drivers/net/ {pcmcia/3c589_cs.c, wireless/orinoco/orinoco_cs.c and wireless/orinoco/spectrum_cs.c} and feature removal (Documentation/feature-removal-schedule.txt). Also fix a non-content conflict due to pm_qos_requirement getting renamed in the PM tree (now pm_qos_request) in net/mac80211/scan.c
Diffstat (limited to 'drivers/net/acenic.c')
-rw-r--r--drivers/net/acenic.c44
1 files changed, 19 insertions, 25 deletions
diff --git a/drivers/net/acenic.c b/drivers/net/acenic.c
index 97a3dfd94df..b9a591604e5 100644
--- a/drivers/net/acenic.c
+++ b/drivers/net/acenic.c
@@ -661,7 +661,7 @@ static void __devexit acenic_remove_one(struct pci_dev *pdev)
661 dma_addr_t mapping; 661 dma_addr_t mapping;
662 662
663 ringp = &ap->skb->rx_std_skbuff[i]; 663 ringp = &ap->skb->rx_std_skbuff[i];
664 mapping = pci_unmap_addr(ringp, mapping); 664 mapping = dma_unmap_addr(ringp, mapping);
665 pci_unmap_page(ap->pdev, mapping, 665 pci_unmap_page(ap->pdev, mapping,
666 ACE_STD_BUFSIZE, 666 ACE_STD_BUFSIZE,
667 PCI_DMA_FROMDEVICE); 667 PCI_DMA_FROMDEVICE);
@@ -681,7 +681,7 @@ static void __devexit acenic_remove_one(struct pci_dev *pdev)
681 dma_addr_t mapping; 681 dma_addr_t mapping;
682 682
683 ringp = &ap->skb->rx_mini_skbuff[i]; 683 ringp = &ap->skb->rx_mini_skbuff[i];
684 mapping = pci_unmap_addr(ringp,mapping); 684 mapping = dma_unmap_addr(ringp,mapping);
685 pci_unmap_page(ap->pdev, mapping, 685 pci_unmap_page(ap->pdev, mapping,
686 ACE_MINI_BUFSIZE, 686 ACE_MINI_BUFSIZE,
687 PCI_DMA_FROMDEVICE); 687 PCI_DMA_FROMDEVICE);
@@ -700,7 +700,7 @@ static void __devexit acenic_remove_one(struct pci_dev *pdev)
700 dma_addr_t mapping; 700 dma_addr_t mapping;
701 701
702 ringp = &ap->skb->rx_jumbo_skbuff[i]; 702 ringp = &ap->skb->rx_jumbo_skbuff[i];
703 mapping = pci_unmap_addr(ringp, mapping); 703 mapping = dma_unmap_addr(ringp, mapping);
704 pci_unmap_page(ap->pdev, mapping, 704 pci_unmap_page(ap->pdev, mapping,
705 ACE_JUMBO_BUFSIZE, 705 ACE_JUMBO_BUFSIZE,
706 PCI_DMA_FROMDEVICE); 706 PCI_DMA_FROMDEVICE);
@@ -1683,7 +1683,7 @@ static void ace_load_std_rx_ring(struct ace_private *ap, int nr_bufs)
1683 ACE_STD_BUFSIZE, 1683 ACE_STD_BUFSIZE,
1684 PCI_DMA_FROMDEVICE); 1684 PCI_DMA_FROMDEVICE);
1685 ap->skb->rx_std_skbuff[idx].skb = skb; 1685 ap->skb->rx_std_skbuff[idx].skb = skb;
1686 pci_unmap_addr_set(&ap->skb->rx_std_skbuff[idx], 1686 dma_unmap_addr_set(&ap->skb->rx_std_skbuff[idx],
1687 mapping, mapping); 1687 mapping, mapping);
1688 1688
1689 rd = &ap->rx_std_ring[idx]; 1689 rd = &ap->rx_std_ring[idx];
@@ -1744,7 +1744,7 @@ static void ace_load_mini_rx_ring(struct ace_private *ap, int nr_bufs)
1744 ACE_MINI_BUFSIZE, 1744 ACE_MINI_BUFSIZE,
1745 PCI_DMA_FROMDEVICE); 1745 PCI_DMA_FROMDEVICE);
1746 ap->skb->rx_mini_skbuff[idx].skb = skb; 1746 ap->skb->rx_mini_skbuff[idx].skb = skb;
1747 pci_unmap_addr_set(&ap->skb->rx_mini_skbuff[idx], 1747 dma_unmap_addr_set(&ap->skb->rx_mini_skbuff[idx],
1748 mapping, mapping); 1748 mapping, mapping);
1749 1749
1750 rd = &ap->rx_mini_ring[idx]; 1750 rd = &ap->rx_mini_ring[idx];
@@ -1800,7 +1800,7 @@ static void ace_load_jumbo_rx_ring(struct ace_private *ap, int nr_bufs)
1800 ACE_JUMBO_BUFSIZE, 1800 ACE_JUMBO_BUFSIZE,
1801 PCI_DMA_FROMDEVICE); 1801 PCI_DMA_FROMDEVICE);
1802 ap->skb->rx_jumbo_skbuff[idx].skb = skb; 1802 ap->skb->rx_jumbo_skbuff[idx].skb = skb;
1803 pci_unmap_addr_set(&ap->skb->rx_jumbo_skbuff[idx], 1803 dma_unmap_addr_set(&ap->skb->rx_jumbo_skbuff[idx],
1804 mapping, mapping); 1804 mapping, mapping);
1805 1805
1806 rd = &ap->rx_jumbo_ring[idx]; 1806 rd = &ap->rx_jumbo_ring[idx];
@@ -2013,7 +2013,7 @@ static void ace_rx_int(struct net_device *dev, u32 rxretprd, u32 rxretcsm)
2013 skb = rip->skb; 2013 skb = rip->skb;
2014 rip->skb = NULL; 2014 rip->skb = NULL;
2015 pci_unmap_page(ap->pdev, 2015 pci_unmap_page(ap->pdev,
2016 pci_unmap_addr(rip, mapping), 2016 dma_unmap_addr(rip, mapping),
2017 mapsize, 2017 mapsize,
2018 PCI_DMA_FROMDEVICE); 2018 PCI_DMA_FROMDEVICE);
2019 skb_put(skb, retdesc->size); 2019 skb_put(skb, retdesc->size);
@@ -2078,18 +2078,16 @@ static inline void ace_tx_int(struct net_device *dev,
2078 2078
2079 do { 2079 do {
2080 struct sk_buff *skb; 2080 struct sk_buff *skb;
2081 dma_addr_t mapping;
2082 struct tx_ring_info *info; 2081 struct tx_ring_info *info;
2083 2082
2084 info = ap->skb->tx_skbuff + idx; 2083 info = ap->skb->tx_skbuff + idx;
2085 skb = info->skb; 2084 skb = info->skb;
2086 mapping = pci_unmap_addr(info, mapping);
2087 2085
2088 if (mapping) { 2086 if (dma_unmap_len(info, maplen)) {
2089 pci_unmap_page(ap->pdev, mapping, 2087 pci_unmap_page(ap->pdev, dma_unmap_addr(info, mapping),
2090 pci_unmap_len(info, maplen), 2088 dma_unmap_len(info, maplen),
2091 PCI_DMA_TODEVICE); 2089 PCI_DMA_TODEVICE);
2092 pci_unmap_addr_set(info, mapping, 0); 2090 dma_unmap_len_set(info, maplen, 0);
2093 } 2091 }
2094 2092
2095 if (skb) { 2093 if (skb) {
@@ -2377,14 +2375,12 @@ static int ace_close(struct net_device *dev)
2377 2375
2378 for (i = 0; i < ACE_TX_RING_ENTRIES(ap); i++) { 2376 for (i = 0; i < ACE_TX_RING_ENTRIES(ap); i++) {
2379 struct sk_buff *skb; 2377 struct sk_buff *skb;
2380 dma_addr_t mapping;
2381 struct tx_ring_info *info; 2378 struct tx_ring_info *info;
2382 2379
2383 info = ap->skb->tx_skbuff + i; 2380 info = ap->skb->tx_skbuff + i;
2384 skb = info->skb; 2381 skb = info->skb;
2385 mapping = pci_unmap_addr(info, mapping);
2386 2382
2387 if (mapping) { 2383 if (dma_unmap_len(info, maplen)) {
2388 if (ACE_IS_TIGON_I(ap)) { 2384 if (ACE_IS_TIGON_I(ap)) {
2389 /* NB: TIGON_1 is special, tx_ring is in io space */ 2385 /* NB: TIGON_1 is special, tx_ring is in io space */
2390 struct tx_desc __iomem *tx; 2386 struct tx_desc __iomem *tx;
@@ -2395,10 +2391,10 @@ static int ace_close(struct net_device *dev)
2395 } else 2391 } else
2396 memset(ap->tx_ring + i, 0, 2392 memset(ap->tx_ring + i, 0,
2397 sizeof(struct tx_desc)); 2393 sizeof(struct tx_desc));
2398 pci_unmap_page(ap->pdev, mapping, 2394 pci_unmap_page(ap->pdev, dma_unmap_addr(info, mapping),
2399 pci_unmap_len(info, maplen), 2395 dma_unmap_len(info, maplen),
2400 PCI_DMA_TODEVICE); 2396 PCI_DMA_TODEVICE);
2401 pci_unmap_addr_set(info, mapping, 0); 2397 dma_unmap_len_set(info, maplen, 0);
2402 } 2398 }
2403 if (skb) { 2399 if (skb) {
2404 dev_kfree_skb(skb); 2400 dev_kfree_skb(skb);
@@ -2433,8 +2429,8 @@ ace_map_tx_skb(struct ace_private *ap, struct sk_buff *skb,
2433 2429
2434 info = ap->skb->tx_skbuff + idx; 2430 info = ap->skb->tx_skbuff + idx;
2435 info->skb = tail; 2431 info->skb = tail;
2436 pci_unmap_addr_set(info, mapping, mapping); 2432 dma_unmap_addr_set(info, mapping, mapping);
2437 pci_unmap_len_set(info, maplen, skb->len); 2433 dma_unmap_len_set(info, maplen, skb->len);
2438 return mapping; 2434 return mapping;
2439} 2435}
2440 2436
@@ -2553,8 +2549,8 @@ restart:
2553 } else { 2549 } else {
2554 info->skb = NULL; 2550 info->skb = NULL;
2555 } 2551 }
2556 pci_unmap_addr_set(info, mapping, mapping); 2552 dma_unmap_addr_set(info, mapping, mapping);
2557 pci_unmap_len_set(info, maplen, frag->size); 2553 dma_unmap_len_set(info, maplen, frag->size);
2558 ace_load_tx_bd(ap, desc, mapping, flagsize, vlan_tag); 2554 ace_load_tx_bd(ap, desc, mapping, flagsize, vlan_tag);
2559 } 2555 }
2560 } 2556 }
@@ -2923,8 +2919,6 @@ static void __devinit ace_clear(struct ace_regs __iomem *regs, u32 dest, int siz
2923 dest += tsize; 2919 dest += tsize;
2924 size -= tsize; 2920 size -= tsize;
2925 } 2921 }
2926
2927 return;
2928} 2922}
2929 2923
2930 2924