aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/igb/igb_ethtool.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-10-11 15:24:56 -0400
committerDavid S. Miller <davem@davemloft.net>2011-10-11 15:24:56 -0400
commit258daca2bc9f97ace65c9480c901fddfce1e20cf (patch)
tree18022276041e9a247e6d0e8c59156aeec98e9634 /drivers/net/ethernet/intel/igb/igb_ethtool.c
parent3ed6f6958c0ac21958285d8648f14d34da4bbcb3 (diff)
parent077887c386226e4def56898449c26bb15f523728 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next
Diffstat (limited to 'drivers/net/ethernet/intel/igb/igb_ethtool.c')
-rw-r--r--drivers/net/ethernet/intel/igb/igb_ethtool.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/drivers/net/ethernet/intel/igb/igb_ethtool.c b/drivers/net/ethernet/intel/igb/igb_ethtool.c
index 174540f262d7..43873eba2f63 100644
--- a/drivers/net/ethernet/intel/igb/igb_ethtool.c
+++ b/drivers/net/ethernet/intel/igb/igb_ethtool.c
@@ -1577,16 +1577,14 @@ static int igb_clean_test_rings(struct igb_ring *rx_ring,
1577 union e1000_adv_rx_desc *rx_desc; 1577 union e1000_adv_rx_desc *rx_desc;
1578 struct igb_rx_buffer *rx_buffer_info; 1578 struct igb_rx_buffer *rx_buffer_info;
1579 struct igb_tx_buffer *tx_buffer_info; 1579 struct igb_tx_buffer *tx_buffer_info;
1580 int rx_ntc, tx_ntc, count = 0; 1580 u16 rx_ntc, tx_ntc, count = 0;
1581 u32 staterr;
1582 1581
1583 /* initialize next to clean and descriptor values */ 1582 /* initialize next to clean and descriptor values */
1584 rx_ntc = rx_ring->next_to_clean; 1583 rx_ntc = rx_ring->next_to_clean;
1585 tx_ntc = tx_ring->next_to_clean; 1584 tx_ntc = tx_ring->next_to_clean;
1586 rx_desc = IGB_RX_DESC(rx_ring, rx_ntc); 1585 rx_desc = IGB_RX_DESC(rx_ring, rx_ntc);
1587 staterr = le32_to_cpu(rx_desc->wb.upper.status_error);
1588 1586
1589 while (staterr & E1000_RXD_STAT_DD) { 1587 while (igb_test_staterr(rx_desc, E1000_RXD_STAT_DD)) {
1590 /* check rx buffer */ 1588 /* check rx buffer */
1591 rx_buffer_info = &rx_ring->rx_buffer_info[rx_ntc]; 1589 rx_buffer_info = &rx_ring->rx_buffer_info[rx_ntc];
1592 1590
@@ -1615,7 +1613,6 @@ static int igb_clean_test_rings(struct igb_ring *rx_ring,
1615 1613
1616 /* fetch next descriptor */ 1614 /* fetch next descriptor */
1617 rx_desc = IGB_RX_DESC(rx_ring, rx_ntc); 1615 rx_desc = IGB_RX_DESC(rx_ring, rx_ntc);
1618 staterr = le32_to_cpu(rx_desc->wb.upper.status_error);
1619 } 1616 }
1620 1617
1621 /* re-map buffers to ring, store next to clean values */ 1618 /* re-map buffers to ring, store next to clean values */
@@ -1630,7 +1627,8 @@ static int igb_run_loopback_test(struct igb_adapter *adapter)
1630{ 1627{
1631 struct igb_ring *tx_ring = &adapter->test_tx_ring; 1628 struct igb_ring *tx_ring = &adapter->test_tx_ring;
1632 struct igb_ring *rx_ring = &adapter->test_rx_ring; 1629 struct igb_ring *rx_ring = &adapter->test_rx_ring;
1633 int i, j, lc, good_cnt, ret_val = 0; 1630 u16 i, j, lc, good_cnt;
1631 int ret_val = 0;
1634 unsigned int size = IGB_RX_HDR_LEN; 1632 unsigned int size = IGB_RX_HDR_LEN;
1635 netdev_tx_t tx_ret_val; 1633 netdev_tx_t tx_ret_val;
1636 struct sk_buff *skb; 1634 struct sk_buff *skb;
@@ -2008,8 +2006,8 @@ static int igb_set_coalesce(struct net_device *netdev,
2008 2006
2009 for (i = 0; i < adapter->num_q_vectors; i++) { 2007 for (i = 0; i < adapter->num_q_vectors; i++) {
2010 struct igb_q_vector *q_vector = adapter->q_vector[i]; 2008 struct igb_q_vector *q_vector = adapter->q_vector[i];
2011 q_vector->tx_work_limit = adapter->tx_work_limit; 2009 q_vector->tx.work_limit = adapter->tx_work_limit;
2012 if (q_vector->rx_ring) 2010 if (q_vector->rx.ring)
2013 q_vector->itr_val = adapter->rx_itr_setting; 2011 q_vector->itr_val = adapter->rx_itr_setting;
2014 else 2012 else
2015 q_vector->itr_val = adapter->tx_itr_setting; 2013 q_vector->itr_val = adapter->tx_itr_setting;