aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/atlx/atl1.c
diff options
context:
space:
mode:
authorAndrea Bastoni <bastoni@cs.unc.edu>2010-05-30 19:16:45 -0400
committerAndrea Bastoni <bastoni@cs.unc.edu>2010-05-30 19:16:45 -0400
commitada47b5fe13d89735805b566185f4885f5a3f750 (patch)
tree644b88f8a71896307d71438e9b3af49126ffb22b /drivers/net/atlx/atl1.c
parent43e98717ad40a4ae64545b5ba047c7b86aa44f4f (diff)
parent3280f21d43ee541f97f8cda5792150d2dbec20d5 (diff)
Merge branch 'wip-2.6.34' into old-private-masterarchived-private-master
Diffstat (limited to 'drivers/net/atlx/atl1.c')
-rw-r--r--drivers/net/atlx/atl1.c25
1 files changed, 9 insertions, 16 deletions
diff --git a/drivers/net/atlx/atl1.c b/drivers/net/atlx/atl1.c
index 00569dc1313c..0ebd8208f606 100644
--- a/drivers/net/atlx/atl1.c
+++ b/drivers/net/atlx/atl1.c
@@ -84,7 +84,7 @@
84 84
85#define ATLX_DRIVER_VERSION "2.1.3" 85#define ATLX_DRIVER_VERSION "2.1.3"
86MODULE_AUTHOR("Xiong Huang <xiong.huang@atheros.com>, \ 86MODULE_AUTHOR("Xiong Huang <xiong.huang@atheros.com>, \
87 Chris Snook <csnook@redhat.com>, Jay Cliburn <jcliburn@gmail.com>"); 87Chris Snook <csnook@redhat.com>, Jay Cliburn <jcliburn@gmail.com>");
88MODULE_LICENSE("GPL"); 88MODULE_LICENSE("GPL");
89MODULE_VERSION(ATLX_DRIVER_VERSION); 89MODULE_VERSION(ATLX_DRIVER_VERSION);
90 90
@@ -232,7 +232,7 @@ static void __devinit atl1_check_options(struct atl1_adapter *adapter)
232/* 232/*
233 * atl1_pci_tbl - PCI Device ID Table 233 * atl1_pci_tbl - PCI Device ID Table
234 */ 234 */
235static const struct pci_device_id atl1_pci_tbl[] = { 235static DEFINE_PCI_DEVICE_TABLE(atl1_pci_tbl) = {
236 {PCI_DEVICE(PCI_VENDOR_ID_ATTANSIC, PCI_DEVICE_ID_ATTANSIC_L1)}, 236 {PCI_DEVICE(PCI_VENDOR_ID_ATTANSIC, PCI_DEVICE_ID_ATTANSIC_L1)},
237 /* required last entry */ 237 /* required last entry */
238 {0,} 238 {0,}
@@ -1344,8 +1344,8 @@ static u32 atl1_check_link(struct atl1_adapter *adapter)
1344 1344
1345 /* link result is our setting */ 1345 /* link result is our setting */
1346 if (!reconfig) { 1346 if (!reconfig) {
1347 if (adapter->link_speed != speed 1347 if (adapter->link_speed != speed ||
1348 || adapter->link_duplex != duplex) { 1348 adapter->link_duplex != duplex) {
1349 adapter->link_speed = speed; 1349 adapter->link_speed = speed;
1350 adapter->link_duplex = duplex; 1350 adapter->link_duplex = duplex;
1351 atl1_setup_mac_ctrl(adapter); 1351 atl1_setup_mac_ctrl(adapter);
@@ -1864,21 +1864,14 @@ static u16 atl1_alloc_rx_buffers(struct atl1_adapter *adapter)
1864 1864
1865 rfd_desc = ATL1_RFD_DESC(rfd_ring, rfd_next_to_use); 1865 rfd_desc = ATL1_RFD_DESC(rfd_ring, rfd_next_to_use);
1866 1866
1867 skb = netdev_alloc_skb(adapter->netdev, 1867 skb = netdev_alloc_skb_ip_align(adapter->netdev,
1868 adapter->rx_buffer_len + NET_IP_ALIGN); 1868 adapter->rx_buffer_len);
1869 if (unlikely(!skb)) { 1869 if (unlikely(!skb)) {
1870 /* Better luck next round */ 1870 /* Better luck next round */
1871 adapter->netdev->stats.rx_dropped++; 1871 adapter->netdev->stats.rx_dropped++;
1872 break; 1872 break;
1873 } 1873 }
1874 1874
1875 /*
1876 * Make buffer alignment 2 beyond a 16 byte boundary
1877 * this will result in a 16 byte aligned IP header after
1878 * the 14 byte MAC header is removed
1879 */
1880 skb_reserve(skb, NET_IP_ALIGN);
1881
1882 buffer_info->alloced = 1; 1875 buffer_info->alloced = 1;
1883 buffer_info->skb = skb; 1876 buffer_info->skb = skb;
1884 buffer_info->length = (u16) adapter->rx_buffer_len; 1877 buffer_info->length = (u16) adapter->rx_buffer_len;
@@ -2094,8 +2087,8 @@ static void atl1_intr_tx(struct atl1_adapter *adapter)
2094 } 2087 }
2095 atomic_set(&tpd_ring->next_to_clean, sw_tpd_next_to_clean); 2088 atomic_set(&tpd_ring->next_to_clean, sw_tpd_next_to_clean);
2096 2089
2097 if (netif_queue_stopped(adapter->netdev) 2090 if (netif_queue_stopped(adapter->netdev) &&
2098 && netif_carrier_ok(adapter->netdev)) 2091 netif_carrier_ok(adapter->netdev))
2099 netif_wake_queue(adapter->netdev); 2092 netif_wake_queue(adapter->netdev);
2100} 2093}
2101 2094
@@ -2596,7 +2589,7 @@ static s32 atl1_up(struct atl1_adapter *adapter)
2596 irq_flags |= IRQF_SHARED; 2589 irq_flags |= IRQF_SHARED;
2597 } 2590 }
2598 2591
2599 err = request_irq(adapter->pdev->irq, &atl1_intr, irq_flags, 2592 err = request_irq(adapter->pdev->irq, atl1_intr, irq_flags,
2600 netdev->name, netdev); 2593 netdev->name, netdev);
2601 if (unlikely(err)) 2594 if (unlikely(err))
2602 goto err_up; 2595 goto err_up;