Commit 96838a40 authored by Jesse Brandeburg's avatar Jesse Brandeburg Committed by Jeff Garzik

[PATCH] e1000: Fix whitespace

Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: default avatarJohn Ronciak <john.ronciak@intel.com>
Signed-off-by: default avatarJeff Garzik <jgarzik@pobox.com>
parent 6150f038
...@@ -121,7 +121,7 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) ...@@ -121,7 +121,7 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd)
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
struct e1000_hw *hw = &adapter->hw; struct e1000_hw *hw = &adapter->hw;
if(hw->media_type == e1000_media_type_copper) { if (hw->media_type == e1000_media_type_copper) {
ecmd->supported = (SUPPORTED_10baseT_Half | ecmd->supported = (SUPPORTED_10baseT_Half |
SUPPORTED_10baseT_Full | SUPPORTED_10baseT_Full |
...@@ -133,7 +133,7 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) ...@@ -133,7 +133,7 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd)
ecmd->advertising = ADVERTISED_TP; ecmd->advertising = ADVERTISED_TP;
if(hw->autoneg == 1) { if (hw->autoneg == 1) {
ecmd->advertising |= ADVERTISED_Autoneg; ecmd->advertising |= ADVERTISED_Autoneg;
/* the e1000 autoneg seems to match ethtool nicely */ /* the e1000 autoneg seems to match ethtool nicely */
...@@ -144,7 +144,7 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) ...@@ -144,7 +144,7 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd)
ecmd->port = PORT_TP; ecmd->port = PORT_TP;
ecmd->phy_address = hw->phy_addr; ecmd->phy_address = hw->phy_addr;
if(hw->mac_type == e1000_82543) if (hw->mac_type == e1000_82543)
ecmd->transceiver = XCVR_EXTERNAL; ecmd->transceiver = XCVR_EXTERNAL;
else else
ecmd->transceiver = XCVR_INTERNAL; ecmd->transceiver = XCVR_INTERNAL;
...@@ -160,13 +160,13 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) ...@@ -160,13 +160,13 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd)
ecmd->port = PORT_FIBRE; ecmd->port = PORT_FIBRE;
if(hw->mac_type >= e1000_82545) if (hw->mac_type >= e1000_82545)
ecmd->transceiver = XCVR_INTERNAL; ecmd->transceiver = XCVR_INTERNAL;
else else
ecmd->transceiver = XCVR_EXTERNAL; ecmd->transceiver = XCVR_EXTERNAL;
} }
if(netif_carrier_ok(adapter->netdev)) { if (netif_carrier_ok(adapter->netdev)) {
e1000_get_speed_and_duplex(hw, &adapter->link_speed, e1000_get_speed_and_duplex(hw, &adapter->link_speed,
&adapter->link_duplex); &adapter->link_duplex);
...@@ -175,7 +175,7 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) ...@@ -175,7 +175,7 @@ e1000_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd)
/* unfortunatly FULL_DUPLEX != DUPLEX_FULL /* unfortunatly FULL_DUPLEX != DUPLEX_FULL
* and HALF_DUPLEX != DUPLEX_HALF */ * and HALF_DUPLEX != DUPLEX_HALF */
if(adapter->link_duplex == FULL_DUPLEX) if (adapter->link_duplex == FULL_DUPLEX)
ecmd->duplex = DUPLEX_FULL; ecmd->duplex = DUPLEX_FULL;
else else
ecmd->duplex = DUPLEX_HALF; ecmd->duplex = DUPLEX_HALF;
...@@ -205,11 +205,11 @@ e1000_set_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) ...@@ -205,11 +205,11 @@ e1000_set_settings(struct net_device *netdev, struct ethtool_cmd *ecmd)
if (ecmd->autoneg == AUTONEG_ENABLE) { if (ecmd->autoneg == AUTONEG_ENABLE) {
hw->autoneg = 1; hw->autoneg = 1;
if(hw->media_type == e1000_media_type_fiber) if (hw->media_type == e1000_media_type_fiber)
hw->autoneg_advertised = ADVERTISED_1000baseT_Full | hw->autoneg_advertised = ADVERTISED_1000baseT_Full |
ADVERTISED_FIBRE | ADVERTISED_FIBRE |
ADVERTISED_Autoneg; ADVERTISED_Autoneg;
else else
hw->autoneg_advertised = ADVERTISED_10baseT_Half | hw->autoneg_advertised = ADVERTISED_10baseT_Half |
ADVERTISED_10baseT_Full | ADVERTISED_10baseT_Full |
ADVERTISED_100baseT_Half | ADVERTISED_100baseT_Half |
...@@ -219,12 +219,12 @@ e1000_set_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) ...@@ -219,12 +219,12 @@ e1000_set_settings(struct net_device *netdev, struct ethtool_cmd *ecmd)
ADVERTISED_TP; ADVERTISED_TP;
ecmd->advertising = hw->autoneg_advertised; ecmd->advertising = hw->autoneg_advertised;
} else } else
if(e1000_set_spd_dplx(adapter, ecmd->speed + ecmd->duplex)) if (e1000_set_spd_dplx(adapter, ecmd->speed + ecmd->duplex))
return -EINVAL; return -EINVAL;
/* reset the link */ /* reset the link */
if(netif_running(adapter->netdev)) { if (netif_running(adapter->netdev)) {
e1000_down(adapter); e1000_down(adapter);
e1000_reset(adapter); e1000_reset(adapter);
e1000_up(adapter); e1000_up(adapter);
...@@ -241,14 +241,14 @@ e1000_get_pauseparam(struct net_device *netdev, ...@@ -241,14 +241,14 @@ e1000_get_pauseparam(struct net_device *netdev,
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
struct e1000_hw *hw = &adapter->hw; struct e1000_hw *hw = &adapter->hw;
pause->autoneg = pause->autoneg =
(adapter->fc_autoneg ? AUTONEG_ENABLE : AUTONEG_DISABLE); (adapter->fc_autoneg ? AUTONEG_ENABLE : AUTONEG_DISABLE);
if(hw->fc == e1000_fc_rx_pause) if (hw->fc == e1000_fc_rx_pause)
pause->rx_pause = 1; pause->rx_pause = 1;
else if(hw->fc == e1000_fc_tx_pause) else if (hw->fc == e1000_fc_tx_pause)
pause->tx_pause = 1; pause->tx_pause = 1;
else if(hw->fc == e1000_fc_full) { else if (hw->fc == e1000_fc_full) {
pause->rx_pause = 1; pause->rx_pause = 1;
pause->tx_pause = 1; pause->tx_pause = 1;
} }
...@@ -260,31 +260,30 @@ e1000_set_pauseparam(struct net_device *netdev, ...@@ -260,31 +260,30 @@ e1000_set_pauseparam(struct net_device *netdev,
{ {
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
struct e1000_hw *hw = &adapter->hw; struct e1000_hw *hw = &adapter->hw;
adapter->fc_autoneg = pause->autoneg; adapter->fc_autoneg = pause->autoneg;
if(pause->rx_pause && pause->tx_pause) if (pause->rx_pause && pause->tx_pause)
hw->fc = e1000_fc_full; hw->fc = e1000_fc_full;
else if(pause->rx_pause && !pause->tx_pause) else if (pause->rx_pause && !pause->tx_pause)
hw->fc = e1000_fc_rx_pause; hw->fc = e1000_fc_rx_pause;
else if(!pause->rx_pause && pause->tx_pause) else if (!pause->rx_pause && pause->tx_pause)
hw->fc = e1000_fc_tx_pause; hw->fc = e1000_fc_tx_pause;
else if(!pause->rx_pause && !pause->tx_pause) else if (!pause->rx_pause && !pause->tx_pause)
hw->fc = e1000_fc_none; hw->fc = e1000_fc_none;
hw->original_fc = hw->fc; hw->original_fc = hw->fc;
if(adapter->fc_autoneg == AUTONEG_ENABLE) { if (adapter->fc_autoneg == AUTONEG_ENABLE) {
if(netif_running(adapter->netdev)) { if (netif_running(adapter->netdev)) {
e1000_down(adapter); e1000_down(adapter);
e1000_up(adapter); e1000_up(adapter);
} else } else
e1000_reset(adapter); e1000_reset(adapter);
} } else
else
return ((hw->media_type == e1000_media_type_fiber) ? return ((hw->media_type == e1000_media_type_fiber) ?
e1000_setup_link(hw) : e1000_force_mac_fc(hw)); e1000_setup_link(hw) : e1000_force_mac_fc(hw));
return 0; return 0;
} }
...@@ -301,14 +300,14 @@ e1000_set_rx_csum(struct net_device *netdev, uint32_t data) ...@@ -301,14 +300,14 @@ e1000_set_rx_csum(struct net_device *netdev, uint32_t data)
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
adapter->rx_csum = data; adapter->rx_csum = data;
if(netif_running(netdev)) { if (netif_running(netdev)) {
e1000_down(adapter); e1000_down(adapter);
e1000_up(adapter); e1000_up(adapter);
} else } else
e1000_reset(adapter); e1000_reset(adapter);
return 0; return 0;
} }
static uint32_t static uint32_t
e1000_get_tx_csum(struct net_device *netdev) e1000_get_tx_csum(struct net_device *netdev)
{ {
...@@ -320,7 +319,7 @@ e1000_set_tx_csum(struct net_device *netdev, uint32_t data) ...@@ -320,7 +319,7 @@ e1000_set_tx_csum(struct net_device *netdev, uint32_t data)
{ {
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
if(adapter->hw.mac_type < e1000_82543) { if (adapter->hw.mac_type < e1000_82543) {
if (!data) if (!data)
return -EINVAL; return -EINVAL;
return 0; return 0;
...@@ -339,8 +338,8 @@ static int ...@@ -339,8 +338,8 @@ static int
e1000_set_tso(struct net_device *netdev, uint32_t data) e1000_set_tso(struct net_device *netdev, uint32_t data)
{ {
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
if((adapter->hw.mac_type < e1000_82544) || if ((adapter->hw.mac_type < e1000_82544) ||
(adapter->hw.mac_type == e1000_82547)) (adapter->hw.mac_type == e1000_82547))
return data ? -EINVAL : 0; return data ? -EINVAL : 0;
if (data) if (data)
...@@ -348,7 +347,7 @@ e1000_set_tso(struct net_device *netdev, uint32_t data) ...@@ -348,7 +347,7 @@ e1000_set_tso(struct net_device *netdev, uint32_t data)
else else
netdev->features &= ~NETIF_F_TSO; netdev->features &= ~NETIF_F_TSO;
return 0; return 0;
} }
#endif /* NETIF_F_TSO */ #endif /* NETIF_F_TSO */
static uint32_t static uint32_t
...@@ -365,7 +364,7 @@ e1000_set_msglevel(struct net_device *netdev, uint32_t data) ...@@ -365,7 +364,7 @@ e1000_set_msglevel(struct net_device *netdev, uint32_t data)
adapter->msg_enable = data; adapter->msg_enable = data;
} }
static int static int
e1000_get_regs_len(struct net_device *netdev) e1000_get_regs_len(struct net_device *netdev)
{ {
#define E1000_REGS_LEN 32 #define E1000_REGS_LEN 32
...@@ -401,7 +400,7 @@ e1000_get_regs(struct net_device *netdev, ...@@ -401,7 +400,7 @@ e1000_get_regs(struct net_device *netdev,
regs_buff[11] = E1000_READ_REG(hw, TIDV); regs_buff[11] = E1000_READ_REG(hw, TIDV);
regs_buff[12] = adapter->hw.phy_type; /* PHY type (IGP=1, M88=0) */ regs_buff[12] = adapter->hw.phy_type; /* PHY type (IGP=1, M88=0) */
if(hw->phy_type == e1000_phy_igp) { if (hw->phy_type == e1000_phy_igp) {
e1000_write_phy_reg(hw, IGP01E1000_PHY_PAGE_SELECT, e1000_write_phy_reg(hw, IGP01E1000_PHY_PAGE_SELECT,
IGP01E1000_PHY_AGC_A); IGP01E1000_PHY_AGC_A);
e1000_read_phy_reg(hw, IGP01E1000_PHY_AGC_A & e1000_read_phy_reg(hw, IGP01E1000_PHY_AGC_A &
...@@ -455,7 +454,7 @@ e1000_get_regs(struct net_device *netdev, ...@@ -455,7 +454,7 @@ e1000_get_regs(struct net_device *netdev,
e1000_read_phy_reg(hw, PHY_1000T_STATUS, &phy_data); e1000_read_phy_reg(hw, PHY_1000T_STATUS, &phy_data);
regs_buff[24] = (uint32_t)phy_data; /* phy local receiver status */ regs_buff[24] = (uint32_t)phy_data; /* phy local receiver status */
regs_buff[25] = regs_buff[24]; /* phy remote receiver status */ regs_buff[25] = regs_buff[24]; /* phy remote receiver status */
if(hw->mac_type >= e1000_82540 && if (hw->mac_type >= e1000_82540 &&
hw->media_type == e1000_media_type_copper) { hw->media_type == e1000_media_type_copper) {
regs_buff[26] = E1000_READ_REG(hw, MANC); regs_buff[26] = E1000_READ_REG(hw, MANC);
} }
...@@ -479,7 +478,7 @@ e1000_get_eeprom(struct net_device *netdev, ...@@ -479,7 +478,7 @@ e1000_get_eeprom(struct net_device *netdev,
int ret_val = 0; int ret_val = 0;
uint16_t i; uint16_t i;
if(eeprom->len == 0) if (eeprom->len == 0)
return -EINVAL; return -EINVAL;
eeprom->magic = hw->vendor_id | (hw->device_id << 16); eeprom->magic = hw->vendor_id | (hw->device_id << 16);
...@@ -489,16 +488,16 @@ e1000_get_eeprom(struct net_device *netdev, ...@@ -489,16 +488,16 @@ e1000_get_eeprom(struct net_device *netdev,
eeprom_buff = kmalloc(sizeof(uint16_t) * eeprom_buff = kmalloc(sizeof(uint16_t) *
(last_word - first_word + 1), GFP_KERNEL); (last_word - first_word + 1), GFP_KERNEL);
if(!eeprom_buff) if (!eeprom_buff)
return -ENOMEM; return -ENOMEM;
if(hw->eeprom.type == e1000_eeprom_spi) if (hw->eeprom.type == e1000_eeprom_spi)
ret_val = e1000_read_eeprom(hw, first_word, ret_val = e1000_read_eeprom(hw, first_word,
last_word - first_word + 1, last_word - first_word + 1,
eeprom_buff); eeprom_buff);
else { else {
for (i = 0; i < last_word - first_word + 1; i++) for (i = 0; i < last_word - first_word + 1; i++)
if((ret_val = e1000_read_eeprom(hw, first_word + i, 1, if ((ret_val = e1000_read_eeprom(hw, first_word + i, 1,
&eeprom_buff[i]))) &eeprom_buff[i])))
break; break;
} }
...@@ -525,10 +524,10 @@ e1000_set_eeprom(struct net_device *netdev, ...@@ -525,10 +524,10 @@ e1000_set_eeprom(struct net_device *netdev,
int max_len, first_word, last_word, ret_val = 0; int max_len, first_word, last_word, ret_val = 0;
uint16_t i; uint16_t i;
if(eeprom->len == 0) if (eeprom->len == 0)
return -EOPNOTSUPP; return -EOPNOTSUPP;
if(eeprom->magic != (hw->vendor_id | (hw->device_id << 16))) if (eeprom->magic != (hw->vendor_id | (hw->device_id << 16)))
return -EFAULT; return -EFAULT;
max_len = hw->eeprom.word_size * 2; max_len = hw->eeprom.word_size * 2;
...@@ -536,19 +535,19 @@ e1000_set_eeprom(struct net_device *netdev, ...@@ -536,19 +535,19 @@ e1000_set_eeprom(struct net_device *netdev,
first_word = eeprom->offset >> 1; first_word = eeprom->offset >> 1;
last_word = (eeprom->offset + eeprom->len - 1) >> 1; last_word = (eeprom->offset + eeprom->len - 1) >> 1;
eeprom_buff = kmalloc(max_len, GFP_KERNEL); eeprom_buff = kmalloc(max_len, GFP_KERNEL);
if(!eeprom_buff) if (!eeprom_buff)
return -ENOMEM; return -ENOMEM;
ptr = (void *)eeprom_buff; ptr = (void *)eeprom_buff;
if(eeprom->offset & 1) { if (eeprom->offset & 1) {
/* need read/modify/write of first changed EEPROM word */ /* need read/modify/write of first changed EEPROM word */
/* only the second byte of the word is being modified */ /* only the second byte of the word is being modified */
ret_val = e1000_read_eeprom(hw, first_word, 1, ret_val = e1000_read_eeprom(hw, first_word, 1,
&eeprom_buff[0]); &eeprom_buff[0]);
ptr++; ptr++;
} }
if(((eeprom->offset + eeprom->len) & 1) && (ret_val == 0)) { if (((eeprom->offset + eeprom->len) & 1) && (ret_val == 0)) {
/* need read/modify/write of last changed EEPROM word */ /* need read/modify/write of last changed EEPROM word */
/* only the first byte of the word is being modified */ /* only the first byte of the word is being modified */
ret_val = e1000_read_eeprom(hw, last_word, 1, ret_val = e1000_read_eeprom(hw, last_word, 1,
...@@ -567,9 +566,9 @@ e1000_set_eeprom(struct net_device *netdev, ...@@ -567,9 +566,9 @@ e1000_set_eeprom(struct net_device *netdev,
ret_val = e1000_write_eeprom(hw, first_word, ret_val = e1000_write_eeprom(hw, first_word,
last_word - first_word + 1, eeprom_buff); last_word - first_word + 1, eeprom_buff);
/* Update the checksum over the first part of the EEPROM if needed /* Update the checksum over the first part of the EEPROM if needed
* and flush shadow RAM for 82573 conrollers */ * and flush shadow RAM for 82573 conrollers */
if((ret_val == 0) && ((first_word <= EEPROM_CHECKSUM_REG) || if ((ret_val == 0) && ((first_word <= EEPROM_CHECKSUM_REG) ||
(hw->mac_type == e1000_82573))) (hw->mac_type == e1000_82573)))
e1000_update_eeprom_checksum(hw); e1000_update_eeprom_checksum(hw);
...@@ -633,7 +632,7 @@ e1000_get_ringparam(struct net_device *netdev, ...@@ -633,7 +632,7 @@ e1000_get_ringparam(struct net_device *netdev,
ring->rx_jumbo_pending = 0; ring->rx_jumbo_pending = 0;
} }
static int static int
e1000_set_ringparam(struct net_device *netdev, e1000_set_ringparam(struct net_device *netdev,
struct ethtool_ringparam *ring) struct ethtool_ringparam *ring)
{ {
...@@ -670,25 +669,25 @@ e1000_set_ringparam(struct net_device *netdev, ...@@ -670,25 +669,25 @@ e1000_set_ringparam(struct net_device *netdev,
txdr = adapter->tx_ring; txdr = adapter->tx_ring;
rxdr = adapter->rx_ring; rxdr = adapter->rx_ring;
if((ring->rx_mini_pending) || (ring->rx_jumbo_pending)) if ((ring->rx_mini_pending) || (ring->rx_jumbo_pending))
return -EINVAL; return -EINVAL;
rxdr->count = max(ring->rx_pending,(uint32_t)E1000_MIN_RXD); rxdr->count = max(ring->rx_pending,(uint32_t)E1000_MIN_RXD);
rxdr->count = min(rxdr->count,(uint32_t)(mac_type < e1000_82544 ? rxdr->count = min(rxdr->count,(uint32_t)(mac_type < e1000_82544 ?
E1000_MAX_RXD : E1000_MAX_82544_RXD)); E1000_MAX_RXD : E1000_MAX_82544_RXD));
E1000_ROUNDUP(rxdr->count, REQ_RX_DESCRIPTOR_MULTIPLE); E1000_ROUNDUP(rxdr->count, REQ_RX_DESCRIPTOR_MULTIPLE);
txdr->count = max(ring->tx_pending,(uint32_t)E1000_MIN_TXD); txdr->count = max(ring->tx_pending,(uint32_t)E1000_MIN_TXD);
txdr->count = min(txdr->count,(uint32_t)(mac_type < e1000_82544 ? txdr->count = min(txdr->count,(uint32_t)(mac_type < e1000_82544 ?
E1000_MAX_TXD : E1000_MAX_82544_TXD)); E1000_MAX_TXD : E1000_MAX_82544_TXD));
E1000_ROUNDUP(txdr->count, REQ_TX_DESCRIPTOR_MULTIPLE); E1000_ROUNDUP(txdr->count, REQ_TX_DESCRIPTOR_MULTIPLE);
for (i = 0; i < adapter->num_tx_queues; i++) for (i = 0; i < adapter->num_tx_queues; i++)
txdr[i].count = txdr->count; txdr[i].count = txdr->count;
for (i = 0; i < adapter->num_rx_queues; i++) for (i = 0; i < adapter->num_rx_queues; i++)
rxdr[i].count = rxdr->count; rxdr[i].count = rxdr->count;
if(netif_running(adapter->netdev)) { if (netif_running(adapter->netdev)) {
/* Try to get new resources before deleting old */ /* Try to get new resources before deleting old */
if ((err = e1000_setup_all_rx_resources(adapter))) if ((err = e1000_setup_all_rx_resources(adapter)))
goto err_setup_rx; goto err_setup_rx;
...@@ -708,7 +707,7 @@ e1000_set_ringparam(struct net_device *netdev, ...@@ -708,7 +707,7 @@ e1000_set_ringparam(struct net_device *netdev,
kfree(rx_old); kfree(rx_old);
adapter->rx_ring = rx_new; adapter->rx_ring = rx_new;
adapter->tx_ring = tx_new; adapter->tx_ring = tx_new;
if((err = e1000_up(adapter))) if ((err = e1000_up(adapter)))
return err; return err;
} }
...@@ -727,10 +726,10 @@ e1000_set_ringparam(struct net_device *netdev, ...@@ -727,10 +726,10 @@ e1000_set_ringparam(struct net_device *netdev,
uint32_t pat, value; \ uint32_t pat, value; \
uint32_t test[] = \ uint32_t test[] = \
{0x5A5A5A5A, 0xA5A5A5A5, 0x00000000, 0xFFFFFFFF}; \ {0x5A5A5A5A, 0xA5A5A5A5, 0x00000000, 0xFFFFFFFF}; \
for(pat = 0; pat < sizeof(test)/sizeof(test[0]); pat++) { \ for (pat = 0; pat < sizeof(test)/sizeof(test[0]); pat++) { \
E1000_WRITE_REG(&adapter->hw, R, (test[pat] & W)); \ E1000_WRITE_REG(&adapter->hw, R, (test[pat] & W)); \
value = E1000_READ_REG(&adapter->hw, R); \ value = E1000_READ_REG(&adapter->hw, R); \
if(value != (test[pat] & W & M)) { \ if (value != (test[pat] & W & M)) { \
DPRINTK(DRV, ERR, "pattern test reg %04X failed: got " \ DPRINTK(DRV, ERR, "pattern test reg %04X failed: got " \
"0x%08X expected 0x%08X\n", \ "0x%08X expected 0x%08X\n", \
E1000_##R, value, (test[pat] & W & M)); \ E1000_##R, value, (test[pat] & W & M)); \
...@@ -746,7 +745,7 @@ e1000_set_ringparam(struct net_device *netdev, ...@@ -746,7 +745,7 @@ e1000_set_ringparam(struct net_device *netdev,
uint32_t value; \ uint32_t value; \
E1000_WRITE_REG(&adapter->hw, R, W & M); \ E1000_WRITE_REG(&adapter->hw, R, W & M); \
value = E1000_READ_REG(&adapter->hw, R); \ value = E1000_READ_REG(&adapter->hw, R); \
if((W & M) != (value & M)) { \ if ((W & M) != (value & M)) { \
DPRINTK(DRV, ERR, "set/check reg %04X test failed: got 0x%08X "\ DPRINTK(DRV, ERR, "set/check reg %04X test failed: got 0x%08X "\
"expected 0x%08X\n", E1000_##R, (value & M), (W & M)); \ "expected 0x%08X\n", E1000_##R, (value & M), (W & M)); \
*data = (adapter->hw.mac_type < e1000_82543) ? \ *data = (adapter->hw.mac_type < e1000_82543) ? \
...@@ -782,7 +781,7 @@ e1000_reg_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -782,7 +781,7 @@ e1000_reg_test(struct e1000_adapter *adapter, uint64_t *data)
value = (E1000_READ_REG(&adapter->hw, STATUS) & toggle); value = (E1000_READ_REG(&adapter->hw, STATUS) & toggle);
E1000_WRITE_REG(&adapter->hw, STATUS, toggle); E1000_WRITE_REG(&adapter->hw, STATUS, toggle);
after = E1000_READ_REG(&adapter->hw, STATUS) & toggle; after = E1000_READ_REG(&adapter->hw, STATUS) & toggle;
if(value != after) { if (value != after) {
DPRINTK(DRV, ERR, "failed STATUS register test got: " DPRINTK(DRV, ERR, "failed STATUS register test got: "
"0x%08X expected: 0x%08X\n", after, value); "0x%08X expected: 0x%08X\n", after, value);
*data = 1; *data = 1;
...@@ -810,7 +809,7 @@ e1000_reg_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -810,7 +809,7 @@ e1000_reg_test(struct e1000_adapter *adapter, uint64_t *data)
REG_SET_AND_CHECK(RCTL, 0x06DFB3FE, 0x003FFFFB); REG_SET_AND_CHECK(RCTL, 0x06DFB3FE, 0x003FFFFB);
REG_SET_AND_CHECK(TCTL, 0xFFFFFFFF, 0x00000000); REG_SET_AND_CHECK(TCTL, 0xFFFFFFFF, 0x00000000);
if(adapter->hw.mac_type >= e1000_82543) { if (adapter->hw.mac_type >= e1000_82543) {
REG_SET_AND_CHECK(RCTL, 0x06DFB3FE, 0xFFFFFFFF); REG_SET_AND_CHECK(RCTL, 0x06DFB3FE, 0xFFFFFFFF);
REG_PATTERN_TEST(RDBAL, 0xFFFFFFF0, 0xFFFFFFFF); REG_PATTERN_TEST(RDBAL, 0xFFFFFFF0, 0xFFFFFFFF);
...@@ -818,7 +817,7 @@ e1000_reg_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -818,7 +817,7 @@ e1000_reg_test(struct e1000_adapter *adapter, uint64_t *data)
REG_PATTERN_TEST(TDBAL, 0xFFFFFFF0, 0xFFFFFFFF); REG_PATTERN_TEST(TDBAL, 0xFFFFFFF0, 0xFFFFFFFF);
REG_PATTERN_TEST(TIDV, 0x0000FFFF, 0x0000FFFF); REG_PATTERN_TEST(TIDV, 0x0000FFFF, 0x0000FFFF);
for(i = 0; i < E1000_RAR_ENTRIES; i++) { for (i = 0; i < E1000_RAR_ENTRIES; i++) {
REG_PATTERN_TEST(RA + ((i << 1) << 2), 0xFFFFFFFF, REG_PATTERN_TEST(RA + ((i << 1) << 2), 0xFFFFFFFF,
0xFFFFFFFF); 0xFFFFFFFF);
REG_PATTERN_TEST(RA + (((i << 1) + 1) << 2), 0x8003FFFF, REG_PATTERN_TEST(RA + (((i << 1) + 1) << 2), 0x8003FFFF,
...@@ -834,7 +833,7 @@ e1000_reg_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -834,7 +833,7 @@ e1000_reg_test(struct e1000_adapter *adapter, uint64_t *data)
} }
for(i = 0; i < E1000_MC_TBL_SIZE; i++) for (i = 0; i < E1000_MC_TBL_SIZE; i++)
REG_PATTERN_TEST(MTA + (i << 2), 0xFFFFFFFF, 0xFFFFFFFF); REG_PATTERN_TEST(MTA + (i << 2), 0xFFFFFFFF, 0xFFFFFFFF);
*data = 0; *data = 0;
...@@ -850,8 +849,8 @@ e1000_eeprom_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -850,8 +849,8 @@ e1000_eeprom_test(struct e1000_adapter *adapter, uint64_t *data)
*data = 0; *data = 0;
/* Read and add up the contents of the EEPROM */ /* Read and add up the contents of the EEPROM */
for(i = 0; i < (EEPROM_CHECKSUM_REG + 1); i++) { for (i = 0; i < (EEPROM_CHECKSUM_REG + 1); i++) {
if((e1000_read_eeprom(&adapter->hw, i, 1, &temp)) < 0) { if ((e1000_read_eeprom(&adapter->hw, i, 1, &temp)) < 0) {
*data = 1; *data = 1;
break; break;
} }
...@@ -859,7 +858,7 @@ e1000_eeprom_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -859,7 +858,7 @@ e1000_eeprom_test(struct e1000_adapter *adapter, uint64_t *data)
} }
/* If Checksum is not Correct return error else test passed */ /* If Checksum is not Correct return error else test passed */
if((checksum != (uint16_t) EEPROM_SUM) && !(*data)) if ((checksum != (uint16_t) EEPROM_SUM) && !(*data))
*data = 2; *data = 2;
return *data; return *data;
...@@ -888,9 +887,9 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -888,9 +887,9 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data)
*data = 0; *data = 0;
/* Hook up test interrupt handler just for this test */ /* Hook up test interrupt handler just for this test */
if(!request_irq(irq, &e1000_test_intr, 0, netdev->name, netdev)) { if (!request_irq(irq, &e1000_test_intr, 0, netdev->name, netdev)) {
shared_int = FALSE; shared_int = FALSE;
} else if(request_irq(irq, &e1000_test_intr, SA_SHIRQ, } else if (request_irq(irq, &e1000_test_intr, SA_SHIRQ,
netdev->name, netdev)){ netdev->name, netdev)){
*data = 1; *data = 1;
return -1; return -1;
...@@ -901,12 +900,12 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -901,12 +900,12 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data)
msec_delay(10); msec_delay(10);
/* Test each interrupt */ /* Test each interrupt */
for(; i < 10; i++) { for (; i < 10; i++) {
/* Interrupt to test */ /* Interrupt to test */
mask = 1 << i; mask = 1 << i;
if(!shared_int) { if (!shared_int) {
/* Disable the interrupt to be reported in /* Disable the interrupt to be reported in
* the cause register and then force the same * the cause register and then force the same
* interrupt and see if one gets posted. If * interrupt and see if one gets posted. If
...@@ -917,8 +916,8 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -917,8 +916,8 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data)
E1000_WRITE_REG(&adapter->hw, IMC, mask); E1000_WRITE_REG(&adapter->hw, IMC, mask);
E1000_WRITE_REG(&adapter->hw, ICS, mask); E1000_WRITE_REG(&adapter->hw, ICS, mask);
msec_delay(10); msec_delay(10);
if(adapter->test_icr & mask) { if (adapter->test_icr & mask) {
*data = 3; *data = 3;
break; break;
} }
...@@ -935,12 +934,12 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -935,12 +934,12 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data)
E1000_WRITE_REG(&adapter->hw, ICS, mask); E1000_WRITE_REG(&adapter->hw, ICS, mask);
msec_delay(10); msec_delay(10);
if(!(adapter->test_icr & mask)) { if (!(adapter->test_icr & mask)) {
*data = 4; *data = 4;
break; break;
} }
if(!shared_int) { if (!shared_int) {
/* Disable the other interrupts to be reported in /* Disable the other interrupts to be reported in
* the cause register and then force the other * the cause register and then force the other
* interrupts and see if any get posted. If * interrupts and see if any get posted. If
...@@ -952,7 +951,7 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -952,7 +951,7 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data)
E1000_WRITE_REG(&adapter->hw, ICS, ~mask & 0x00007FFF); E1000_WRITE_REG(&adapter->hw, ICS, ~mask & 0x00007FFF);
msec_delay(10); msec_delay(10);
if(adapter->test_icr) { if (adapter->test_icr) {
*data = 5; *data = 5;
break; break;
} }
...@@ -977,24 +976,24 @@ e1000_free_desc_rings(struct e1000_adapter *adapter) ...@@ -977,24 +976,24 @@ e1000_free_desc_rings(struct e1000_adapter *adapter)
struct pci_dev *pdev = adapter->pdev; struct pci_dev *pdev = adapter->pdev;
int i; int i;
if(txdr->desc && txdr->buffer_info) { if (txdr->desc && txdr->buffer_info) {
for(i = 0; i < txdr->count; i++) { for (i = 0; i < txdr->count; i++) {
if(txdr->buffer_info[i].dma) if (txdr->buffer_info[i].dma)
pci_unmap_single(pdev, txdr->buffer_info[i].dma, pci_unmap_single(pdev, txdr->buffer_info[i].dma,
txdr->buffer_info[i].length, txdr->buffer_info[i].length,
PCI_DMA_TODEVICE); PCI_DMA_TODEVICE);
if(txdr->buffer_info[i].skb) if (txdr->buffer_info[i].skb)
dev_kfree_skb(txdr->buffer_info[i].skb); dev_kfree_skb(txdr->buffer_info[i].skb);
} }
} }
if(rxdr->desc && rxdr->buffer_info) { if (rxdr->desc && rxdr->buffer_info) {
for(i = 0; i < rxdr->count; i++) { for (i = 0; i < rxdr->count; i++) {
if(rxdr->buffer_info[i].dma) if (rxdr->buffer_info[i].dma)
pci_unmap_single(pdev, rxdr->buffer_info[i].dma, pci_unmap_single(pdev, rxdr->buffer_info[i].dma,
rxdr->buffer_info[i].length, rxdr->buffer_info[i].length,
PCI_DMA_FROMDEVICE); PCI_DMA_FROMDEVICE);
if(rxdr->buffer_info[i].skb) if (rxdr->buffer_info[i].skb)
dev_kfree_skb(rxdr->buffer_info[i].skb); dev_kfree_skb(rxdr->buffer_info[i].skb);
} }
} }
...@@ -1027,11 +1026,11 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter) ...@@ -1027,11 +1026,11 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter)
/* Setup Tx descriptor ring and Tx buffers */ /* Setup Tx descriptor ring and Tx buffers */
if(!txdr->count) if (!txdr->count)
txdr->count = E1000_DEFAULT_TXD; txdr->count = E1000_DEFAULT_TXD;
size = txdr->count * sizeof(struct e1000_buffer); size = txdr->count * sizeof(struct e1000_buffer);
if(!(txdr->buffer_info = kmalloc(size, GFP_KERNEL))) { if (!(txdr->buffer_info = kmalloc(size, GFP_KERNEL))) {
ret_val = 1; ret_val = 1;
goto err_nomem; goto err_nomem;
} }
...@@ -1039,7 +1038,7 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter) ...@@ -1039,7 +1038,7 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter)
txdr->size = txdr->count * sizeof(struct e1000_tx_desc); txdr->size = txdr->count * sizeof(struct e1000_tx_desc);
E1000_ROUNDUP(txdr->size, 4096); E1000_ROUNDUP(txdr->size, 4096);
if(!(txdr->desc = pci_alloc_consistent(pdev, txdr->size, &txdr->dma))) { if (!(txdr->desc = pci_alloc_consistent(pdev, txdr->size, &txdr->dma))) {
ret_val = 2; ret_val = 2;
goto err_nomem; goto err_nomem;
} }
...@@ -1058,12 +1057,12 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter) ...@@ -1058,12 +1057,12 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter)
E1000_COLLISION_THRESHOLD << E1000_CT_SHIFT | E1000_COLLISION_THRESHOLD << E1000_CT_SHIFT |
E1000_FDX_COLLISION_DISTANCE << E1000_COLD_SHIFT); E1000_FDX_COLLISION_DISTANCE << E1000_COLD_SHIFT);
for(i = 0; i < txdr->count; i++) { for (i = 0; i < txdr->count; i++) {
struct e1000_tx_desc *tx_desc = E1000_TX_DESC(*txdr, i); struct e1000_tx_desc *tx_desc = E1000_TX_DESC(*txdr, i);
struct sk_buff *skb; struct sk_buff *skb;
unsigned int size = 1024; unsigned int size = 1024;
if(!(skb = alloc_skb(size, GFP_KERNEL))) { if (!(skb = alloc_skb(size, GFP_KERNEL))) {
ret_val = 3; ret_val = 3;
goto err_nomem; goto err_nomem;
} }
...@@ -1083,18 +1082,18 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter) ...@@ -1083,18 +1082,18 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter)
/* Setup Rx descriptor ring and Rx buffers */ /* Setup Rx descriptor ring and Rx buffers */
if(!rxdr->count) if (!rxdr->count)
rxdr->count = E1000_DEFAULT_RXD; rxdr->count = E1000_DEFAULT_RXD;
size = rxdr->count * sizeof(struct e1000_buffer); size = rxdr->count * sizeof(struct e1000_buffer);
if(!(rxdr->buffer_info = kmalloc(size, GFP_KERNEL))) { if (!(rxdr->buffer_info = kmalloc(size, GFP_KERNEL))) {
ret_val = 4; ret_val = 4;
goto err_nomem; goto err_nomem;
} }
memset(rxdr->buffer_info, 0, size); memset(rxdr->buffer_info, 0, size);
rxdr->size = rxdr->count * sizeof(struct e1000_rx_desc); rxdr->size = rxdr->count * sizeof(struct e1000_rx_desc);
if(!(rxdr->desc = pci_alloc_consistent(pdev, rxdr->size, &rxdr->dma))) { if (!(rxdr->desc = pci_alloc_consistent(pdev, rxdr->size, &rxdr->dma))) {
ret_val = 5; ret_val = 5;
goto err_nomem; goto err_nomem;
} }
...@@ -1114,11 +1113,11 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter) ...@@ -1114,11 +1113,11 @@ e1000_setup_desc_rings(struct e1000_adapter *adapter)
(adapter->hw.mc_filter_type << E1000_RCTL_MO_SHIFT); (adapter->hw.mc_filter_type << E1000_RCTL_MO_SHIFT);
E1000_WRITE_REG(&adapter->hw, RCTL, rctl); E1000_WRITE_REG(&adapter->hw, RCTL, rctl);
for(i = 0; i < rxdr->count; i++) { for (i = 0; i < rxdr->count; i++) {
struct e1000_rx_desc *rx_desc = E1000_RX_DESC(*rxdr, i); struct e1000_rx_desc *rx_desc = E1000_RX_DESC(*rxdr, i);
struct sk_buff *skb; struct sk_buff *skb;
if(!(skb = alloc_skb(E1000_RXBUFFER_2048 + NET_IP_ALIGN, if (!(skb = alloc_skb(E1000_RXBUFFER_2048 + NET_IP_ALIGN,
GFP_KERNEL))) { GFP_KERNEL))) {
ret_val = 6; ret_val = 6;
goto err_nomem; goto err_nomem;
...@@ -1227,15 +1226,15 @@ e1000_nonintegrated_phy_loopback(struct e1000_adapter *adapter) ...@@ -1227,15 +1226,15 @@ e1000_nonintegrated_phy_loopback(struct e1000_adapter *adapter)
/* Check Phy Configuration */ /* Check Phy Configuration */
e1000_read_phy_reg(&adapter->hw, PHY_CTRL, &phy_reg); e1000_read_phy_reg(&adapter->hw, PHY_CTRL, &phy_reg);
if(phy_reg != 0x4100) if (phy_reg != 0x4100)
return 9; return 9;
e1000_read_phy_reg(&adapter->hw, M88E1000_EXT_PHY_SPEC_CTRL, &phy_reg); e1000_read_phy_reg(&adapter->hw, M88E1000_EXT_PHY_SPEC_CTRL, &phy_reg);
if(phy_reg != 0x0070) if (phy_reg != 0x0070)
return 10; return 10;
e1000_read_phy_reg(&adapter->hw, 29, &phy_reg); e1000_read_phy_reg(&adapter->hw, 29, &phy_reg);
if(phy_reg != 0x001A) if (phy_reg != 0x001A)
return 11; return 11;
return 0; return 0;
...@@ -1249,7 +1248,7 @@ e1000_integrated_phy_loopback(struct e1000_adapter *adapter) ...@@ -1249,7 +1248,7 @@ e1000_integrated_phy_loopback(struct e1000_adapter *adapter)
adapter->hw.autoneg = FALSE; adapter->hw.autoneg = FALSE;
if(adapter->hw.phy_type == e1000_phy_m88) { if (adapter->hw.phy_type == e1000_phy_m88) {
/* Auto-MDI/MDIX Off */ /* Auto-MDI/MDIX Off */
e1000_write_phy_reg(&adapter->hw, e1000_write_phy_reg(&adapter->hw,
M88E1000_PHY_SPEC_CTRL, 0x0808); M88E1000_PHY_SPEC_CTRL, 0x0808);
...@@ -1269,14 +1268,14 @@ e1000_integrated_phy_loopback(struct e1000_adapter *adapter) ...@@ -1269,14 +1268,14 @@ e1000_integrated_phy_loopback(struct e1000_adapter *adapter)
E1000_CTRL_SPD_1000 |/* Force Speed to 1000 */ E1000_CTRL_SPD_1000 |/* Force Speed to 1000 */
E1000_CTRL_FD); /* Force Duplex to FULL */ E1000_CTRL_FD); /* Force Duplex to FULL */
if(adapter->hw.media_type == e1000_media_type_copper && if (adapter->hw.media_type == e1000_media_type_copper &&
adapter->hw.phy_type == e1000_phy_m88) { adapter->hw.phy_type == e1000_phy_m88) {
ctrl_reg |= E1000_CTRL_ILOS; /* Invert Loss of Signal */ ctrl_reg |= E1000_CTRL_ILOS; /* Invert Loss of Signal */
} else { } else {
/* Set the ILOS bit on the fiber Nic is half /* Set the ILOS bit on the fiber Nic is half
* duplex link is detected. */ * duplex link is detected. */
stat_reg = E1000_READ_REG(&adapter->hw, STATUS); stat_reg = E1000_READ_REG(&adapter->hw, STATUS);
if((stat_reg & E1000_STATUS_FD) == 0) if ((stat_reg & E1000_STATUS_FD) == 0)
ctrl_reg |= (E1000_CTRL_ILOS | E1000_CTRL_SLU); ctrl_reg |= (E1000_CTRL_ILOS | E1000_CTRL_SLU);
} }
...@@ -1285,7 +1284,7 @@ e1000_integrated_phy_loopback(struct e1000_adapter *adapter) ...@@ -1285,7 +1284,7 @@ e1000_integrated_phy_loopback(struct e1000_adapter *adapter)
/* Disable the receiver on the PHY so when a cable is plugged in, the /* Disable the receiver on the PHY so when a cable is plugged in, the
* PHY does not begin to autoneg when a cable is reconnected to the NIC. * PHY does not begin to autoneg when a cable is reconnected to the NIC.
*/ */
if(adapter->hw.phy_type == e1000_phy_m88) if (adapter->hw.phy_type == e1000_phy_m88)
e1000_phy_disable_receiver(adapter); e1000_phy_disable_receiver(adapter);
udelay(500); udelay(500);
...@@ -1301,14 +1300,14 @@ e1000_set_phy_loopback(struct e1000_adapter *adapter) ...@@ -1301,14 +1300,14 @@ e1000_set_phy_loopback(struct e1000_adapter *adapter)
switch (adapter->hw.mac_type) { switch (adapter->hw.mac_type) {
case e1000_82543: case e1000_82543:
if(adapter->hw.media_type == e1000_media_type_copper) { if (adapter->hw.media_type == e1000_media_type_copper) {
/* Attempt to setup Loopback mode on Non-integrated PHY. /* Attempt to setup Loopback mode on Non-integrated PHY.
* Some PHY registers get corrupted at random, so * Some PHY registers get corrupted at random, so
* attempt this 10 times. * attempt this 10 times.
*/ */
while(e1000_nonintegrated_phy_loopback(adapter) && while (e1000_nonintegrated_phy_loopback(adapter) &&
count++ < 10); count++ < 10);
if(count < 11) if (count < 11)
return 0; return 0;
} }
break; break;
...@@ -1430,8 +1429,8 @@ static int ...@@ -1430,8 +1429,8 @@ static int
e1000_check_lbtest_frame(struct sk_buff *skb, unsigned int frame_size) e1000_check_lbtest_frame(struct sk_buff *skb, unsigned int frame_size)
{ {
frame_size &= ~1; frame_size &= ~1;
if(*(skb->data + 3) == 0xFF) { if (*(skb->data + 3) == 0xFF) {
if((*(skb->data + frame_size / 2 + 10) == 0xBE) && if ((*(skb->data + frame_size / 2 + 10) == 0xBE) &&
(*(skb->data + frame_size / 2 + 12) == 0xAF)) { (*(skb->data + frame_size / 2 + 12) == 0xAF)) {
return 0; return 0;
} }
...@@ -1450,53 +1449,53 @@ e1000_run_loopback_test(struct e1000_adapter *adapter) ...@@ -1450,53 +1449,53 @@ e1000_run_loopback_test(struct e1000_adapter *adapter)
E1000_WRITE_REG(&adapter->hw, RDT, rxdr->count - 1); E1000_WRITE_REG(&adapter->hw, RDT, rxdr->count - 1);
/* Calculate the loop count based on the largest descriptor ring /* Calculate the loop count based on the largest descriptor ring
* The idea is to wrap the largest ring a number of times using 64 * The idea is to wrap the largest ring a number of times using 64
* send/receive pairs during each loop * send/receive pairs during each loop
*/ */
if(rxdr->count <= txdr->count) if (rxdr->count <= txdr->count)
lc = ((txdr->count / 64) * 2) + 1; lc = ((txdr->count / 64) * 2) + 1;
else else
lc = ((rxdr->count / 64) * 2) + 1; lc = ((rxdr->count / 64) * 2) + 1;
k = l = 0; k = l = 0;
for(j = 0; j <= lc; j++) { /* loop count loop */ for (j = 0; j <= lc; j++) { /* loop count loop */
for(i = 0; i < 64; i++) { /* send the packets */ for (i = 0; i < 64; i++) { /* send the packets */
e1000_create_lbtest_frame(txdr->buffer_info[i].skb, e1000_create_lbtest_frame(txdr->buffer_info[i].skb,
1024); 1024);
pci_dma_sync_single_for_device(pdev, pci_dma_sync_single_for_device(pdev,
txdr->buffer_info[k].dma, txdr->buffer_info[k].dma,
txdr->buffer_info[k].length, txdr->buffer_info[k].length,
PCI_DMA_TODEVICE); PCI_DMA_TODEVICE);
if(unlikely(++k == txdr->count)) k = 0; if (unlikely(++k == txdr->count)) k = 0;
} }
E1000_WRITE_REG(&adapter->hw, TDT, k); E1000_WRITE_REG(&adapter->hw, TDT, k);
msec_delay(200); msec_delay(200);
time = jiffies; /* set the start time for the receive */ time = jiffies; /* set the start time for the receive */
good_cnt = 0; good_cnt = 0;
do { /* receive the sent packets */ do { /* receive the sent packets */
pci_dma_sync_single_for_cpu(pdev, pci_dma_sync_single_for_cpu(pdev,
rxdr->buffer_info[l].dma, rxdr->buffer_info[l].dma,
rxdr->buffer_info[l].length, rxdr->buffer_info[l].length,
PCI_DMA_FROMDEVICE); PCI_DMA_FROMDEVICE);
ret_val = e1000_check_lbtest_frame( ret_val = e1000_check_lbtest_frame(
rxdr->buffer_info[l].skb, rxdr->buffer_info[l].skb,
1024); 1024);
if(!ret_val) if (!ret_val)
good_cnt++; good_cnt++;
if(unlikely(++l == rxdr->count)) l = 0; if (unlikely(++l == rxdr->count)) l = 0;
/* time + 20 msecs (200 msecs on 2.4) is more than /* time + 20 msecs (200 msecs on 2.4) is more than
* enough time to complete the receives, if it's * enough time to complete the receives, if it's
* exceeded, break and error off * exceeded, break and error off
*/ */
} while (good_cnt < 64 && jiffies < (time + 20)); } while (good_cnt < 64 && jiffies < (time + 20));
if(good_cnt != 64) { if (good_cnt != 64) {
ret_val = 13; /* ret_val is the same as mis-compare */ ret_val = 13; /* ret_val is the same as mis-compare */
break; break;
} }
if(jiffies >= (time + 2)) { if (jiffies >= (time + 2)) {
ret_val = 14; /* error code for time out error */ ret_val = 14; /* error code for time out error */
break; break;
} }
...@@ -1549,17 +1548,17 @@ e1000_link_test(struct e1000_adapter *adapter, uint64_t *data) ...@@ -1549,17 +1548,17 @@ e1000_link_test(struct e1000_adapter *adapter, uint64_t *data)
*data = 1; *data = 1;
} else { } else {
e1000_check_for_link(&adapter->hw); e1000_check_for_link(&adapter->hw);
if(adapter->hw.autoneg) /* if auto_neg is set wait for it */ if (adapter->hw.autoneg) /* if auto_neg is set wait for it */
msec_delay(4000); msec_delay(4000);
if(!(E1000_READ_REG(&adapter->hw, STATUS) & E1000_STATUS_LU)) { if (!(E1000_READ_REG(&adapter->hw, STATUS) & E1000_STATUS_LU)) {
*data = 1; *data = 1;
} }
} }
return *data; return *data;
} }
static int static int
e1000_diag_test_count(struct net_device *netdev) e1000_diag_test_count(struct net_device *netdev)
{ {
return E1000_TEST_LEN; return E1000_TEST_LEN;
...@@ -1572,7 +1571,7 @@ e1000_diag_test(struct net_device *netdev, ...@@ -1572,7 +1571,7 @@ e1000_diag_test(struct net_device *netdev,
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
boolean_t if_running = netif_running(netdev); boolean_t if_running = netif_running(netdev);
if(eth_test->flags == ETH_TEST_FL_OFFLINE) { if (eth_test->flags == ETH_TEST_FL_OFFLINE) {
/* Offline tests */ /* Offline tests */
/* save speed, duplex, autoneg settings */ /* save speed, duplex, autoneg settings */
...@@ -1582,27 +1581,27 @@ e1000_diag_test(struct net_device *netdev, ...@@ -1582,27 +1581,27 @@ e1000_diag_test(struct net_device *netdev,
/* Link test performed before hardware reset so autoneg doesn't /* Link test performed before hardware reset so autoneg doesn't
* interfere with test result */ * interfere with test result */
if(e1000_link_test(adapter, &data[4])) if (e1000_link_test(adapter, &data[4]))
eth_test->flags |= ETH_TEST_FL_FAILED; eth_test->flags |= ETH_TEST_FL_FAILED;
if(if_running) if (if_running)
e1000_down(adapter); e1000_down(adapter);
else else
e1000_reset(adapter); e1000_reset(adapter);
if(e1000_reg_test(adapter, &data[0])) if (e1000_reg_test(adapter, &data[0]))
eth_test->flags |= ETH_TEST_FL_FAILED; eth_test->flags |= ETH_TEST_FL_FAILED;
e1000_reset(adapter); e1000_reset(adapter);
if(e1000_eeprom_test(adapter, &data[1])) if (e1000_eeprom_test(adapter, &data[1]))
eth_test->flags |= ETH_TEST_FL_FAILED; eth_test->flags |= ETH_TEST_FL_FAILED;
e1000_reset(adapter); e1000_reset(adapter);
if(e1000_intr_test(adapter, &data[2])) if (e1000_intr_test(adapter, &data[2]))
eth_test->flags |= ETH_TEST_FL_FAILED; eth_test->flags |= ETH_TEST_FL_FAILED;
e1000_reset(adapter); e1000_reset(adapter);
if(e1000_loopback_test(adapter, &data[3])) if (e1000_loopback_test(adapter, &data[3]))
eth_test->flags |= ETH_TEST_FL_FAILED; eth_test->flags |= ETH_TEST_FL_FAILED;
/* restore speed, duplex, autoneg settings */ /* restore speed, duplex, autoneg settings */
...@@ -1611,11 +1610,11 @@ e1000_diag_test(struct net_device *netdev, ...@@ -1611,11 +1610,11 @@ e1000_diag_test(struct net_device *netdev,
adapter->hw.autoneg = autoneg; adapter->hw.autoneg = autoneg;
e1000_reset(adapter); e1000_reset(adapter);
if(if_running) if (if_running)
e1000_up(adapter); e1000_up(adapter);
} else { } else {
/* Online tests */ /* Online tests */
if(e1000_link_test(adapter, &data[4])) if (e1000_link_test(adapter, &data[4]))
eth_test->flags |= ETH_TEST_FL_FAILED; eth_test->flags |= ETH_TEST_FL_FAILED;
/* Offline tests aren't run; pass by default */ /* Offline tests aren't run; pass by default */
...@@ -1633,7 +1632,7 @@ e1000_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) ...@@ -1633,7 +1632,7 @@ e1000_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
struct e1000_hw *hw = &adapter->hw; struct e1000_hw *hw = &adapter->hw;
switch(adapter->hw.device_id) { switch (adapter->hw.device_id) {
case E1000_DEV_ID_82542: case E1000_DEV_ID_82542:
case E1000_DEV_ID_82543GC_FIBER: case E1000_DEV_ID_82543GC_FIBER:
case E1000_DEV_ID_82543GC_COPPER: case E1000_DEV_ID_82543GC_COPPER:
...@@ -1649,7 +1648,7 @@ e1000_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) ...@@ -1649,7 +1648,7 @@ e1000_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
case E1000_DEV_ID_82546GB_FIBER: case E1000_DEV_ID_82546GB_FIBER:
case E1000_DEV_ID_82571EB_FIBER: case E1000_DEV_ID_82571EB_FIBER:
/* Wake events only supported on port A for dual fiber */ /* Wake events only supported on port A for dual fiber */
if(E1000_READ_REG(hw, STATUS) & E1000_STATUS_FUNC_1) { if (E1000_READ_REG(hw, STATUS) & E1000_STATUS_FUNC_1) {
wol->supported = 0; wol->supported = 0;
wol->wolopts = 0; wol->wolopts = 0;
return; return;
...@@ -1661,13 +1660,13 @@ e1000_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) ...@@ -1661,13 +1660,13 @@ e1000_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
WAKE_BCAST | WAKE_MAGIC; WAKE_BCAST | WAKE_MAGIC;
wol->wolopts = 0; wol->wolopts = 0;
if(adapter->wol & E1000_WUFC_EX) if (adapter->wol & E1000_WUFC_EX)
wol->wolopts |= WAKE_UCAST; wol->wolopts |= WAKE_UCAST;
if(adapter->wol & E1000_WUFC_MC) if (adapter->wol & E1000_WUFC_MC)
wol->wolopts |= WAKE_MCAST; wol->wolopts |= WAKE_MCAST;
if(adapter->wol & E1000_WUFC_BC) if (adapter->wol & E1000_WUFC_BC)
wol->wolopts |= WAKE_BCAST; wol->wolopts |= WAKE_BCAST;
if(adapter->wol & E1000_WUFC_MAG) if (adapter->wol & E1000_WUFC_MAG)
wol->wolopts |= WAKE_MAGIC; wol->wolopts |= WAKE_MAGIC;
return; return;
} }
...@@ -1679,7 +1678,7 @@ e1000_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) ...@@ -1679,7 +1678,7 @@ e1000_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
struct e1000_hw *hw = &adapter->hw; struct e1000_hw *hw = &adapter->hw;
switch(adapter->hw.device_id) { switch (adapter->hw.device_id) {
case E1000_DEV_ID_82542: case E1000_DEV_ID_82542:
case E1000_DEV_ID_82543GC_FIBER: case E1000_DEV_ID_82543GC_FIBER:
case E1000_DEV_ID_82543GC_COPPER: case E1000_DEV_ID_82543GC_COPPER:
...@@ -1693,23 +1692,23 @@ e1000_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) ...@@ -1693,23 +1692,23 @@ e1000_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
case E1000_DEV_ID_82546GB_FIBER: case E1000_DEV_ID_82546GB_FIBER:
case E1000_DEV_ID_82571EB_FIBER: case E1000_DEV_ID_82571EB_FIBER:
/* Wake events only supported on port A for dual fiber */ /* Wake events only supported on port A for dual fiber */
if(E1000_READ_REG(hw, STATUS) & E1000_STATUS_FUNC_1) if (E1000_READ_REG(hw, STATUS) & E1000_STATUS_FUNC_1)
return wol->wolopts ? -EOPNOTSUPP : 0; return wol->wolopts ? -EOPNOTSUPP : 0;
/* Fall Through */ /* Fall Through */
default: default:
if(wol->wolopts & (WAKE_PHY | WAKE_ARP | WAKE_MAGICSECURE)) if (wol->wolopts & (WAKE_PHY | WAKE_ARP | WAKE_MAGICSECURE))
return -EOPNOTSUPP; return -EOPNOTSUPP;
adapter->wol = 0; adapter->wol = 0;
if(wol->wolopts & WAKE_UCAST) if (wol->wolopts & WAKE_UCAST)
adapter->wol |= E1000_WUFC_EX; adapter->wol |= E1000_WUFC_EX;
if(wol->wolopts & WAKE_MCAST) if (wol->wolopts & WAKE_MCAST)
adapter->wol |= E1000_WUFC_MC; adapter->wol |= E1000_WUFC_MC;
if(wol->wolopts & WAKE_BCAST) if (wol->wolopts & WAKE_BCAST)
adapter->wol |= E1000_WUFC_BC; adapter->wol |= E1000_WUFC_BC;
if(wol->wolopts & WAKE_MAGIC) if (wol->wolopts & WAKE_MAGIC)
adapter->wol |= E1000_WUFC_MAG; adapter->wol |= E1000_WUFC_MAG;
} }
...@@ -1727,7 +1726,7 @@ e1000_led_blink_callback(unsigned long data) ...@@ -1727,7 +1726,7 @@ e1000_led_blink_callback(unsigned long data)
{ {
struct e1000_adapter *adapter = (struct e1000_adapter *) data; struct e1000_adapter *adapter = (struct e1000_adapter *) data;
if(test_and_change_bit(E1000_LED_ON, &adapter->led_status)) if (test_and_change_bit(E1000_LED_ON, &adapter->led_status))
e1000_led_off(&adapter->hw); e1000_led_off(&adapter->hw);
else else
e1000_led_on(&adapter->hw); e1000_led_on(&adapter->hw);
...@@ -1740,11 +1739,11 @@ e1000_phys_id(struct net_device *netdev, uint32_t data) ...@@ -1740,11 +1739,11 @@ e1000_phys_id(struct net_device *netdev, uint32_t data)
{ {
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
if(!data || data > (uint32_t)(MAX_SCHEDULE_TIMEOUT / HZ)) if (!data || data > (uint32_t)(MAX_SCHEDULE_TIMEOUT / HZ))
data = (uint32_t)(MAX_SCHEDULE_TIMEOUT / HZ); data = (uint32_t)(MAX_SCHEDULE_TIMEOUT / HZ);
if(adapter->hw.mac_type < e1000_82571) { if (adapter->hw.mac_type < e1000_82571) {
if(!adapter->blink_timer.function) { if (!adapter->blink_timer.function) {
init_timer(&adapter->blink_timer); init_timer(&adapter->blink_timer);
adapter->blink_timer.function = e1000_led_blink_callback; adapter->blink_timer.function = e1000_led_blink_callback;
adapter->blink_timer.data = (unsigned long) adapter; adapter->blink_timer.data = (unsigned long) adapter;
...@@ -1782,21 +1781,21 @@ static int ...@@ -1782,21 +1781,21 @@ static int
e1000_nway_reset(struct net_device *netdev) e1000_nway_reset(struct net_device *netdev)
{ {
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
if(netif_running(netdev)) { if (netif_running(netdev)) {
e1000_down(adapter); e1000_down(adapter);
e1000_up(adapter); e1000_up(adapter);
} }
return 0; return 0;
} }
static int static int
e1000_get_stats_count(struct net_device *netdev) e1000_get_stats_count(struct net_device *netdev)
{ {
return E1000_STATS_LEN; return E1000_STATS_LEN;
} }
static void static void
e1000_get_ethtool_stats(struct net_device *netdev, e1000_get_ethtool_stats(struct net_device *netdev,
struct ethtool_stats *stats, uint64_t *data) struct ethtool_stats *stats, uint64_t *data)
{ {
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
...@@ -1830,7 +1829,7 @@ e1000_get_ethtool_stats(struct net_device *netdev, ...@@ -1830,7 +1829,7 @@ e1000_get_ethtool_stats(struct net_device *netdev,
/* BUG_ON(i != E1000_STATS_LEN); */ /* BUG_ON(i != E1000_STATS_LEN); */
} }
static void static void
e1000_get_strings(struct net_device *netdev, uint32_t stringset, uint8_t *data) e1000_get_strings(struct net_device *netdev, uint32_t stringset, uint8_t *data)
{ {
#ifdef CONFIG_E1000_MQ #ifdef CONFIG_E1000_MQ
...@@ -1839,9 +1838,9 @@ e1000_get_strings(struct net_device *netdev, uint32_t stringset, uint8_t *data) ...@@ -1839,9 +1838,9 @@ e1000_get_strings(struct net_device *netdev, uint32_t stringset, uint8_t *data)
uint8_t *p = data; uint8_t *p = data;
int i; int i;
switch(stringset) { switch (stringset) {
case ETH_SS_TEST: case ETH_SS_TEST:
memcpy(data, *e1000_gstrings_test, memcpy(data, *e1000_gstrings_test,
E1000_TEST_LEN*ETH_GSTRING_LEN); E1000_TEST_LEN*ETH_GSTRING_LEN);
break; break;
case ETH_SS_STATS: case ETH_SS_STATS:
......
...@@ -1600,10 +1600,10 @@ e1000_phy_setup_autoneg(struct e1000_hw *hw) ...@@ -1600,10 +1600,10 @@ e1000_phy_setup_autoneg(struct e1000_hw *hw)
if(ret_val) if(ret_val)
return ret_val; return ret_val;
/* Read the MII 1000Base-T Control Register (Address 9). */ /* Read the MII 1000Base-T Control Register (Address 9). */
ret_val = e1000_read_phy_reg(hw, PHY_1000T_CTRL, &mii_1000t_ctrl_reg); ret_val = e1000_read_phy_reg(hw, PHY_1000T_CTRL, &mii_1000t_ctrl_reg);
if(ret_val) if(ret_val)
return ret_val; return ret_val;
/* Need to parse both autoneg_advertised and fc and set up /* Need to parse both autoneg_advertised and fc and set up
* the appropriate PHY registers. First we will parse for * the appropriate PHY registers. First we will parse for
...@@ -3916,7 +3916,7 @@ e1000_read_eeprom(struct e1000_hw *hw, ...@@ -3916,7 +3916,7 @@ e1000_read_eeprom(struct e1000_hw *hw,
} }
} }
if(eeprom->use_eerd == TRUE) { if (eeprom->use_eerd == TRUE) {
ret_val = e1000_read_eeprom_eerd(hw, offset, words, data); ret_val = e1000_read_eeprom_eerd(hw, offset, words, data);
if ((e1000_is_onboard_nvm_eeprom(hw) == TRUE) || if ((e1000_is_onboard_nvm_eeprom(hw) == TRUE) ||
(hw->mac_type != e1000_82573)) (hw->mac_type != e1000_82573))
...@@ -4423,7 +4423,7 @@ e1000_commit_shadow_ram(struct e1000_hw *hw) ...@@ -4423,7 +4423,7 @@ e1000_commit_shadow_ram(struct e1000_hw *hw)
return -E1000_ERR_EEPROM; return -E1000_ERR_EEPROM;
} }
/* If STM opcode located in bits 15:8 of flop, reset firmware */ /* If STM opcode located in bits 15:8 of flop, reset firmware */
if ((flop & 0xFF00) == E1000_STM_OPCODE) { if ((flop & 0xFF00) == E1000_STM_OPCODE) {
E1000_WRITE_REG(hw, HICR, E1000_HICR_FW_RESET); E1000_WRITE_REG(hw, HICR, E1000_HICR_FW_RESET);
} }
...@@ -4431,7 +4431,7 @@ e1000_commit_shadow_ram(struct e1000_hw *hw) ...@@ -4431,7 +4431,7 @@ e1000_commit_shadow_ram(struct e1000_hw *hw)
/* Perform the flash update */ /* Perform the flash update */
E1000_WRITE_REG(hw, EECD, eecd | E1000_EECD_FLUPD); E1000_WRITE_REG(hw, EECD, eecd | E1000_EECD_FLUPD);
for (i=0; i < attempts; i++) { for (i=0; i < attempts; i++) {
eecd = E1000_READ_REG(hw, EECD); eecd = E1000_READ_REG(hw, EECD);
if ((eecd & E1000_EECD_FLUPD) == 0) { if ((eecd & E1000_EECD_FLUPD) == 0) {
break; break;
...@@ -4504,6 +4504,7 @@ e1000_read_mac_addr(struct e1000_hw * hw) ...@@ -4504,6 +4504,7 @@ e1000_read_mac_addr(struct e1000_hw * hw)
hw->perm_mac_addr[i] = (uint8_t) (eeprom_data & 0x00FF); hw->perm_mac_addr[i] = (uint8_t) (eeprom_data & 0x00FF);
hw->perm_mac_addr[i+1] = (uint8_t) (eeprom_data >> 8); hw->perm_mac_addr[i+1] = (uint8_t) (eeprom_data >> 8);
} }
switch (hw->mac_type) { switch (hw->mac_type) {
default: default:
break; break;
...@@ -6840,7 +6841,8 @@ int32_t ...@@ -6840,7 +6841,8 @@ int32_t
e1000_check_phy_reset_block(struct e1000_hw *hw) e1000_check_phy_reset_block(struct e1000_hw *hw)
{ {
uint32_t manc = 0; uint32_t manc = 0;
if(hw->mac_type > e1000_82547_rev_2)
if (hw->mac_type > e1000_82547_rev_2)
manc = E1000_READ_REG(hw, MANC); manc = E1000_READ_REG(hw, MANC);
return (manc & E1000_MANC_BLK_PHY_RST_ON_IDE) ? return (manc & E1000_MANC_BLK_PHY_RST_ON_IDE) ?
E1000_BLK_PHY_RESET : E1000_SUCCESS; E1000_BLK_PHY_RESET : E1000_SUCCESS;
......
...@@ -902,14 +902,14 @@ struct e1000_ffvt_entry { ...@@ -902,14 +902,14 @@ struct e1000_ffvt_entry {
#define E1000_TXDCTL 0x03828 /* TX Descriptor Control - RW */ #define E1000_TXDCTL 0x03828 /* TX Descriptor Control - RW */
#define E1000_TADV 0x0382C /* TX Interrupt Absolute Delay Val - RW */ #define E1000_TADV 0x0382C /* TX Interrupt Absolute Delay Val - RW */
#define E1000_TSPMT 0x03830 /* TCP Segmentation PAD & Min Threshold - RW */ #define E1000_TSPMT 0x03830 /* TCP Segmentation PAD & Min Threshold - RW */
#define E1000_TARC0 0x03840 /* TX Arbitration Count (0) */ #define E1000_TARC0 0x03840 /* TX Arbitration Count (0) */
#define E1000_TDBAL1 0x03900 /* TX Desc Base Address Low (1) - RW */ #define E1000_TDBAL1 0x03900 /* TX Desc Base Address Low (1) - RW */
#define E1000_TDBAH1 0x03904 /* TX Desc Base Address High (1) - RW */ #define E1000_TDBAH1 0x03904 /* TX Desc Base Address High (1) - RW */
#define E1000_TDLEN1 0x03908 /* TX Desc Length (1) - RW */ #define E1000_TDLEN1 0x03908 /* TX Desc Length (1) - RW */
#define E1000_TDH1 0x03910 /* TX Desc Head (1) - RW */ #define E1000_TDH1 0x03910 /* TX Desc Head (1) - RW */
#define E1000_TDT1 0x03918 /* TX Desc Tail (1) - RW */ #define E1000_TDT1 0x03918 /* TX Desc Tail (1) - RW */
#define E1000_TXDCTL1 0x03928 /* TX Descriptor Control (1) - RW */ #define E1000_TXDCTL1 0x03928 /* TX Descriptor Control (1) - RW */
#define E1000_TARC1 0x03940 /* TX Arbitration Count (1) */ #define E1000_TARC1 0x03940 /* TX Arbitration Count (1) */
#define E1000_CRCERRS 0x04000 /* CRC Error Count - R/clr */ #define E1000_CRCERRS 0x04000 /* CRC Error Count - R/clr */
#define E1000_ALGNERRC 0x04004 /* Alignment Error Count - R/clr */ #define E1000_ALGNERRC 0x04004 /* Alignment Error Count - R/clr */
#define E1000_SYMERRS 0x04008 /* Symbol Error Count - R/clr */ #define E1000_SYMERRS 0x04008 /* Symbol Error Count - R/clr */
...@@ -1764,7 +1764,6 @@ struct e1000_hw { ...@@ -1764,7 +1764,6 @@ struct e1000_hw {
#define E1000_TXDCTL_FULL_TX_DESC_WB 0x01010000 /* GRAN=1, WTHRESH=1 */ #define E1000_TXDCTL_FULL_TX_DESC_WB 0x01010000 /* GRAN=1, WTHRESH=1 */
#define E1000_TXDCTL_COUNT_DESC 0x00400000 /* Enable the counting of desc. #define E1000_TXDCTL_COUNT_DESC 0x00400000 /* Enable the counting of desc.
still to be processed. */ still to be processed. */
/* Transmit Configuration Word */ /* Transmit Configuration Word */
#define E1000_TXCW_FD 0x00000020 /* TXCW full duplex */ #define E1000_TXCW_FD 0x00000020 /* TXCW full duplex */
#define E1000_TXCW_HD 0x00000040 /* TXCW half duplex */ #define E1000_TXCW_HD 0x00000040 /* TXCW half duplex */
......
...@@ -295,7 +295,7 @@ e1000_irq_disable(struct e1000_adapter *adapter) ...@@ -295,7 +295,7 @@ e1000_irq_disable(struct e1000_adapter *adapter)
static inline void static inline void
e1000_irq_enable(struct e1000_adapter *adapter) e1000_irq_enable(struct e1000_adapter *adapter)
{ {
if(likely(atomic_dec_and_test(&adapter->irq_sem))) { if (likely(atomic_dec_and_test(&adapter->irq_sem))) {
E1000_WRITE_REG(&adapter->hw, IMS, IMS_ENABLE_MASK); E1000_WRITE_REG(&adapter->hw, IMS, IMS_ENABLE_MASK);
E1000_WRITE_FLUSH(&adapter->hw); E1000_WRITE_FLUSH(&adapter->hw);
} }
...@@ -307,17 +307,17 @@ e1000_update_mng_vlan(struct e1000_adapter *adapter) ...@@ -307,17 +307,17 @@ e1000_update_mng_vlan(struct e1000_adapter *adapter)
struct net_device *netdev = adapter->netdev; struct net_device *netdev = adapter->netdev;
uint16_t vid = adapter->hw.mng_cookie.vlan_id; uint16_t vid = adapter->hw.mng_cookie.vlan_id;
uint16_t old_vid = adapter->mng_vlan_id; uint16_t old_vid = adapter->mng_vlan_id;
if(adapter->vlgrp) { if (adapter->vlgrp) {
if(!adapter->vlgrp->vlan_devices[vid]) { if (!adapter->vlgrp->vlan_devices[vid]) {
if(adapter->hw.mng_cookie.status & if (adapter->hw.mng_cookie.status &
E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT) { E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT) {
e1000_vlan_rx_add_vid(netdev, vid); e1000_vlan_rx_add_vid(netdev, vid);
adapter->mng_vlan_id = vid; adapter->mng_vlan_id = vid;
} else } else
adapter->mng_vlan_id = E1000_MNG_VLAN_NONE; adapter->mng_vlan_id = E1000_MNG_VLAN_NONE;
if((old_vid != (uint16_t)E1000_MNG_VLAN_NONE) && if ((old_vid != (uint16_t)E1000_MNG_VLAN_NONE) &&
(vid != old_vid) && (vid != old_vid) &&
!adapter->vlgrp->vlan_devices[old_vid]) !adapter->vlgrp->vlan_devices[old_vid])
e1000_vlan_rx_kill_vid(netdev, old_vid); e1000_vlan_rx_kill_vid(netdev, old_vid);
} }
...@@ -401,10 +401,10 @@ e1000_up(struct e1000_adapter *adapter) ...@@ -401,10 +401,10 @@ e1000_up(struct e1000_adapter *adapter)
/* hardware has been reset, we need to reload some things */ /* hardware has been reset, we need to reload some things */
/* Reset the PHY if it was previously powered down */ /* Reset the PHY if it was previously powered down */
if(adapter->hw.media_type == e1000_media_type_copper) { if (adapter->hw.media_type == e1000_media_type_copper) {
uint16_t mii_reg; uint16_t mii_reg;
e1000_read_phy_reg(&adapter->hw, PHY_CTRL, &mii_reg); e1000_read_phy_reg(&adapter->hw, PHY_CTRL, &mii_reg);
if(mii_reg & MII_CR_POWER_DOWN) if (mii_reg & MII_CR_POWER_DOWN)
e1000_phy_reset(&adapter->hw); e1000_phy_reset(&adapter->hw);
} }
...@@ -425,16 +425,16 @@ e1000_up(struct e1000_adapter *adapter) ...@@ -425,16 +425,16 @@ e1000_up(struct e1000_adapter *adapter)
} }
#ifdef CONFIG_PCI_MSI #ifdef CONFIG_PCI_MSI
if(adapter->hw.mac_type > e1000_82547_rev_2) { if (adapter->hw.mac_type > e1000_82547_rev_2) {
adapter->have_msi = TRUE; adapter->have_msi = TRUE;
if((err = pci_enable_msi(adapter->pdev))) { if ((err = pci_enable_msi(adapter->pdev))) {
DPRINTK(PROBE, ERR, DPRINTK(PROBE, ERR,
"Unable to allocate MSI interrupt Error: %d\n", err); "Unable to allocate MSI interrupt Error: %d\n", err);
adapter->have_msi = FALSE; adapter->have_msi = FALSE;
} }
} }
#endif #endif
if((err = request_irq(adapter->pdev->irq, &e1000_intr, if ((err = request_irq(adapter->pdev->irq, &e1000_intr,
SA_SHIRQ | SA_SAMPLE_RANDOM, SA_SHIRQ | SA_SAMPLE_RANDOM,
netdev->name, netdev))) { netdev->name, netdev))) {
DPRINTK(PROBE, ERR, DPRINTK(PROBE, ERR,
...@@ -471,7 +471,7 @@ e1000_down(struct e1000_adapter *adapter) ...@@ -471,7 +471,7 @@ e1000_down(struct e1000_adapter *adapter)
#endif #endif
free_irq(adapter->pdev->irq, netdev); free_irq(adapter->pdev->irq, netdev);
#ifdef CONFIG_PCI_MSI #ifdef CONFIG_PCI_MSI
if(adapter->hw.mac_type > e1000_82547_rev_2 && if (adapter->hw.mac_type > e1000_82547_rev_2 &&
adapter->have_msi == TRUE) adapter->have_msi == TRUE)
pci_disable_msi(adapter->pdev); pci_disable_msi(adapter->pdev);
#endif #endif
...@@ -537,12 +537,12 @@ e1000_reset(struct e1000_adapter *adapter) ...@@ -537,12 +537,12 @@ e1000_reset(struct e1000_adapter *adapter)
break; break;
} }
if((adapter->hw.mac_type != e1000_82573) && if ((adapter->hw.mac_type != e1000_82573) &&
(adapter->netdev->mtu > E1000_RXBUFFER_8192)) (adapter->netdev->mtu > E1000_RXBUFFER_8192))
pba -= 8; /* allocate more FIFO for Tx */ pba -= 8; /* allocate more FIFO for Tx */
if(adapter->hw.mac_type == e1000_82547) { if (adapter->hw.mac_type == e1000_82547) {
adapter->tx_fifo_head = 0; adapter->tx_fifo_head = 0;
adapter->tx_head_addr = pba << E1000_TX_HEAD_ADDR_SHIFT; adapter->tx_head_addr = pba << E1000_TX_HEAD_ADDR_SHIFT;
adapter->tx_fifo_size = adapter->tx_fifo_size =
...@@ -565,9 +565,9 @@ e1000_reset(struct e1000_adapter *adapter) ...@@ -565,9 +565,9 @@ e1000_reset(struct e1000_adapter *adapter)
/* Allow time for pending master requests to run */ /* Allow time for pending master requests to run */
e1000_reset_hw(&adapter->hw); e1000_reset_hw(&adapter->hw);
if(adapter->hw.mac_type >= e1000_82544) if (adapter->hw.mac_type >= e1000_82544)
E1000_WRITE_REG(&adapter->hw, WUC, 0); E1000_WRITE_REG(&adapter->hw, WUC, 0);
if(e1000_init_hw(&adapter->hw)) if (e1000_init_hw(&adapter->hw))
DPRINTK(PROBE, ERR, "Hardware Error\n"); DPRINTK(PROBE, ERR, "Hardware Error\n");
e1000_update_mng_vlan(adapter); e1000_update_mng_vlan(adapter);
/* Enable h/w to recognize an 802.1Q VLAN Ethernet packet */ /* Enable h/w to recognize an 802.1Q VLAN Ethernet packet */
...@@ -606,26 +606,26 @@ e1000_probe(struct pci_dev *pdev, ...@@ -606,26 +606,26 @@ e1000_probe(struct pci_dev *pdev,
int i, err, pci_using_dac; int i, err, pci_using_dac;
uint16_t eeprom_data; uint16_t eeprom_data;
uint16_t eeprom_apme_mask = E1000_EEPROM_APME; uint16_t eeprom_apme_mask = E1000_EEPROM_APME;
if((err = pci_enable_device(pdev))) if ((err = pci_enable_device(pdev)))
return err; return err;
if(!(err = pci_set_dma_mask(pdev, DMA_64BIT_MASK))) { if (!(err = pci_set_dma_mask(pdev, DMA_64BIT_MASK))) {
pci_using_dac = 1; pci_using_dac = 1;
} else { } else {
if((err = pci_set_dma_mask(pdev, DMA_32BIT_MASK))) { if ((err = pci_set_dma_mask(pdev, DMA_32BIT_MASK))) {
E1000_ERR("No usable DMA configuration, aborting\n"); E1000_ERR("No usable DMA configuration, aborting\n");
return err; return err;
} }
pci_using_dac = 0; pci_using_dac = 0;
} }
if((err = pci_request_regions(pdev, e1000_driver_name))) if ((err = pci_request_regions(pdev, e1000_driver_name)))
return err; return err;
pci_set_master(pdev); pci_set_master(pdev);
netdev = alloc_etherdev(sizeof(struct e1000_adapter)); netdev = alloc_etherdev(sizeof(struct e1000_adapter));
if(!netdev) { if (!netdev) {
err = -ENOMEM; err = -ENOMEM;
goto err_alloc_etherdev; goto err_alloc_etherdev;
} }
...@@ -644,15 +644,15 @@ e1000_probe(struct pci_dev *pdev, ...@@ -644,15 +644,15 @@ e1000_probe(struct pci_dev *pdev,
mmio_len = pci_resource_len(pdev, BAR_0); mmio_len = pci_resource_len(pdev, BAR_0);
adapter->hw.hw_addr = ioremap(mmio_start, mmio_len); adapter->hw.hw_addr = ioremap(mmio_start, mmio_len);
if(!adapter->hw.hw_addr) { if (!adapter->hw.hw_addr) {
err = -EIO; err = -EIO;
goto err_ioremap; goto err_ioremap;
} }
for(i = BAR_1; i <= BAR_5; i++) { for (i = BAR_1; i <= BAR_5; i++) {
if(pci_resource_len(pdev, i) == 0) if (pci_resource_len(pdev, i) == 0)
continue; continue;
if(pci_resource_flags(pdev, i) & IORESOURCE_IO) { if (pci_resource_flags(pdev, i) & IORESOURCE_IO) {
adapter->hw.io_base = pci_resource_start(pdev, i); adapter->hw.io_base = pci_resource_start(pdev, i);
break; break;
} }
...@@ -689,13 +689,13 @@ e1000_probe(struct pci_dev *pdev, ...@@ -689,13 +689,13 @@ e1000_probe(struct pci_dev *pdev,
/* setup the private structure */ /* setup the private structure */
if((err = e1000_sw_init(adapter))) if ((err = e1000_sw_init(adapter)))
goto err_sw_init; goto err_sw_init;
if((err = e1000_check_phy_reset_block(&adapter->hw))) if ((err = e1000_check_phy_reset_block(&adapter->hw)))
DPRINTK(PROBE, INFO, "PHY reset is blocked due to SOL/IDER session.\n"); DPRINTK(PROBE, INFO, "PHY reset is blocked due to SOL/IDER session.\n");
if(adapter->hw.mac_type >= e1000_82543) { if (adapter->hw.mac_type >= e1000_82543) {
netdev->features = NETIF_F_SG | netdev->features = NETIF_F_SG |
NETIF_F_HW_CSUM | NETIF_F_HW_CSUM |
NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_TX |
...@@ -704,16 +704,16 @@ e1000_probe(struct pci_dev *pdev, ...@@ -704,16 +704,16 @@ e1000_probe(struct pci_dev *pdev,
} }
#ifdef NETIF_F_TSO #ifdef NETIF_F_TSO
if((adapter->hw.mac_type >= e1000_82544) && if ((adapter->hw.mac_type >= e1000_82544) &&
(adapter->hw.mac_type != e1000_82547)) (adapter->hw.mac_type != e1000_82547))
netdev->features |= NETIF_F_TSO; netdev->features |= NETIF_F_TSO;
#ifdef NETIF_F_TSO_IPV6 #ifdef NETIF_F_TSO_IPV6
if(adapter->hw.mac_type > e1000_82547_rev_2) if (adapter->hw.mac_type > e1000_82547_rev_2)
netdev->features |= NETIF_F_TSO_IPV6; netdev->features |= NETIF_F_TSO_IPV6;
#endif #endif
#endif #endif
if(pci_using_dac) if (pci_using_dac)
netdev->features |= NETIF_F_HIGHDMA; netdev->features |= NETIF_F_HIGHDMA;
/* hard_start_xmit is safe against parallel locking */ /* hard_start_xmit is safe against parallel locking */
...@@ -721,14 +721,14 @@ e1000_probe(struct pci_dev *pdev, ...@@ -721,14 +721,14 @@ e1000_probe(struct pci_dev *pdev,
adapter->en_mng_pt = e1000_enable_mng_pass_thru(&adapter->hw); adapter->en_mng_pt = e1000_enable_mng_pass_thru(&adapter->hw);
/* before reading the EEPROM, reset the controller to /* before reading the EEPROM, reset the controller to
* put the device in a known good starting state */ * put the device in a known good starting state */
e1000_reset_hw(&adapter->hw); e1000_reset_hw(&adapter->hw);
/* make sure the EEPROM is good */ /* make sure the EEPROM is good */
if(e1000_validate_eeprom_checksum(&adapter->hw) < 0) { if (e1000_validate_eeprom_checksum(&adapter->hw) < 0) {
DPRINTK(PROBE, ERR, "The EEPROM Checksum Is Not Valid\n"); DPRINTK(PROBE, ERR, "The EEPROM Checksum Is Not Valid\n");
err = -EIO; err = -EIO;
goto err_eeprom; goto err_eeprom;
...@@ -736,12 +736,12 @@ e1000_probe(struct pci_dev *pdev, ...@@ -736,12 +736,12 @@ e1000_probe(struct pci_dev *pdev,
/* copy the MAC address out of the EEPROM */ /* copy the MAC address out of the EEPROM */
if(e1000_read_mac_addr(&adapter->hw)) if (e1000_read_mac_addr(&adapter->hw))
DPRINTK(PROBE, ERR, "EEPROM Read Error\n"); DPRINTK(PROBE, ERR, "EEPROM Read Error\n");
memcpy(netdev->dev_addr, adapter->hw.mac_addr, netdev->addr_len); memcpy(netdev->dev_addr, adapter->hw.mac_addr, netdev->addr_len);
memcpy(netdev->perm_addr, adapter->hw.mac_addr, netdev->addr_len); memcpy(netdev->perm_addr, adapter->hw.mac_addr, netdev->addr_len);
if(!is_valid_ether_addr(netdev->perm_addr)) { if (!is_valid_ether_addr(netdev->perm_addr)) {
DPRINTK(PROBE, ERR, "Invalid MAC Address\n"); DPRINTK(PROBE, ERR, "Invalid MAC Address\n");
err = -EIO; err = -EIO;
goto err_eeprom; goto err_eeprom;
...@@ -781,7 +781,7 @@ e1000_probe(struct pci_dev *pdev, ...@@ -781,7 +781,7 @@ e1000_probe(struct pci_dev *pdev,
* enable the ACPI Magic Packet filter * enable the ACPI Magic Packet filter
*/ */
switch(adapter->hw.mac_type) { switch (adapter->hw.mac_type) {
case e1000_82542_rev2_0: case e1000_82542_rev2_0:
case e1000_82542_rev2_1: case e1000_82542_rev2_1:
case e1000_82543: case e1000_82543:
...@@ -794,7 +794,7 @@ e1000_probe(struct pci_dev *pdev, ...@@ -794,7 +794,7 @@ e1000_probe(struct pci_dev *pdev,
case e1000_82546: case e1000_82546:
case e1000_82546_rev_3: case e1000_82546_rev_3:
case e1000_82571: case e1000_82571:
if(E1000_READ_REG(&adapter->hw, STATUS) & E1000_STATUS_FUNC_1){ if (E1000_READ_REG(&adapter->hw, STATUS) & E1000_STATUS_FUNC_1){
e1000_read_eeprom(&adapter->hw, e1000_read_eeprom(&adapter->hw,
EEPROM_INIT_CONTROL3_PORT_B, 1, &eeprom_data); EEPROM_INIT_CONTROL3_PORT_B, 1, &eeprom_data);
break; break;
...@@ -805,7 +805,7 @@ e1000_probe(struct pci_dev *pdev, ...@@ -805,7 +805,7 @@ e1000_probe(struct pci_dev *pdev,
EEPROM_INIT_CONTROL3_PORT_A, 1, &eeprom_data); EEPROM_INIT_CONTROL3_PORT_A, 1, &eeprom_data);
break; break;
} }
if(eeprom_data & eeprom_apme_mask) if (eeprom_data & eeprom_apme_mask)
adapter->wol |= E1000_WUFC_MAG; adapter->wol |= E1000_WUFC_MAG;
/* print bus type/speed/width info */ /* print bus type/speed/width info */
...@@ -840,7 +840,7 @@ e1000_probe(struct pci_dev *pdev, ...@@ -840,7 +840,7 @@ e1000_probe(struct pci_dev *pdev,
e1000_get_hw_control(adapter); e1000_get_hw_control(adapter);
strcpy(netdev->name, "eth%d"); strcpy(netdev->name, "eth%d");
if((err = register_netdev(netdev))) if ((err = register_netdev(netdev)))
goto err_register; goto err_register;
DPRINTK(PROBE, INFO, "Intel(R) PRO/1000 Network Connection\n"); DPRINTK(PROBE, INFO, "Intel(R) PRO/1000 Network Connection\n");
...@@ -881,10 +881,10 @@ e1000_remove(struct pci_dev *pdev) ...@@ -881,10 +881,10 @@ e1000_remove(struct pci_dev *pdev)
flush_scheduled_work(); flush_scheduled_work();
if(adapter->hw.mac_type >= e1000_82540 && if (adapter->hw.mac_type >= e1000_82540 &&
adapter->hw.media_type == e1000_media_type_copper) { adapter->hw.media_type == e1000_media_type_copper) {
manc = E1000_READ_REG(&adapter->hw, MANC); manc = E1000_READ_REG(&adapter->hw, MANC);
if(manc & E1000_MANC_SMBUS_EN) { if (manc & E1000_MANC_SMBUS_EN) {
manc |= E1000_MANC_ARP_EN; manc |= E1000_MANC_ARP_EN;
E1000_WRITE_REG(&adapter->hw, MANC, manc); E1000_WRITE_REG(&adapter->hw, MANC, manc);
} }
...@@ -900,7 +900,7 @@ e1000_remove(struct pci_dev *pdev) ...@@ -900,7 +900,7 @@ e1000_remove(struct pci_dev *pdev)
__dev_put(&adapter->polling_netdev[i]); __dev_put(&adapter->polling_netdev[i]);
#endif #endif
if(!e1000_check_phy_reset_block(&adapter->hw)) if (!e1000_check_phy_reset_block(&adapter->hw))
e1000_phy_hw_reset(&adapter->hw); e1000_phy_hw_reset(&adapter->hw);
kfree(adapter->tx_ring); kfree(adapter->tx_ring);
...@@ -959,19 +959,19 @@ e1000_sw_init(struct e1000_adapter *adapter) ...@@ -959,19 +959,19 @@ e1000_sw_init(struct e1000_adapter *adapter)
/* identify the MAC */ /* identify the MAC */
if(e1000_set_mac_type(hw)) { if (e1000_set_mac_type(hw)) {
DPRINTK(PROBE, ERR, "Unknown MAC Type\n"); DPRINTK(PROBE, ERR, "Unknown MAC Type\n");
return -EIO; return -EIO;
} }
/* initialize eeprom parameters */ /* initialize eeprom parameters */
if(e1000_init_eeprom_params(hw)) { if (e1000_init_eeprom_params(hw)) {
E1000_ERR("EEPROM initialization failed\n"); E1000_ERR("EEPROM initialization failed\n");
return -EIO; return -EIO;
} }
switch(hw->mac_type) { switch (hw->mac_type) {
default: default:
break; break;
case e1000_82541: case e1000_82541:
...@@ -990,7 +990,7 @@ e1000_sw_init(struct e1000_adapter *adapter) ...@@ -990,7 +990,7 @@ e1000_sw_init(struct e1000_adapter *adapter)
/* Copper options */ /* Copper options */
if(hw->media_type == e1000_media_type_copper) { if (hw->media_type == e1000_media_type_copper) {
hw->mdix = AUTO_ALL_MODES; hw->mdix = AUTO_ALL_MODES;
hw->disable_polarity_correction = FALSE; hw->disable_polarity_correction = FALSE;
hw->master_slave = E1000_MASTER_SLAVE; hw->master_slave = E1000_MASTER_SLAVE;
...@@ -1166,10 +1166,10 @@ e1000_open(struct net_device *netdev) ...@@ -1166,10 +1166,10 @@ e1000_open(struct net_device *netdev)
if ((err = e1000_setup_all_rx_resources(adapter))) if ((err = e1000_setup_all_rx_resources(adapter)))
goto err_setup_rx; goto err_setup_rx;
if((err = e1000_up(adapter))) if ((err = e1000_up(adapter)))
goto err_up; goto err_up;
adapter->mng_vlan_id = E1000_MNG_VLAN_NONE; adapter->mng_vlan_id = E1000_MNG_VLAN_NONE;
if((adapter->hw.mng_cookie.status & if ((adapter->hw.mng_cookie.status &
E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT)) { E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT)) {
e1000_update_mng_vlan(adapter); e1000_update_mng_vlan(adapter);
} }
...@@ -1214,7 +1214,7 @@ e1000_close(struct net_device *netdev) ...@@ -1214,7 +1214,7 @@ e1000_close(struct net_device *netdev)
e1000_free_all_tx_resources(adapter); e1000_free_all_tx_resources(adapter);
e1000_free_all_rx_resources(adapter); e1000_free_all_rx_resources(adapter);
if((adapter->hw.mng_cookie.status & if ((adapter->hw.mng_cookie.status &
E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT)) { E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT)) {
e1000_vlan_rx_kill_vid(netdev, adapter->mng_vlan_id); e1000_vlan_rx_kill_vid(netdev, adapter->mng_vlan_id);
} }
...@@ -1269,7 +1269,7 @@ e1000_setup_tx_resources(struct e1000_adapter *adapter, ...@@ -1269,7 +1269,7 @@ e1000_setup_tx_resources(struct e1000_adapter *adapter,
size = sizeof(struct e1000_buffer) * txdr->count; size = sizeof(struct e1000_buffer) * txdr->count;
txdr->buffer_info = vmalloc_node(size, pcibus_to_node(pdev->bus)); txdr->buffer_info = vmalloc_node(size, pcibus_to_node(pdev->bus));
if(!txdr->buffer_info) { if (!txdr->buffer_info) {
DPRINTK(PROBE, ERR, DPRINTK(PROBE, ERR,
"Unable to allocate memory for the transmit descriptor ring\n"); "Unable to allocate memory for the transmit descriptor ring\n");
return -ENOMEM; return -ENOMEM;
...@@ -1282,7 +1282,7 @@ e1000_setup_tx_resources(struct e1000_adapter *adapter, ...@@ -1282,7 +1282,7 @@ e1000_setup_tx_resources(struct e1000_adapter *adapter,
E1000_ROUNDUP(txdr->size, 4096); E1000_ROUNDUP(txdr->size, 4096);
txdr->desc = pci_alloc_consistent(pdev, txdr->size, &txdr->dma); txdr->desc = pci_alloc_consistent(pdev, txdr->size, &txdr->dma);
if(!txdr->desc) { if (!txdr->desc) {
setup_tx_desc_die: setup_tx_desc_die:
vfree(txdr->buffer_info); vfree(txdr->buffer_info);
DPRINTK(PROBE, ERR, DPRINTK(PROBE, ERR,
...@@ -1298,8 +1298,8 @@ e1000_setup_tx_resources(struct e1000_adapter *adapter, ...@@ -1298,8 +1298,8 @@ e1000_setup_tx_resources(struct e1000_adapter *adapter,
"at %p\n", txdr->size, txdr->desc); "at %p\n", txdr->size, txdr->desc);
/* Try again, without freeing the previous */ /* Try again, without freeing the previous */
txdr->desc = pci_alloc_consistent(pdev, txdr->size, &txdr->dma); txdr->desc = pci_alloc_consistent(pdev, txdr->size, &txdr->dma);
if(!txdr->desc) {
/* Failed allocation, critical failure */ /* Failed allocation, critical failure */
if (!txdr->desc) {
pci_free_consistent(pdev, txdr->size, olddesc, olddma); pci_free_consistent(pdev, txdr->size, olddesc, olddma);
goto setup_tx_desc_die; goto setup_tx_desc_die;
} }
...@@ -1499,7 +1499,7 @@ e1000_setup_rx_resources(struct e1000_adapter *adapter, ...@@ -1499,7 +1499,7 @@ e1000_setup_rx_resources(struct e1000_adapter *adapter,
size = sizeof(struct e1000_ps_page) * rxdr->count; size = sizeof(struct e1000_ps_page) * rxdr->count;
rxdr->ps_page = kmalloc(size, GFP_KERNEL); rxdr->ps_page = kmalloc(size, GFP_KERNEL);
if(!rxdr->ps_page) { if (!rxdr->ps_page) {
vfree(rxdr->buffer_info); vfree(rxdr->buffer_info);
DPRINTK(PROBE, ERR, DPRINTK(PROBE, ERR,
"Unable to allocate memory for the receive descriptor ring\n"); "Unable to allocate memory for the receive descriptor ring\n");
...@@ -1509,7 +1509,7 @@ e1000_setup_rx_resources(struct e1000_adapter *adapter, ...@@ -1509,7 +1509,7 @@ e1000_setup_rx_resources(struct e1000_adapter *adapter,
size = sizeof(struct e1000_ps_page_dma) * rxdr->count; size = sizeof(struct e1000_ps_page_dma) * rxdr->count;
rxdr->ps_page_dma = kmalloc(size, GFP_KERNEL); rxdr->ps_page_dma = kmalloc(size, GFP_KERNEL);
if(!rxdr->ps_page_dma) { if (!rxdr->ps_page_dma) {
vfree(rxdr->buffer_info); vfree(rxdr->buffer_info);
kfree(rxdr->ps_page); kfree(rxdr->ps_page);
DPRINTK(PROBE, ERR, DPRINTK(PROBE, ERR,
...@@ -1518,7 +1518,7 @@ e1000_setup_rx_resources(struct e1000_adapter *adapter, ...@@ -1518,7 +1518,7 @@ e1000_setup_rx_resources(struct e1000_adapter *adapter,
} }
memset(rxdr->ps_page_dma, 0, size); memset(rxdr->ps_page_dma, 0, size);
if(adapter->hw.mac_type <= e1000_82547_rev_2) if (adapter->hw.mac_type <= e1000_82547_rev_2)
desc_len = sizeof(struct e1000_rx_desc); desc_len = sizeof(struct e1000_rx_desc);
else else
desc_len = sizeof(union e1000_rx_desc_packet_split); desc_len = sizeof(union e1000_rx_desc_packet_split);
...@@ -1647,7 +1647,7 @@ e1000_setup_rctl(struct e1000_adapter *adapter) ...@@ -1647,7 +1647,7 @@ e1000_setup_rctl(struct e1000_adapter *adapter)
rctl |= E1000_RCTL_LPE; rctl |= E1000_RCTL_LPE;
/* Setup buffer sizes */ /* Setup buffer sizes */
if(adapter->hw.mac_type >= e1000_82571) { if (adapter->hw.mac_type >= e1000_82571) {
/* We can now specify buffers in 1K increments. /* We can now specify buffers in 1K increments.
* BSIZE and BSEX are ignored in this case. */ * BSIZE and BSEX are ignored in this case. */
rctl |= adapter->rx_buffer_len << 0x11; rctl |= adapter->rx_buffer_len << 0x11;
...@@ -1681,7 +1681,7 @@ e1000_setup_rctl(struct e1000_adapter *adapter) ...@@ -1681,7 +1681,7 @@ e1000_setup_rctl(struct e1000_adapter *adapter)
E1000_WRITE_REG(&adapter->hw, RFCTL, rfctl); E1000_WRITE_REG(&adapter->hw, RFCTL, rfctl);
rctl |= E1000_RCTL_DTYP_PS | E1000_RCTL_SECRC; rctl |= E1000_RCTL_DTYP_PS | E1000_RCTL_SECRC;
psrctl |= adapter->rx_ps_bsize0 >> psrctl |= adapter->rx_ps_bsize0 >>
E1000_PSRCTL_BSIZE0_SHIFT; E1000_PSRCTL_BSIZE0_SHIFT;
...@@ -1743,7 +1743,7 @@ e1000_configure_rx(struct e1000_adapter *adapter) ...@@ -1743,7 +1743,7 @@ e1000_configure_rx(struct e1000_adapter *adapter)
if (hw->mac_type >= e1000_82540) { if (hw->mac_type >= e1000_82540) {
E1000_WRITE_REG(hw, RADV, adapter->rx_abs_int_delay); E1000_WRITE_REG(hw, RADV, adapter->rx_abs_int_delay);
if(adapter->itr > 1) if (adapter->itr > 1)
E1000_WRITE_REG(hw, ITR, E1000_WRITE_REG(hw, ITR,
1000000000 / (adapter->itr * 256)); 1000000000 / (adapter->itr * 256));
} }
...@@ -1832,13 +1832,13 @@ e1000_configure_rx(struct e1000_adapter *adapter) ...@@ -1832,13 +1832,13 @@ e1000_configure_rx(struct e1000_adapter *adapter)
/* Enable 82543 Receive Checksum Offload for TCP and UDP */ /* Enable 82543 Receive Checksum Offload for TCP and UDP */
if (hw->mac_type >= e1000_82543) { if (hw->mac_type >= e1000_82543) {
rxcsum = E1000_READ_REG(hw, RXCSUM); rxcsum = E1000_READ_REG(hw, RXCSUM);
if(adapter->rx_csum == TRUE) { if (adapter->rx_csum == TRUE) {
rxcsum |= E1000_RXCSUM_TUOFL; rxcsum |= E1000_RXCSUM_TUOFL;
/* Enable 82571 IPv4 payload checksum for UDP fragments /* Enable 82571 IPv4 payload checksum for UDP fragments
* Must be used in conjunction with packet-split. */ * Must be used in conjunction with packet-split. */
if ((hw->mac_type >= e1000_82571) && if ((hw->mac_type >= e1000_82571) &&
(adapter->rx_ps_pages)) { (adapter->rx_ps_pages)) {
rxcsum |= E1000_RXCSUM_IPPCSE; rxcsum |= E1000_RXCSUM_IPPCSE;
} }
} else { } else {
...@@ -1900,7 +1900,7 @@ static inline void ...@@ -1900,7 +1900,7 @@ static inline void
e1000_unmap_and_free_tx_resource(struct e1000_adapter *adapter, e1000_unmap_and_free_tx_resource(struct e1000_adapter *adapter,
struct e1000_buffer *buffer_info) struct e1000_buffer *buffer_info)
{ {
if(buffer_info->dma) { if (buffer_info->dma) {
pci_unmap_page(adapter->pdev, pci_unmap_page(adapter->pdev,
buffer_info->dma, buffer_info->dma,
buffer_info->length, buffer_info->length,
...@@ -1927,7 +1927,7 @@ e1000_clean_tx_ring(struct e1000_adapter *adapter, ...@@ -1927,7 +1927,7 @@ e1000_clean_tx_ring(struct e1000_adapter *adapter,
/* Free all the Tx ring sk_buffs */ /* Free all the Tx ring sk_buffs */
for(i = 0; i < tx_ring->count; i++) { for (i = 0; i < tx_ring->count; i++) {
buffer_info = &tx_ring->buffer_info[i]; buffer_info = &tx_ring->buffer_info[i];
e1000_unmap_and_free_tx_resource(adapter, buffer_info); e1000_unmap_and_free_tx_resource(adapter, buffer_info);
} }
...@@ -2023,10 +2023,9 @@ e1000_clean_rx_ring(struct e1000_adapter *adapter, ...@@ -2023,10 +2023,9 @@ e1000_clean_rx_ring(struct e1000_adapter *adapter,
unsigned int i, j; unsigned int i, j;
/* Free all the Rx ring sk_buffs */ /* Free all the Rx ring sk_buffs */
for (i = 0; i < rx_ring->count; i++) {
for(i = 0; i < rx_ring->count; i++) {
buffer_info = &rx_ring->buffer_info[i]; buffer_info = &rx_ring->buffer_info[i];
if(buffer_info->skb) { if (buffer_info->skb) {
pci_unmap_single(pdev, pci_unmap_single(pdev,
buffer_info->dma, buffer_info->dma,
buffer_info->length, buffer_info->length,
...@@ -2107,7 +2106,7 @@ e1000_enter_82542_rst(struct e1000_adapter *adapter) ...@@ -2107,7 +2106,7 @@ e1000_enter_82542_rst(struct e1000_adapter *adapter)
E1000_WRITE_FLUSH(&adapter->hw); E1000_WRITE_FLUSH(&adapter->hw);
mdelay(5); mdelay(5);
if(netif_running(netdev)) if (netif_running(netdev))
e1000_clean_all_rx_rings(adapter); e1000_clean_all_rx_rings(adapter);
} }
...@@ -2123,10 +2122,10 @@ e1000_leave_82542_rst(struct e1000_adapter *adapter) ...@@ -2123,10 +2122,10 @@ e1000_leave_82542_rst(struct e1000_adapter *adapter)
E1000_WRITE_FLUSH(&adapter->hw); E1000_WRITE_FLUSH(&adapter->hw);
mdelay(5); mdelay(5);
if(adapter->hw.pci_cmd_word & PCI_COMMAND_INVALIDATE) if (adapter->hw.pci_cmd_word & PCI_COMMAND_INVALIDATE)
e1000_pci_set_mwi(&adapter->hw); e1000_pci_set_mwi(&adapter->hw);
if(netif_running(netdev)) { if (netif_running(netdev)) {
e1000_configure_rx(adapter); e1000_configure_rx(adapter);
/* No need to loop, because 82542 supports only 1 queue */ /* No need to loop, because 82542 supports only 1 queue */
struct e1000_rx_ring *ring = &adapter->rx_ring[0]; struct e1000_rx_ring *ring = &adapter->rx_ring[0];
...@@ -2148,12 +2147,12 @@ e1000_set_mac(struct net_device *netdev, void *p) ...@@ -2148,12 +2147,12 @@ e1000_set_mac(struct net_device *netdev, void *p)
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
struct sockaddr *addr = p; struct sockaddr *addr = p;
if(!is_valid_ether_addr(addr->sa_data)) if (!is_valid_ether_addr(addr->sa_data))
return -EADDRNOTAVAIL; return -EADDRNOTAVAIL;
/* 82542 2.0 needs to be in reset to write receive address registers */ /* 82542 2.0 needs to be in reset to write receive address registers */
if(adapter->hw.mac_type == e1000_82542_rev2_0) if (adapter->hw.mac_type == e1000_82542_rev2_0)
e1000_enter_82542_rst(adapter); e1000_enter_82542_rst(adapter);
memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
...@@ -2167,17 +2166,17 @@ e1000_set_mac(struct net_device *netdev, void *p) ...@@ -2167,17 +2166,17 @@ e1000_set_mac(struct net_device *netdev, void *p)
/* activate the work around */ /* activate the work around */
adapter->hw.laa_is_present = 1; adapter->hw.laa_is_present = 1;
/* Hold a copy of the LAA in RAR[14] This is done so that /* Hold a copy of the LAA in RAR[14] This is done so that
* between the time RAR[0] gets clobbered and the time it * between the time RAR[0] gets clobbered and the time it
* gets fixed (in e1000_watchdog), the actual LAA is in one * gets fixed (in e1000_watchdog), the actual LAA is in one
* of the RARs and no incoming packets directed to this port * of the RARs and no incoming packets directed to this port
* are dropped. Eventaully the LAA will be in RAR[0] and * are dropped. Eventaully the LAA will be in RAR[0] and
* RAR[14] */ * RAR[14] */
e1000_rar_set(&adapter->hw, adapter->hw.mac_addr, e1000_rar_set(&adapter->hw, adapter->hw.mac_addr,
E1000_RAR_ENTRIES - 1); E1000_RAR_ENTRIES - 1);
} }
if(adapter->hw.mac_type == e1000_82542_rev2_0) if (adapter->hw.mac_type == e1000_82542_rev2_0)
e1000_leave_82542_rst(adapter); e1000_leave_82542_rst(adapter);
return 0; return 0;
...@@ -2211,9 +2210,9 @@ e1000_set_multi(struct net_device *netdev) ...@@ -2211,9 +2210,9 @@ e1000_set_multi(struct net_device *netdev)
rctl = E1000_READ_REG(hw, RCTL); rctl = E1000_READ_REG(hw, RCTL);
if(netdev->flags & IFF_PROMISC) { if (netdev->flags & IFF_PROMISC) {
rctl |= (E1000_RCTL_UPE | E1000_RCTL_MPE); rctl |= (E1000_RCTL_UPE | E1000_RCTL_MPE);
} else if(netdev->flags & IFF_ALLMULTI) { } else if (netdev->flags & IFF_ALLMULTI) {
rctl |= E1000_RCTL_MPE; rctl |= E1000_RCTL_MPE;
rctl &= ~E1000_RCTL_UPE; rctl &= ~E1000_RCTL_UPE;
} else { } else {
...@@ -2224,7 +2223,7 @@ e1000_set_multi(struct net_device *netdev) ...@@ -2224,7 +2223,7 @@ e1000_set_multi(struct net_device *netdev)
/* 82542 2.0 needs to be in reset to write receive address registers */ /* 82542 2.0 needs to be in reset to write receive address registers */
if(hw->mac_type == e1000_82542_rev2_0) if (hw->mac_type == e1000_82542_rev2_0)
e1000_enter_82542_rst(adapter); e1000_enter_82542_rst(adapter);
/* load the first 14 multicast address into the exact filters 1-14 /* load the first 14 multicast address into the exact filters 1-14
...@@ -2234,7 +2233,7 @@ e1000_set_multi(struct net_device *netdev) ...@@ -2234,7 +2233,7 @@ e1000_set_multi(struct net_device *netdev)
*/ */
mc_ptr = netdev->mc_list; mc_ptr = netdev->mc_list;
for(i = 1; i < rar_entries; i++) { for (i = 1; i < rar_entries; i++) {
if (mc_ptr) { if (mc_ptr) {
e1000_rar_set(hw, mc_ptr->dmi_addr, i); e1000_rar_set(hw, mc_ptr->dmi_addr, i);
mc_ptr = mc_ptr->next; mc_ptr = mc_ptr->next;
...@@ -2246,17 +2245,17 @@ e1000_set_multi(struct net_device *netdev) ...@@ -2246,17 +2245,17 @@ e1000_set_multi(struct net_device *netdev)
/* clear the old settings from the multicast hash table */ /* clear the old settings from the multicast hash table */
for(i = 0; i < E1000_NUM_MTA_REGISTERS; i++) for (i = 0; i < E1000_NUM_MTA_REGISTERS; i++)
E1000_WRITE_REG_ARRAY(hw, MTA, i, 0); E1000_WRITE_REG_ARRAY(hw, MTA, i, 0);
/* load any remaining addresses into the hash table */ /* load any remaining addresses into the hash table */
for(; mc_ptr; mc_ptr = mc_ptr->next) { for (; mc_ptr; mc_ptr = mc_ptr->next) {
hash_value = e1000_hash_mc_addr(hw, mc_ptr->dmi_addr); hash_value = e1000_hash_mc_addr(hw, mc_ptr->dmi_addr);
e1000_mta_set(hw, hash_value); e1000_mta_set(hw, hash_value);
} }
if(hw->mac_type == e1000_82542_rev2_0) if (hw->mac_type == e1000_82542_rev2_0)
e1000_leave_82542_rst(adapter); e1000_leave_82542_rst(adapter);
} }
...@@ -2282,8 +2281,8 @@ e1000_82547_tx_fifo_stall(unsigned long data) ...@@ -2282,8 +2281,8 @@ e1000_82547_tx_fifo_stall(unsigned long data)
struct net_device *netdev = adapter->netdev; struct net_device *netdev = adapter->netdev;
uint32_t tctl; uint32_t tctl;
if(atomic_read(&adapter->tx_fifo_stall)) { if (atomic_read(&adapter->tx_fifo_stall)) {
if((E1000_READ_REG(&adapter->hw, TDT) == if ((E1000_READ_REG(&adapter->hw, TDT) ==
E1000_READ_REG(&adapter->hw, TDH)) && E1000_READ_REG(&adapter->hw, TDH)) &&
(E1000_READ_REG(&adapter->hw, TDFT) == (E1000_READ_REG(&adapter->hw, TDFT) ==
E1000_READ_REG(&adapter->hw, TDFH)) && E1000_READ_REG(&adapter->hw, TDFH)) &&
...@@ -2335,18 +2334,18 @@ e1000_watchdog_task(struct e1000_adapter *adapter) ...@@ -2335,18 +2334,18 @@ e1000_watchdog_task(struct e1000_adapter *adapter)
e1000_check_for_link(&adapter->hw); e1000_check_for_link(&adapter->hw);
if (adapter->hw.mac_type == e1000_82573) { if (adapter->hw.mac_type == e1000_82573) {
e1000_enable_tx_pkt_filtering(&adapter->hw); e1000_enable_tx_pkt_filtering(&adapter->hw);
if(adapter->mng_vlan_id != adapter->hw.mng_cookie.vlan_id) if (adapter->mng_vlan_id != adapter->hw.mng_cookie.vlan_id)
e1000_update_mng_vlan(adapter); e1000_update_mng_vlan(adapter);
} }
if((adapter->hw.media_type == e1000_media_type_internal_serdes) && if ((adapter->hw.media_type == e1000_media_type_internal_serdes) &&
!(E1000_READ_REG(&adapter->hw, TXCW) & E1000_TXCW_ANE)) !(E1000_READ_REG(&adapter->hw, TXCW) & E1000_TXCW_ANE))
link = !adapter->hw.serdes_link_down; link = !adapter->hw.serdes_link_down;
else else
link = E1000_READ_REG(&adapter->hw, STATUS) & E1000_STATUS_LU; link = E1000_READ_REG(&adapter->hw, STATUS) & E1000_STATUS_LU;
if(link) { if (link) {
if(!netif_carrier_ok(netdev)) { if (!netif_carrier_ok(netdev)) {
e1000_get_speed_and_duplex(&adapter->hw, e1000_get_speed_and_duplex(&adapter->hw,
&adapter->link_speed, &adapter->link_speed,
&adapter->link_duplex); &adapter->link_duplex);
...@@ -2377,7 +2376,7 @@ e1000_watchdog_task(struct e1000_adapter *adapter) ...@@ -2377,7 +2376,7 @@ e1000_watchdog_task(struct e1000_adapter *adapter)
adapter->smartspeed = 0; adapter->smartspeed = 0;
} }
} else { } else {
if(netif_carrier_ok(netdev)) { if (netif_carrier_ok(netdev)) {
adapter->link_speed = 0; adapter->link_speed = 0;
adapter->link_duplex = 0; adapter->link_duplex = 0;
DPRINTK(LINK, INFO, "NIC Link is Down\n"); DPRINTK(LINK, INFO, "NIC Link is Down\n");
...@@ -2417,12 +2416,12 @@ e1000_watchdog_task(struct e1000_adapter *adapter) ...@@ -2417,12 +2416,12 @@ e1000_watchdog_task(struct e1000_adapter *adapter)
} }
/* Dynamic mode for Interrupt Throttle Rate (ITR) */ /* Dynamic mode for Interrupt Throttle Rate (ITR) */
if(adapter->hw.mac_type >= e1000_82540 && adapter->itr == 1) { if (adapter->hw.mac_type >= e1000_82540 && adapter->itr == 1) {
/* Symmetric Tx/Rx gets a reduced ITR=2000; Total /* Symmetric Tx/Rx gets a reduced ITR=2000; Total
* asymmetrical Tx or Rx gets ITR=8000; everyone * asymmetrical Tx or Rx gets ITR=8000; everyone
* else is between 2000-8000. */ * else is between 2000-8000. */
uint32_t goc = (adapter->gotcl + adapter->gorcl) / 10000; uint32_t goc = (adapter->gotcl + adapter->gorcl) / 10000;
uint32_t dif = (adapter->gotcl > adapter->gorcl ? uint32_t dif = (adapter->gotcl > adapter->gorcl ?
adapter->gotcl - adapter->gorcl : adapter->gotcl - adapter->gorcl :
adapter->gorcl - adapter->gotcl) / 10000; adapter->gorcl - adapter->gotcl) / 10000;
uint32_t itr = goc > 0 ? (dif * 6000 / goc + 2000) : 8000; uint32_t itr = goc > 0 ? (dif * 6000 / goc + 2000) : 8000;
...@@ -2435,7 +2434,7 @@ e1000_watchdog_task(struct e1000_adapter *adapter) ...@@ -2435,7 +2434,7 @@ e1000_watchdog_task(struct e1000_adapter *adapter)
/* Force detection of hung controller every watchdog period */ /* Force detection of hung controller every watchdog period */
adapter->detect_tx_hung = TRUE; adapter->detect_tx_hung = TRUE;
/* With 82571 controllers, LAA may be overwritten due to controller /* With 82571 controllers, LAA may be overwritten due to controller
* reset from the other port. Set the appropriate LAA in RAR[0] */ * reset from the other port. Set the appropriate LAA in RAR[0] */
if (adapter->hw.mac_type == e1000_82571 && adapter->hw.laa_is_present) if (adapter->hw.mac_type == e1000_82571 && adapter->hw.laa_is_present)
e1000_rar_set(&adapter->hw, adapter->hw.mac_addr, 0); e1000_rar_set(&adapter->hw, adapter->hw.mac_addr, 0);
...@@ -2464,7 +2463,7 @@ e1000_tso(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2464,7 +2463,7 @@ e1000_tso(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
uint8_t ipcss, ipcso, tucss, tucso, hdr_len; uint8_t ipcss, ipcso, tucss, tucso, hdr_len;
int err; int err;
if(skb_shinfo(skb)->tso_size) { if (skb_shinfo(skb)->tso_size) {
if (skb_header_cloned(skb)) { if (skb_header_cloned(skb)) {
err = pskb_expand_head(skb, 0, 0, GFP_ATOMIC); err = pskb_expand_head(skb, 0, 0, GFP_ATOMIC);
if (err) if (err)
...@@ -2473,7 +2472,7 @@ e1000_tso(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2473,7 +2472,7 @@ e1000_tso(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
hdr_len = ((skb->h.raw - skb->data) + (skb->h.th->doff << 2)); hdr_len = ((skb->h.raw - skb->data) + (skb->h.th->doff << 2));
mss = skb_shinfo(skb)->tso_size; mss = skb_shinfo(skb)->tso_size;
if(skb->protocol == ntohs(ETH_P_IP)) { if (skb->protocol == ntohs(ETH_P_IP)) {
skb->nh.iph->tot_len = 0; skb->nh.iph->tot_len = 0;
skb->nh.iph->check = 0; skb->nh.iph->check = 0;
skb->h.th->check = skb->h.th->check =
...@@ -2485,7 +2484,7 @@ e1000_tso(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2485,7 +2484,7 @@ e1000_tso(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
cmd_length = E1000_TXD_CMD_IP; cmd_length = E1000_TXD_CMD_IP;
ipcse = skb->h.raw - skb->data - 1; ipcse = skb->h.raw - skb->data - 1;
#ifdef NETIF_F_TSO_IPV6 #ifdef NETIF_F_TSO_IPV6
} else if(skb->protocol == ntohs(ETH_P_IPV6)) { } else if (skb->protocol == ntohs(ETH_P_IPV6)) {
skb->nh.ipv6h->payload_len = 0; skb->nh.ipv6h->payload_len = 0;
skb->h.th->check = skb->h.th->check =
~csum_ipv6_magic(&skb->nh.ipv6h->saddr, ~csum_ipv6_magic(&skb->nh.ipv6h->saddr,
...@@ -2540,7 +2539,7 @@ e1000_tx_csum(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2540,7 +2539,7 @@ e1000_tx_csum(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
unsigned int i; unsigned int i;
uint8_t css; uint8_t css;
if(likely(skb->ip_summed == CHECKSUM_HW)) { if (likely(skb->ip_summed == CHECKSUM_HW)) {
css = skb->h.raw - skb->data; css = skb->h.raw - skb->data;
i = tx_ring->next_to_use; i = tx_ring->next_to_use;
...@@ -2580,7 +2579,7 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2580,7 +2579,7 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
i = tx_ring->next_to_use; i = tx_ring->next_to_use;
while(len) { while (len) {
buffer_info = &tx_ring->buffer_info[i]; buffer_info = &tx_ring->buffer_info[i];
size = min(len, max_per_txd); size = min(len, max_per_txd);
#ifdef NETIF_F_TSO #ifdef NETIF_F_TSO
...@@ -2596,7 +2595,7 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2596,7 +2595,7 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
/* Workaround for premature desc write-backs /* Workaround for premature desc write-backs
* in TSO mode. Append 4-byte sentinel desc */ * in TSO mode. Append 4-byte sentinel desc */
if(unlikely(mss && !nr_frags && size == len && size > 8)) if (unlikely(mss && !nr_frags && size == len && size > 8))
size -= 4; size -= 4;
#endif #endif
/* work-around for errata 10 and it applies /* work-around for errata 10 and it applies
...@@ -2604,13 +2603,13 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2604,13 +2603,13 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
* The fix is to make sure that the first descriptor of a * The fix is to make sure that the first descriptor of a
* packet is smaller than 2048 - 16 - 16 (or 2016) bytes * packet is smaller than 2048 - 16 - 16 (or 2016) bytes
*/ */
if(unlikely((adapter->hw.bus_type == e1000_bus_type_pcix) && if (unlikely((adapter->hw.bus_type == e1000_bus_type_pcix) &&
(size > 2015) && count == 0)) (size > 2015) && count == 0))
size = 2015; size = 2015;
/* Workaround for potential 82544 hang in PCI-X. Avoid /* Workaround for potential 82544 hang in PCI-X. Avoid
* terminating buffers within evenly-aligned dwords. */ * terminating buffers within evenly-aligned dwords. */
if(unlikely(adapter->pcix_82544 && if (unlikely(adapter->pcix_82544 &&
!((unsigned long)(skb->data + offset + size - 1) & 4) && !((unsigned long)(skb->data + offset + size - 1) & 4) &&
size > 4)) size > 4))
size -= 4; size -= 4;
...@@ -2626,29 +2625,29 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2626,29 +2625,29 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
len -= size; len -= size;
offset += size; offset += size;
count++; count++;
if(unlikely(++i == tx_ring->count)) i = 0; if (unlikely(++i == tx_ring->count)) i = 0;
} }
for(f = 0; f < nr_frags; f++) { for (f = 0; f < nr_frags; f++) {
struct skb_frag_struct *frag; struct skb_frag_struct *frag;
frag = &skb_shinfo(skb)->frags[f]; frag = &skb_shinfo(skb)->frags[f];
len = frag->size; len = frag->size;
offset = frag->page_offset; offset = frag->page_offset;
while(len) { while (len) {
buffer_info = &tx_ring->buffer_info[i]; buffer_info = &tx_ring->buffer_info[i];
size = min(len, max_per_txd); size = min(len, max_per_txd);
#ifdef NETIF_F_TSO #ifdef NETIF_F_TSO
/* Workaround for premature desc write-backs /* Workaround for premature desc write-backs
* in TSO mode. Append 4-byte sentinel desc */ * in TSO mode. Append 4-byte sentinel desc */
if(unlikely(mss && f == (nr_frags-1) && size == len && size > 8)) if (unlikely(mss && f == (nr_frags-1) && size == len && size > 8))
size -= 4; size -= 4;
#endif #endif
/* Workaround for potential 82544 hang in PCI-X. /* Workaround for potential 82544 hang in PCI-X.
* Avoid terminating buffers within evenly-aligned * Avoid terminating buffers within evenly-aligned
* dwords. */ * dwords. */
if(unlikely(adapter->pcix_82544 && if (unlikely(adapter->pcix_82544 &&
!((unsigned long)(frag->page+offset+size-1) & 4) && !((unsigned long)(frag->page+offset+size-1) & 4) &&
size > 4)) size > 4))
size -= 4; size -= 4;
...@@ -2665,7 +2664,7 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2665,7 +2664,7 @@ e1000_tx_map(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
len -= size; len -= size;
offset += size; offset += size;
count++; count++;
if(unlikely(++i == tx_ring->count)) i = 0; if (unlikely(++i == tx_ring->count)) i = 0;
} }
} }
...@@ -2685,35 +2684,35 @@ e1000_tx_queue(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring, ...@@ -2685,35 +2684,35 @@ e1000_tx_queue(struct e1000_adapter *adapter, struct e1000_tx_ring *tx_ring,
uint32_t txd_upper = 0, txd_lower = E1000_TXD_CMD_IFCS; uint32_t txd_upper = 0, txd_lower = E1000_TXD_CMD_IFCS;
unsigned int i; unsigned int i;
if(likely(tx_flags & E1000_TX_FLAGS_TSO)) { if (likely(tx_flags & E1000_TX_FLAGS_TSO)) {
txd_lower |= E1000_TXD_CMD_DEXT | E1000_TXD_DTYP_D | txd_lower |= E1000_TXD_CMD_DEXT | E1000_TXD_DTYP_D |
E1000_TXD_CMD_TSE; E1000_TXD_CMD_TSE;
txd_upper |= E1000_TXD_POPTS_TXSM << 8; txd_upper |= E1000_TXD_POPTS_TXSM << 8;
if(likely(tx_flags & E1000_TX_FLAGS_IPV4)) if (likely(tx_flags & E1000_TX_FLAGS_IPV4))
txd_upper |= E1000_TXD_POPTS_IXSM << 8; txd_upper |= E1000_TXD_POPTS_IXSM << 8;
} }
if(likely(tx_flags & E1000_TX_FLAGS_CSUM)) { if (likely(tx_flags & E1000_TX_FLAGS_CSUM)) {
txd_lower |= E1000_TXD_CMD_DEXT | E1000_TXD_DTYP_D; txd_lower |= E1000_TXD_CMD_DEXT | E1000_TXD_DTYP_D;
txd_upper |= E1000_TXD_POPTS_TXSM << 8; txd_upper |= E1000_TXD_POPTS_TXSM << 8;
} }
if(unlikely(tx_flags & E1000_TX_FLAGS_VLAN)) { if (unlikely(tx_flags & E1000_TX_FLAGS_VLAN)) {
txd_lower |= E1000_TXD_CMD_VLE; txd_lower |= E1000_TXD_CMD_VLE;
txd_upper |= (tx_flags & E1000_TX_FLAGS_VLAN_MASK); txd_upper |= (tx_flags & E1000_TX_FLAGS_VLAN_MASK);
} }
i = tx_ring->next_to_use; i = tx_ring->next_to_use;
while(count--) { while (count--) {
buffer_info = &tx_ring->buffer_info[i]; buffer_info = &tx_ring->buffer_info[i];
tx_desc = E1000_TX_DESC(*tx_ring, i); tx_desc = E1000_TX_DESC(*tx_ring, i);
tx_desc->buffer_addr = cpu_to_le64(buffer_info->dma); tx_desc->buffer_addr = cpu_to_le64(buffer_info->dma);
tx_desc->lower.data = tx_desc->lower.data =
cpu_to_le32(txd_lower | buffer_info->length); cpu_to_le32(txd_lower | buffer_info->length);
tx_desc->upper.data = cpu_to_le32(txd_upper); tx_desc->upper.data = cpu_to_le32(txd_upper);
if(unlikely(++i == tx_ring->count)) i = 0; if (unlikely(++i == tx_ring->count)) i = 0;
} }
tx_desc->lower.data |= cpu_to_le32(adapter->txd_cmd); tx_desc->lower.data |= cpu_to_le32(adapter->txd_cmd);
...@@ -2748,20 +2747,20 @@ e1000_82547_fifo_workaround(struct e1000_adapter *adapter, struct sk_buff *skb) ...@@ -2748,20 +2747,20 @@ e1000_82547_fifo_workaround(struct e1000_adapter *adapter, struct sk_buff *skb)
E1000_ROUNDUP(skb_fifo_len, E1000_FIFO_HDR); E1000_ROUNDUP(skb_fifo_len, E1000_FIFO_HDR);
if(adapter->link_duplex != HALF_DUPLEX) if (adapter->link_duplex != HALF_DUPLEX)
goto no_fifo_stall_required; goto no_fifo_stall_required;
if(atomic_read(&adapter->tx_fifo_stall)) if (atomic_read(&adapter->tx_fifo_stall))
return 1; return 1;
if(skb_fifo_len >= (E1000_82547_PAD_LEN + fifo_space)) { if (skb_fifo_len >= (E1000_82547_PAD_LEN + fifo_space)) {
atomic_set(&adapter->tx_fifo_stall, 1); atomic_set(&adapter->tx_fifo_stall, 1);
return 1; return 1;
} }
no_fifo_stall_required: no_fifo_stall_required:
adapter->tx_fifo_head += skb_fifo_len; adapter->tx_fifo_head += skb_fifo_len;
if(adapter->tx_fifo_head >= adapter->tx_fifo_size) if (adapter->tx_fifo_head >= adapter->tx_fifo_size)
adapter->tx_fifo_head -= adapter->tx_fifo_size; adapter->tx_fifo_head -= adapter->tx_fifo_size;
return 0; return 0;
} }
...@@ -2772,27 +2771,27 @@ e1000_transfer_dhcp_info(struct e1000_adapter *adapter, struct sk_buff *skb) ...@@ -2772,27 +2771,27 @@ e1000_transfer_dhcp_info(struct e1000_adapter *adapter, struct sk_buff *skb)
{ {
struct e1000_hw *hw = &adapter->hw; struct e1000_hw *hw = &adapter->hw;
uint16_t length, offset; uint16_t length, offset;
if(vlan_tx_tag_present(skb)) { if (vlan_tx_tag_present(skb)) {
if(!((vlan_tx_tag_get(skb) == adapter->hw.mng_cookie.vlan_id) && if (!((vlan_tx_tag_get(skb) == adapter->hw.mng_cookie.vlan_id) &&
( adapter->hw.mng_cookie.status & ( adapter->hw.mng_cookie.status &
E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT)) ) E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT)) )
return 0; return 0;
} }
if ((skb->len > MINIMUM_DHCP_PACKET_SIZE) && (!skb->protocol)) { if ((skb->len > MINIMUM_DHCP_PACKET_SIZE) && (!skb->protocol)) {
struct ethhdr *eth = (struct ethhdr *) skb->data; struct ethhdr *eth = (struct ethhdr *) skb->data;
if((htons(ETH_P_IP) == eth->h_proto)) { if ((htons(ETH_P_IP) == eth->h_proto)) {
const struct iphdr *ip = const struct iphdr *ip =
(struct iphdr *)((uint8_t *)skb->data+14); (struct iphdr *)((uint8_t *)skb->data+14);
if(IPPROTO_UDP == ip->protocol) { if (IPPROTO_UDP == ip->protocol) {
struct udphdr *udp = struct udphdr *udp =
(struct udphdr *)((uint8_t *)ip + (struct udphdr *)((uint8_t *)ip +
(ip->ihl << 2)); (ip->ihl << 2));
if(ntohs(udp->dest) == 67) { if (ntohs(udp->dest) == 67) {
offset = (uint8_t *)udp + 8 - skb->data; offset = (uint8_t *)udp + 8 - skb->data;
length = skb->len - offset; length = skb->len - offset;
return e1000_mng_write_dhcp_info(hw, return e1000_mng_write_dhcp_info(hw,
(uint8_t *)udp + 8, (uint8_t *)udp + 8,
length); length);
} }
} }
...@@ -2815,7 +2814,7 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev) ...@@ -2815,7 +2814,7 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
unsigned int nr_frags = 0; unsigned int nr_frags = 0;
unsigned int mss = 0; unsigned int mss = 0;
int count = 0; int count = 0;
int tso; int tso;
unsigned int f; unsigned int f;
len -= skb->data_len; len -= skb->data_len;
...@@ -2838,7 +2837,7 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev) ...@@ -2838,7 +2837,7 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
* 4 = ceil(buffer len/mss). To make sure we don't * 4 = ceil(buffer len/mss). To make sure we don't
* overrun the FIFO, adjust the max buffer len if mss * overrun the FIFO, adjust the max buffer len if mss
* drops. */ * drops. */
if(mss) { if (mss) {
uint8_t hdr_len; uint8_t hdr_len;
max_per_txd = min(mss << 2, max_per_txd); max_per_txd = min(mss << 2, max_per_txd);
max_txd_pwr = fls(max_per_txd) - 1; max_txd_pwr = fls(max_per_txd) - 1;
...@@ -2861,12 +2860,12 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev) ...@@ -2861,12 +2860,12 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
} }
} }
if((mss) || (skb->ip_summed == CHECKSUM_HW))
/* reserve a descriptor for the offload context */ /* reserve a descriptor for the offload context */
if ((mss) || (skb->ip_summed == CHECKSUM_HW))
count++; count++;
count++; count++;
#else #else
if(skb->ip_summed == CHECKSUM_HW) if (skb->ip_summed == CHECKSUM_HW)
count++; count++;
#endif #endif
...@@ -2879,24 +2878,24 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev) ...@@ -2879,24 +2878,24 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
count += TXD_USE_COUNT(len, max_txd_pwr); count += TXD_USE_COUNT(len, max_txd_pwr);
if(adapter->pcix_82544) if (adapter->pcix_82544)
count++; count++;
/* work-around for errata 10 and it applies to all controllers /* work-around for errata 10 and it applies to all controllers
* in PCI-X mode, so add one more descriptor to the count * in PCI-X mode, so add one more descriptor to the count
*/ */
if(unlikely((adapter->hw.bus_type == e1000_bus_type_pcix) && if (unlikely((adapter->hw.bus_type == e1000_bus_type_pcix) &&
(len > 2015))) (len > 2015)))
count++; count++;
nr_frags = skb_shinfo(skb)->nr_frags; nr_frags = skb_shinfo(skb)->nr_frags;
for(f = 0; f < nr_frags; f++) for (f = 0; f < nr_frags; f++)
count += TXD_USE_COUNT(skb_shinfo(skb)->frags[f].size, count += TXD_USE_COUNT(skb_shinfo(skb)->frags[f].size,
max_txd_pwr); max_txd_pwr);
if(adapter->pcix_82544) if (adapter->pcix_82544)
count += nr_frags; count += nr_frags;
if(adapter->hw.tx_pkt_filtering && (adapter->hw.mac_type == e1000_82573) ) if (adapter->hw.tx_pkt_filtering && (adapter->hw.mac_type == e1000_82573) )
e1000_transfer_dhcp_info(adapter, skb); e1000_transfer_dhcp_info(adapter, skb);
local_irq_save(flags); local_irq_save(flags);
...@@ -2914,8 +2913,8 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev) ...@@ -2914,8 +2913,8 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
return NETDEV_TX_BUSY; return NETDEV_TX_BUSY;
} }
if(unlikely(adapter->hw.mac_type == e1000_82547)) { if (unlikely(adapter->hw.mac_type == e1000_82547)) {
if(unlikely(e1000_82547_fifo_workaround(adapter, skb))) { if (unlikely(e1000_82547_fifo_workaround(adapter, skb))) {
netif_stop_queue(netdev); netif_stop_queue(netdev);
mod_timer(&adapter->tx_fifo_stall_timer, jiffies); mod_timer(&adapter->tx_fifo_stall_timer, jiffies);
spin_unlock_irqrestore(&tx_ring->tx_lock, flags); spin_unlock_irqrestore(&tx_ring->tx_lock, flags);
...@@ -2923,13 +2922,13 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev) ...@@ -2923,13 +2922,13 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
} }
} }
if(unlikely(adapter->vlgrp && vlan_tx_tag_present(skb))) { if (unlikely(adapter->vlgrp && vlan_tx_tag_present(skb))) {
tx_flags |= E1000_TX_FLAGS_VLAN; tx_flags |= E1000_TX_FLAGS_VLAN;
tx_flags |= (vlan_tx_tag_get(skb) << E1000_TX_FLAGS_VLAN_SHIFT); tx_flags |= (vlan_tx_tag_get(skb) << E1000_TX_FLAGS_VLAN_SHIFT);
} }
first = tx_ring->next_to_use; first = tx_ring->next_to_use;
tso = e1000_tso(adapter, tx_ring, skb); tso = e1000_tso(adapter, tx_ring, skb);
if (tso < 0) { if (tso < 0) {
dev_kfree_skb_any(skb); dev_kfree_skb_any(skb);
...@@ -3018,9 +3017,9 @@ e1000_change_mtu(struct net_device *netdev, int new_mtu) ...@@ -3018,9 +3017,9 @@ e1000_change_mtu(struct net_device *netdev, int new_mtu)
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
int max_frame = new_mtu + ENET_HEADER_SIZE + ETHERNET_FCS_SIZE; int max_frame = new_mtu + ENET_HEADER_SIZE + ETHERNET_FCS_SIZE;
if((max_frame < MINIMUM_ETHERNET_FRAME_SIZE) || if ((max_frame < MINIMUM_ETHERNET_FRAME_SIZE) ||
(max_frame > MAX_JUMBO_FRAME_SIZE)) { (max_frame > MAX_JUMBO_FRAME_SIZE)) {
DPRINTK(PROBE, ERR, "Invalid MTU setting\n"); DPRINTK(PROBE, ERR, "Invalid MTU setting\n");
return -EINVAL; return -EINVAL;
} }
...@@ -3068,7 +3067,7 @@ e1000_change_mtu(struct net_device *netdev, int new_mtu) ...@@ -3068,7 +3067,7 @@ e1000_change_mtu(struct net_device *netdev, int new_mtu)
netdev->mtu = new_mtu; netdev->mtu = new_mtu;
if(netif_running(netdev)) { if (netif_running(netdev)) {
e1000_down(adapter); e1000_down(adapter);
e1000_up(adapter); e1000_up(adapter);
} }
...@@ -3155,7 +3154,7 @@ e1000_update_stats(struct e1000_adapter *adapter) ...@@ -3155,7 +3154,7 @@ e1000_update_stats(struct e1000_adapter *adapter)
hw->collision_delta = E1000_READ_REG(hw, COLC); hw->collision_delta = E1000_READ_REG(hw, COLC);
adapter->stats.colc += hw->collision_delta; adapter->stats.colc += hw->collision_delta;
if(hw->mac_type >= e1000_82543) { if (hw->mac_type >= e1000_82543) {
adapter->stats.algnerrc += E1000_READ_REG(hw, ALGNERRC); adapter->stats.algnerrc += E1000_READ_REG(hw, ALGNERRC);
adapter->stats.rxerrc += E1000_READ_REG(hw, RXERRC); adapter->stats.rxerrc += E1000_READ_REG(hw, RXERRC);
adapter->stats.tncrs += E1000_READ_REG(hw, TNCRS); adapter->stats.tncrs += E1000_READ_REG(hw, TNCRS);
...@@ -3163,7 +3162,7 @@ e1000_update_stats(struct e1000_adapter *adapter) ...@@ -3163,7 +3162,7 @@ e1000_update_stats(struct e1000_adapter *adapter)
adapter->stats.tsctc += E1000_READ_REG(hw, TSCTC); adapter->stats.tsctc += E1000_READ_REG(hw, TSCTC);
adapter->stats.tsctfc += E1000_READ_REG(hw, TSCTFC); adapter->stats.tsctfc += E1000_READ_REG(hw, TSCTFC);
} }
if(hw->mac_type > e1000_82547_rev_2) { if (hw->mac_type > e1000_82547_rev_2) {
adapter->stats.iac += E1000_READ_REG(hw, IAC); adapter->stats.iac += E1000_READ_REG(hw, IAC);
adapter->stats.icrxoc += E1000_READ_REG(hw, ICRXOC); adapter->stats.icrxoc += E1000_READ_REG(hw, ICRXOC);
adapter->stats.icrxptc += E1000_READ_REG(hw, ICRXPTC); adapter->stats.icrxptc += E1000_READ_REG(hw, ICRXPTC);
...@@ -3207,14 +3206,14 @@ e1000_update_stats(struct e1000_adapter *adapter) ...@@ -3207,14 +3206,14 @@ e1000_update_stats(struct e1000_adapter *adapter)
/* Phy Stats */ /* Phy Stats */
if(hw->media_type == e1000_media_type_copper) { if (hw->media_type == e1000_media_type_copper) {
if((adapter->link_speed == SPEED_1000) && if ((adapter->link_speed == SPEED_1000) &&
(!e1000_read_phy_reg(hw, PHY_1000T_STATUS, &phy_tmp))) { (!e1000_read_phy_reg(hw, PHY_1000T_STATUS, &phy_tmp))) {
phy_tmp &= PHY_IDLE_ERROR_COUNT_MASK; phy_tmp &= PHY_IDLE_ERROR_COUNT_MASK;
adapter->phy_stats.idle_errors += phy_tmp; adapter->phy_stats.idle_errors += phy_tmp;
} }
if((hw->mac_type <= e1000_82546) && if ((hw->mac_type <= e1000_82546) &&
(hw->phy_type == e1000_phy_m88) && (hw->phy_type == e1000_phy_m88) &&
!e1000_read_phy_reg(hw, M88E1000_RX_ERR_CNTR, &phy_tmp)) !e1000_read_phy_reg(hw, M88E1000_RX_ERR_CNTR, &phy_tmp))
adapter->phy_stats.receive_errors += phy_tmp; adapter->phy_stats.receive_errors += phy_tmp;
...@@ -3279,7 +3278,7 @@ e1000_intr(int irq, void *data, struct pt_regs *regs) ...@@ -3279,7 +3278,7 @@ e1000_intr(int irq, void *data, struct pt_regs *regs)
return IRQ_NONE; /* Not our interrupt */ return IRQ_NONE; /* Not our interrupt */
} }
if(unlikely(icr & (E1000_ICR_RXSEQ | E1000_ICR_LSC))) { if (unlikely(icr & (E1000_ICR_RXSEQ | E1000_ICR_LSC))) {
hw->get_link_status = 1; hw->get_link_status = 1;
mod_timer(&adapter->watchdog_timer, jiffies); mod_timer(&adapter->watchdog_timer, jiffies);
} }
...@@ -3311,26 +3310,26 @@ e1000_intr(int irq, void *data, struct pt_regs *regs) ...@@ -3311,26 +3310,26 @@ e1000_intr(int irq, void *data, struct pt_regs *regs)
#else /* if !CONFIG_E1000_NAPI */ #else /* if !CONFIG_E1000_NAPI */
/* Writing IMC and IMS is needed for 82547. /* Writing IMC and IMS is needed for 82547.
Due to Hub Link bus being occupied, an interrupt * Due to Hub Link bus being occupied, an interrupt
de-assertion message is not able to be sent. * de-assertion message is not able to be sent.
When an interrupt assertion message is generated later, * When an interrupt assertion message is generated later,
two messages are re-ordered and sent out. * two messages are re-ordered and sent out.
That causes APIC to think 82547 is in de-assertion * That causes APIC to think 82547 is in de-assertion
state, while 82547 is in assertion state, resulting * state, while 82547 is in assertion state, resulting
in dead lock. Writing IMC forces 82547 into * in dead lock. Writing IMC forces 82547 into
de-assertion state. * de-assertion state.
*/ */
if(hw->mac_type == e1000_82547 || hw->mac_type == e1000_82547_rev_2){ if (hw->mac_type == e1000_82547 || hw->mac_type == e1000_82547_rev_2) {
atomic_inc(&adapter->irq_sem); atomic_inc(&adapter->irq_sem);
E1000_WRITE_REG(hw, IMC, ~0); E1000_WRITE_REG(hw, IMC, ~0);
} }
for(i = 0; i < E1000_MAX_INTR; i++) for (i = 0; i < E1000_MAX_INTR; i++)
if(unlikely(!adapter->clean_rx(adapter, adapter->rx_ring) & if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring) &
!e1000_clean_tx_irq(adapter, adapter->tx_ring))) !e1000_clean_tx_irq(adapter, adapter->tx_ring)))
break; break;
if(hw->mac_type == e1000_82547 || hw->mac_type == e1000_82547_rev_2) if (hw->mac_type == e1000_82547 || hw->mac_type == e1000_82547_rev_2)
e1000_irq_enable(adapter); e1000_irq_enable(adapter);
#endif /* CONFIG_E1000_NAPI */ #endif /* CONFIG_E1000_NAPI */
...@@ -3382,9 +3381,9 @@ e1000_clean(struct net_device *poll_dev, int *budget) ...@@ -3382,9 +3381,9 @@ e1000_clean(struct net_device *poll_dev, int *budget)
*budget -= work_done; *budget -= work_done;
poll_dev->quota -= work_done; poll_dev->quota -= work_done;
/* If no Tx and not enough Rx work done, exit the polling mode */ /* If no Tx and not enough Rx work done, exit the polling mode */
if((!tx_cleaned && (work_done == 0)) || if ((!tx_cleaned && (work_done == 0)) ||
!netif_running(adapter->netdev)) { !netif_running(adapter->netdev)) {
quit_polling: quit_polling:
netif_rx_complete(poll_dev); netif_rx_complete(poll_dev);
...@@ -3416,7 +3415,7 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter, ...@@ -3416,7 +3415,7 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter,
eop_desc = E1000_TX_DESC(*tx_ring, eop); eop_desc = E1000_TX_DESC(*tx_ring, eop);
while (eop_desc->upper.data & cpu_to_le32(E1000_TXD_STAT_DD)) { while (eop_desc->upper.data & cpu_to_le32(E1000_TXD_STAT_DD)) {
for(cleaned = FALSE; !cleaned; ) { for (cleaned = FALSE; !cleaned; ) {
tx_desc = E1000_TX_DESC(*tx_ring, i); tx_desc = E1000_TX_DESC(*tx_ring, i);
buffer_info = &tx_ring->buffer_info[i]; buffer_info = &tx_ring->buffer_info[i];
cleaned = (i == eop); cleaned = (i == eop);
...@@ -3427,7 +3426,7 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter, ...@@ -3427,7 +3426,7 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter,
e1000_unmap_and_free_tx_resource(adapter, buffer_info); e1000_unmap_and_free_tx_resource(adapter, buffer_info);
memset(tx_desc, 0, sizeof(struct e1000_tx_desc)); memset(tx_desc, 0, sizeof(struct e1000_tx_desc));
if(unlikely(++i == tx_ring->count)) i = 0; if (unlikely(++i == tx_ring->count)) i = 0;
} }
#ifdef CONFIG_E1000_MQ #ifdef CONFIG_E1000_MQ
...@@ -3442,7 +3441,7 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter, ...@@ -3442,7 +3441,7 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter,
spin_lock(&tx_ring->tx_lock); spin_lock(&tx_ring->tx_lock);
if(unlikely(cleaned && netif_queue_stopped(netdev) && if (unlikely(cleaned && netif_queue_stopped(netdev) &&
netif_carrier_ok(netdev))) netif_carrier_ok(netdev)))
netif_wake_queue(netdev); netif_wake_queue(netdev);
...@@ -3504,21 +3503,21 @@ e1000_rx_checksum(struct e1000_adapter *adapter, ...@@ -3504,21 +3503,21 @@ e1000_rx_checksum(struct e1000_adapter *adapter,
skb->ip_summed = CHECKSUM_NONE; skb->ip_summed = CHECKSUM_NONE;
/* 82543 or newer only */ /* 82543 or newer only */
if(unlikely(adapter->hw.mac_type < e1000_82543)) return; if (unlikely(adapter->hw.mac_type < e1000_82543)) return;
/* Ignore Checksum bit is set */ /* Ignore Checksum bit is set */
if(unlikely(status & E1000_RXD_STAT_IXSM)) return; if (unlikely(status & E1000_RXD_STAT_IXSM)) return;
/* TCP/UDP checksum error bit is set */ /* TCP/UDP checksum error bit is set */
if(unlikely(errors & E1000_RXD_ERR_TCPE)) { if (unlikely(errors & E1000_RXD_ERR_TCPE)) {
/* let the stack verify checksum errors */ /* let the stack verify checksum errors */
adapter->hw_csum_err++; adapter->hw_csum_err++;
return; return;
} }
/* TCP/UDP Checksum has not been calculated */ /* TCP/UDP Checksum has not been calculated */
if(adapter->hw.mac_type <= e1000_82547_rev_2) { if (adapter->hw.mac_type <= e1000_82547_rev_2) {
if(!(status & E1000_RXD_STAT_TCPCS)) if (!(status & E1000_RXD_STAT_TCPCS))
return; return;
} else { } else {
if(!(status & (E1000_RXD_STAT_TCPCS | E1000_RXD_STAT_UDPCS))) if (!(status & (E1000_RXD_STAT_TCPCS | E1000_RXD_STAT_UDPCS)))
return; return;
} }
/* It must be a TCP or UDP packet with a valid checksum */ /* It must be a TCP or UDP packet with a valid checksum */
...@@ -3571,7 +3570,7 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter, ...@@ -3571,7 +3570,7 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter,
struct sk_buff *skb; struct sk_buff *skb;
u8 status; u8 status;
#ifdef CONFIG_E1000_NAPI #ifdef CONFIG_E1000_NAPI
if(*work_done >= work_to_do) if (*work_done >= work_to_do)
break; break;
(*work_done)++; (*work_done)++;
#endif #endif
...@@ -3625,7 +3624,7 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter, ...@@ -3625,7 +3624,7 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter,
} }
} }
if(unlikely(rx_desc->errors & E1000_RXD_ERR_FRAME_ERR_MASK)) { if (unlikely(rx_desc->errors & E1000_RXD_ERR_FRAME_ERR_MASK)) {
last_byte = *(skb->data + length - 1); last_byte = *(skb->data + length - 1);
if (TBI_ACCEPT(&adapter->hw, status, if (TBI_ACCEPT(&adapter->hw, status,
rx_desc->errors, length, last_byte)) { rx_desc->errors, length, last_byte)) {
...@@ -3672,9 +3671,10 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter, ...@@ -3672,9 +3671,10 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter,
(uint32_t)(status) | (uint32_t)(status) |
((uint32_t)(rx_desc->errors) << 24), ((uint32_t)(rx_desc->errors) << 24),
rx_desc->csum, skb); rx_desc->csum, skb);
skb->protocol = eth_type_trans(skb, netdev); skb->protocol = eth_type_trans(skb, netdev);
#ifdef CONFIG_E1000_NAPI #ifdef CONFIG_E1000_NAPI
if(unlikely(adapter->vlgrp && if (unlikely(adapter->vlgrp &&
(status & E1000_RXD_STAT_VP))) { (status & E1000_RXD_STAT_VP))) {
vlan_hwaccel_receive_skb(skb, adapter->vlgrp, vlan_hwaccel_receive_skb(skb, adapter->vlgrp,
le16_to_cpu(rx_desc->special) & le16_to_cpu(rx_desc->special) &
...@@ -3683,7 +3683,7 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter, ...@@ -3683,7 +3683,7 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter,
netif_receive_skb(skb); netif_receive_skb(skb);
} }
#else /* CONFIG_E1000_NAPI */ #else /* CONFIG_E1000_NAPI */
if(unlikely(adapter->vlgrp && if (unlikely(adapter->vlgrp &&
(status & E1000_RXD_STAT_VP))) { (status & E1000_RXD_STAT_VP))) {
vlan_hwaccel_rx(skb, adapter->vlgrp, vlan_hwaccel_rx(skb, adapter->vlgrp,
le16_to_cpu(rx_desc->special) & le16_to_cpu(rx_desc->special) &
...@@ -3748,12 +3748,12 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, ...@@ -3748,12 +3748,12 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter,
rx_desc = E1000_RX_DESC_PS(*rx_ring, i); rx_desc = E1000_RX_DESC_PS(*rx_ring, i);
staterr = le32_to_cpu(rx_desc->wb.middle.status_error); staterr = le32_to_cpu(rx_desc->wb.middle.status_error);
while(staterr & E1000_RXD_STAT_DD) { while (staterr & E1000_RXD_STAT_DD) {
buffer_info = &rx_ring->buffer_info[i]; buffer_info = &rx_ring->buffer_info[i];
ps_page = &rx_ring->ps_page[i]; ps_page = &rx_ring->ps_page[i];
ps_page_dma = &rx_ring->ps_page_dma[i]; ps_page_dma = &rx_ring->ps_page_dma[i];
#ifdef CONFIG_E1000_NAPI #ifdef CONFIG_E1000_NAPI
if(unlikely(*work_done >= work_to_do)) if (unlikely(*work_done >= work_to_do))
break; break;
(*work_done)++; (*work_done)++;
#endif #endif
...@@ -3765,21 +3765,21 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, ...@@ -3765,21 +3765,21 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter,
skb = buffer_info->skb; skb = buffer_info->skb;
if(unlikely(!(staterr & E1000_RXD_STAT_EOP))) { if (unlikely(!(staterr & E1000_RXD_STAT_EOP))) {
E1000_DBG("%s: Packet Split buffers didn't pick up" E1000_DBG("%s: Packet Split buffers didn't pick up"
" the full packet\n", netdev->name); " the full packet\n", netdev->name);
dev_kfree_skb_irq(skb); dev_kfree_skb_irq(skb);
goto next_desc; goto next_desc;
} }
if(unlikely(staterr & E1000_RXDEXT_ERR_FRAME_ERR_MASK)) { if (unlikely(staterr & E1000_RXDEXT_ERR_FRAME_ERR_MASK)) {
dev_kfree_skb_irq(skb); dev_kfree_skb_irq(skb);
goto next_desc; goto next_desc;
} }
length = le16_to_cpu(rx_desc->wb.middle.length0); length = le16_to_cpu(rx_desc->wb.middle.length0);
if(unlikely(!length)) { if (unlikely(!length)) {
E1000_DBG("%s: Last part of the packet spanning" E1000_DBG("%s: Last part of the packet spanning"
" multiple descriptors\n", netdev->name); " multiple descriptors\n", netdev->name);
dev_kfree_skb_irq(skb); dev_kfree_skb_irq(skb);
...@@ -3789,8 +3789,8 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, ...@@ -3789,8 +3789,8 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter,
/* Good Receive */ /* Good Receive */
skb_put(skb, length); skb_put(skb, length);
for(j = 0; j < adapter->rx_ps_pages; j++) { for (j = 0; j < adapter->rx_ps_pages; j++) {
if(!(length = le16_to_cpu(rx_desc->wb.upper.length[j]))) if (!(length = le16_to_cpu(rx_desc->wb.upper.length[j])))
break; break;
pci_unmap_page(pdev, ps_page_dma->ps_page_dma[j], pci_unmap_page(pdev, ps_page_dma->ps_page_dma[j],
...@@ -3810,11 +3810,11 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, ...@@ -3810,11 +3810,11 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter,
rx_desc->wb.lower.hi_dword.csum_ip.csum, skb); rx_desc->wb.lower.hi_dword.csum_ip.csum, skb);
skb->protocol = eth_type_trans(skb, netdev); skb->protocol = eth_type_trans(skb, netdev);
if(likely(rx_desc->wb.upper.header_status & if (likely(rx_desc->wb.upper.header_status &
E1000_RXDPS_HDRSTAT_HDRSP)) E1000_RXDPS_HDRSTAT_HDRSP))
adapter->rx_hdr_split++; adapter->rx_hdr_split++;
#ifdef CONFIG_E1000_NAPI #ifdef CONFIG_E1000_NAPI
if(unlikely(adapter->vlgrp && (staterr & E1000_RXD_STAT_VP))) { if (unlikely(adapter->vlgrp && (staterr & E1000_RXD_STAT_VP))) {
vlan_hwaccel_receive_skb(skb, adapter->vlgrp, vlan_hwaccel_receive_skb(skb, adapter->vlgrp,
le16_to_cpu(rx_desc->wb.middle.vlan) & le16_to_cpu(rx_desc->wb.middle.vlan) &
E1000_RXD_SPC_VLAN_MASK); E1000_RXD_SPC_VLAN_MASK);
...@@ -3822,7 +3822,7 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, ...@@ -3822,7 +3822,7 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter,
netif_receive_skb(skb); netif_receive_skb(skb);
} }
#else /* CONFIG_E1000_NAPI */ #else /* CONFIG_E1000_NAPI */
if(unlikely(adapter->vlgrp && (staterr & E1000_RXD_STAT_VP))) { if (unlikely(adapter->vlgrp && (staterr & E1000_RXD_STAT_VP))) {
vlan_hwaccel_rx(skb, adapter->vlgrp, vlan_hwaccel_rx(skb, adapter->vlgrp,
le16_to_cpu(rx_desc->wb.middle.vlan) & le16_to_cpu(rx_desc->wb.middle.vlan) &
E1000_RXD_SPC_VLAN_MASK); E1000_RXD_SPC_VLAN_MASK);
...@@ -3887,7 +3887,7 @@ e1000_alloc_rx_buffers(struct e1000_adapter *adapter, ...@@ -3887,7 +3887,7 @@ e1000_alloc_rx_buffers(struct e1000_adapter *adapter,
} }
if(unlikely(!skb)) { if (unlikely(!skb)) {
/* Better luck next round */ /* Better luck next round */
adapter->alloc_rx_buff_failed++; adapter->alloc_rx_buff_failed++;
break; break;
...@@ -3952,7 +3952,8 @@ e1000_alloc_rx_buffers(struct e1000_adapter *adapter, ...@@ -3952,7 +3952,8 @@ e1000_alloc_rx_buffers(struct e1000_adapter *adapter,
rx_desc = E1000_RX_DESC(*rx_ring, i); rx_desc = E1000_RX_DESC(*rx_ring, i);
rx_desc->buffer_addr = cpu_to_le64(buffer_info->dma); rx_desc->buffer_addr = cpu_to_le64(buffer_info->dma);
if(unlikely(++i == rx_ring->count)) i = 0; if (unlikely(++i == rx_ring->count))
i = 0;
buffer_info = &rx_ring->buffer_info[i]; buffer_info = &rx_ring->buffer_info[i];
} }
...@@ -3997,7 +3998,7 @@ e1000_alloc_rx_buffers_ps(struct e1000_adapter *adapter, ...@@ -3997,7 +3998,7 @@ e1000_alloc_rx_buffers_ps(struct e1000_adapter *adapter,
while (cleaned_count--) { while (cleaned_count--) {
rx_desc = E1000_RX_DESC_PS(*rx_ring, i); rx_desc = E1000_RX_DESC_PS(*rx_ring, i);
for(j = 0; j < PS_PAGE_BUFFERS; j++) { for (j = 0; j < PS_PAGE_BUFFERS; j++) {
if (j < adapter->rx_ps_pages) { if (j < adapter->rx_ps_pages) {
if (likely(!ps_page->ps_page[j])) { if (likely(!ps_page->ps_page[j])) {
ps_page->ps_page[j] = ps_page->ps_page[j] =
...@@ -4013,7 +4014,7 @@ e1000_alloc_rx_buffers_ps(struct e1000_adapter *adapter, ...@@ -4013,7 +4014,7 @@ e1000_alloc_rx_buffers_ps(struct e1000_adapter *adapter,
PCI_DMA_FROMDEVICE); PCI_DMA_FROMDEVICE);
} }
/* Refresh the desc even if buffer_addrs didn't /* Refresh the desc even if buffer_addrs didn't
* change because each write-back erases * change because each write-back erases
* this info. * this info.
*/ */
rx_desc->read.buffer_addr[j+1] = rx_desc->read.buffer_addr[j+1] =
...@@ -4045,7 +4046,7 @@ e1000_alloc_rx_buffers_ps(struct e1000_adapter *adapter, ...@@ -4045,7 +4046,7 @@ e1000_alloc_rx_buffers_ps(struct e1000_adapter *adapter,
rx_desc->read.buffer_addr[0] = cpu_to_le64(buffer_info->dma); rx_desc->read.buffer_addr[0] = cpu_to_le64(buffer_info->dma);
if(unlikely(++i == rx_ring->count)) i = 0; if (unlikely(++i == rx_ring->count)) i = 0;
buffer_info = &rx_ring->buffer_info[i]; buffer_info = &rx_ring->buffer_info[i];
ps_page = &rx_ring->ps_page[i]; ps_page = &rx_ring->ps_page[i];
ps_page_dma = &rx_ring->ps_page_dma[i]; ps_page_dma = &rx_ring->ps_page_dma[i];
...@@ -4080,24 +4081,24 @@ e1000_smartspeed(struct e1000_adapter *adapter) ...@@ -4080,24 +4081,24 @@ e1000_smartspeed(struct e1000_adapter *adapter)
uint16_t phy_status; uint16_t phy_status;
uint16_t phy_ctrl; uint16_t phy_ctrl;
if((adapter->hw.phy_type != e1000_phy_igp) || !adapter->hw.autoneg || if ((adapter->hw.phy_type != e1000_phy_igp) || !adapter->hw.autoneg ||
!(adapter->hw.autoneg_advertised & ADVERTISE_1000_FULL)) !(adapter->hw.autoneg_advertised & ADVERTISE_1000_FULL))
return; return;
if(adapter->smartspeed == 0) { if (adapter->smartspeed == 0) {
/* If Master/Slave config fault is asserted twice, /* If Master/Slave config fault is asserted twice,
* we assume back-to-back */ * we assume back-to-back */
e1000_read_phy_reg(&adapter->hw, PHY_1000T_STATUS, &phy_status); e1000_read_phy_reg(&adapter->hw, PHY_1000T_STATUS, &phy_status);
if(!(phy_status & SR_1000T_MS_CONFIG_FAULT)) return; if (!(phy_status & SR_1000T_MS_CONFIG_FAULT)) return;
e1000_read_phy_reg(&adapter->hw, PHY_1000T_STATUS, &phy_status); e1000_read_phy_reg(&adapter->hw, PHY_1000T_STATUS, &phy_status);
if(!(phy_status & SR_1000T_MS_CONFIG_FAULT)) return; if (!(phy_status & SR_1000T_MS_CONFIG_FAULT)) return;
e1000_read_phy_reg(&adapter->hw, PHY_1000T_CTRL, &phy_ctrl); e1000_read_phy_reg(&adapter->hw, PHY_1000T_CTRL, &phy_ctrl);
if(phy_ctrl & CR_1000T_MS_ENABLE) { if (phy_ctrl & CR_1000T_MS_ENABLE) {
phy_ctrl &= ~CR_1000T_MS_ENABLE; phy_ctrl &= ~CR_1000T_MS_ENABLE;
e1000_write_phy_reg(&adapter->hw, PHY_1000T_CTRL, e1000_write_phy_reg(&adapter->hw, PHY_1000T_CTRL,
phy_ctrl); phy_ctrl);
adapter->smartspeed++; adapter->smartspeed++;
if(!e1000_phy_setup_autoneg(&adapter->hw) && if (!e1000_phy_setup_autoneg(&adapter->hw) &&
!e1000_read_phy_reg(&adapter->hw, PHY_CTRL, !e1000_read_phy_reg(&adapter->hw, PHY_CTRL,
&phy_ctrl)) { &phy_ctrl)) {
phy_ctrl |= (MII_CR_AUTO_NEG_EN | phy_ctrl |= (MII_CR_AUTO_NEG_EN |
...@@ -4107,12 +4108,12 @@ e1000_smartspeed(struct e1000_adapter *adapter) ...@@ -4107,12 +4108,12 @@ e1000_smartspeed(struct e1000_adapter *adapter)
} }
} }
return; return;
} else if(adapter->smartspeed == E1000_SMARTSPEED_DOWNSHIFT) { } else if (adapter->smartspeed == E1000_SMARTSPEED_DOWNSHIFT) {
/* If still no link, perhaps using 2/3 pair cable */ /* If still no link, perhaps using 2/3 pair cable */
e1000_read_phy_reg(&adapter->hw, PHY_1000T_CTRL, &phy_ctrl); e1000_read_phy_reg(&adapter->hw, PHY_1000T_CTRL, &phy_ctrl);
phy_ctrl |= CR_1000T_MS_ENABLE; phy_ctrl |= CR_1000T_MS_ENABLE;
e1000_write_phy_reg(&adapter->hw, PHY_1000T_CTRL, phy_ctrl); e1000_write_phy_reg(&adapter->hw, PHY_1000T_CTRL, phy_ctrl);
if(!e1000_phy_setup_autoneg(&adapter->hw) && if (!e1000_phy_setup_autoneg(&adapter->hw) &&
!e1000_read_phy_reg(&adapter->hw, PHY_CTRL, &phy_ctrl)) { !e1000_read_phy_reg(&adapter->hw, PHY_CTRL, &phy_ctrl)) {
phy_ctrl |= (MII_CR_AUTO_NEG_EN | phy_ctrl |= (MII_CR_AUTO_NEG_EN |
MII_CR_RESTART_AUTO_NEG); MII_CR_RESTART_AUTO_NEG);
...@@ -4120,7 +4121,7 @@ e1000_smartspeed(struct e1000_adapter *adapter) ...@@ -4120,7 +4121,7 @@ e1000_smartspeed(struct e1000_adapter *adapter)
} }
} }
/* Restart process after E1000_SMARTSPEED_MAX iterations */ /* Restart process after E1000_SMARTSPEED_MAX iterations */
if(adapter->smartspeed++ == E1000_SMARTSPEED_MAX) if (adapter->smartspeed++ == E1000_SMARTSPEED_MAX)
adapter->smartspeed = 0; adapter->smartspeed = 0;
} }
...@@ -4161,7 +4162,7 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd) ...@@ -4161,7 +4162,7 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
uint16_t spddplx; uint16_t spddplx;
unsigned long flags; unsigned long flags;
if(adapter->hw.media_type != e1000_media_type_copper) if (adapter->hw.media_type != e1000_media_type_copper)
return -EOPNOTSUPP; return -EOPNOTSUPP;
switch (cmd) { switch (cmd) {
...@@ -4169,10 +4170,10 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd) ...@@ -4169,10 +4170,10 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
data->phy_id = adapter->hw.phy_addr; data->phy_id = adapter->hw.phy_addr;
break; break;
case SIOCGMIIREG: case SIOCGMIIREG:
if(!capable(CAP_NET_ADMIN)) if (!capable(CAP_NET_ADMIN))
return -EPERM; return -EPERM;
spin_lock_irqsave(&adapter->stats_lock, flags); spin_lock_irqsave(&adapter->stats_lock, flags);
if(e1000_read_phy_reg(&adapter->hw, data->reg_num & 0x1F, if (e1000_read_phy_reg(&adapter->hw, data->reg_num & 0x1F,
&data->val_out)) { &data->val_out)) {
spin_unlock_irqrestore(&adapter->stats_lock, flags); spin_unlock_irqrestore(&adapter->stats_lock, flags);
return -EIO; return -EIO;
...@@ -4180,23 +4181,23 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd) ...@@ -4180,23 +4181,23 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
spin_unlock_irqrestore(&adapter->stats_lock, flags); spin_unlock_irqrestore(&adapter->stats_lock, flags);
break; break;
case SIOCSMIIREG: case SIOCSMIIREG:
if(!capable(CAP_NET_ADMIN)) if (!capable(CAP_NET_ADMIN))
return -EPERM; return -EPERM;
if(data->reg_num & ~(0x1F)) if (data->reg_num & ~(0x1F))
return -EFAULT; return -EFAULT;
mii_reg = data->val_in; mii_reg = data->val_in;
spin_lock_irqsave(&adapter->stats_lock, flags); spin_lock_irqsave(&adapter->stats_lock, flags);
if(e1000_write_phy_reg(&adapter->hw, data->reg_num, if (e1000_write_phy_reg(&adapter->hw, data->reg_num,
mii_reg)) { mii_reg)) {
spin_unlock_irqrestore(&adapter->stats_lock, flags); spin_unlock_irqrestore(&adapter->stats_lock, flags);
return -EIO; return -EIO;
} }
if(adapter->hw.phy_type == e1000_phy_m88) { if (adapter->hw.phy_type == e1000_phy_m88) {
switch (data->reg_num) { switch (data->reg_num) {
case PHY_CTRL: case PHY_CTRL:
if(mii_reg & MII_CR_POWER_DOWN) if (mii_reg & MII_CR_POWER_DOWN)
break; break;
if(mii_reg & MII_CR_AUTO_NEG_EN) { if (mii_reg & MII_CR_AUTO_NEG_EN) {
adapter->hw.autoneg = 1; adapter->hw.autoneg = 1;
adapter->hw.autoneg_advertised = 0x2F; adapter->hw.autoneg_advertised = 0x2F;
} else { } else {
...@@ -4211,14 +4212,14 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd) ...@@ -4211,14 +4212,14 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
HALF_DUPLEX; HALF_DUPLEX;
retval = e1000_set_spd_dplx(adapter, retval = e1000_set_spd_dplx(adapter,
spddplx); spddplx);
if(retval) { if (retval) {
spin_unlock_irqrestore( spin_unlock_irqrestore(
&adapter->stats_lock, &adapter->stats_lock,
flags); flags);
return retval; return retval;
} }
} }
if(netif_running(adapter->netdev)) { if (netif_running(adapter->netdev)) {
e1000_down(adapter); e1000_down(adapter);
e1000_up(adapter); e1000_up(adapter);
} else } else
...@@ -4226,7 +4227,7 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd) ...@@ -4226,7 +4227,7 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
break; break;
case M88E1000_PHY_SPEC_CTRL: case M88E1000_PHY_SPEC_CTRL:
case M88E1000_EXT_PHY_SPEC_CTRL: case M88E1000_EXT_PHY_SPEC_CTRL:
if(e1000_phy_reset(&adapter->hw)) { if (e1000_phy_reset(&adapter->hw)) {
spin_unlock_irqrestore( spin_unlock_irqrestore(
&adapter->stats_lock, flags); &adapter->stats_lock, flags);
return -EIO; return -EIO;
...@@ -4236,9 +4237,9 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd) ...@@ -4236,9 +4237,9 @@ e1000_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
} else { } else {
switch (data->reg_num) { switch (data->reg_num) {
case PHY_CTRL: case PHY_CTRL:
if(mii_reg & MII_CR_POWER_DOWN) if (mii_reg & MII_CR_POWER_DOWN)
break; break;
if(netif_running(adapter->netdev)) { if (netif_running(adapter->netdev)) {
e1000_down(adapter); e1000_down(adapter);
e1000_up(adapter); e1000_up(adapter);
} else } else
...@@ -4260,7 +4261,7 @@ e1000_pci_set_mwi(struct e1000_hw *hw) ...@@ -4260,7 +4261,7 @@ e1000_pci_set_mwi(struct e1000_hw *hw)
struct e1000_adapter *adapter = hw->back; struct e1000_adapter *adapter = hw->back;
int ret_val = pci_set_mwi(adapter->pdev); int ret_val = pci_set_mwi(adapter->pdev);
if(ret_val) if (ret_val)
DPRINTK(PROBE, ERR, "Error in setting MWI\n"); DPRINTK(PROBE, ERR, "Error in setting MWI\n");
} }
...@@ -4309,7 +4310,7 @@ e1000_vlan_rx_register(struct net_device *netdev, struct vlan_group *grp) ...@@ -4309,7 +4310,7 @@ e1000_vlan_rx_register(struct net_device *netdev, struct vlan_group *grp)
e1000_irq_disable(adapter); e1000_irq_disable(adapter);
adapter->vlgrp = grp; adapter->vlgrp = grp;
if(grp) { if (grp) {
/* enable VLAN tag insert/strip */ /* enable VLAN tag insert/strip */
ctrl = E1000_READ_REG(&adapter->hw, CTRL); ctrl = E1000_READ_REG(&adapter->hw, CTRL);
ctrl |= E1000_CTRL_VME; ctrl |= E1000_CTRL_VME;
...@@ -4331,7 +4332,7 @@ e1000_vlan_rx_register(struct net_device *netdev, struct vlan_group *grp) ...@@ -4331,7 +4332,7 @@ e1000_vlan_rx_register(struct net_device *netdev, struct vlan_group *grp)
rctl = E1000_READ_REG(&adapter->hw, RCTL); rctl = E1000_READ_REG(&adapter->hw, RCTL);
rctl &= ~E1000_RCTL_VFE; rctl &= ~E1000_RCTL_VFE;
E1000_WRITE_REG(&adapter->hw, RCTL, rctl); E1000_WRITE_REG(&adapter->hw, RCTL, rctl);
if(adapter->mng_vlan_id != (uint16_t)E1000_MNG_VLAN_NONE) { if (adapter->mng_vlan_id != (uint16_t)E1000_MNG_VLAN_NONE) {
e1000_vlan_rx_kill_vid(netdev, adapter->mng_vlan_id); e1000_vlan_rx_kill_vid(netdev, adapter->mng_vlan_id);
adapter->mng_vlan_id = E1000_MNG_VLAN_NONE; adapter->mng_vlan_id = E1000_MNG_VLAN_NONE;
} }
...@@ -4345,9 +4346,10 @@ e1000_vlan_rx_add_vid(struct net_device *netdev, uint16_t vid) ...@@ -4345,9 +4346,10 @@ e1000_vlan_rx_add_vid(struct net_device *netdev, uint16_t vid)
{ {
struct e1000_adapter *adapter = netdev_priv(netdev); struct e1000_adapter *adapter = netdev_priv(netdev);
uint32_t vfta, index; uint32_t vfta, index;
if((adapter->hw.mng_cookie.status &
E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT) && if ((adapter->hw.mng_cookie.status &
(vid == adapter->mng_vlan_id)) E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT) &&
(vid == adapter->mng_vlan_id))
return; return;
/* add VID to filter table */ /* add VID to filter table */
index = (vid >> 5) & 0x7F; index = (vid >> 5) & 0x7F;
...@@ -4364,13 +4366,13 @@ e1000_vlan_rx_kill_vid(struct net_device *netdev, uint16_t vid) ...@@ -4364,13 +4366,13 @@ e1000_vlan_rx_kill_vid(struct net_device *netdev, uint16_t vid)
e1000_irq_disable(adapter); e1000_irq_disable(adapter);
if(adapter->vlgrp) if (adapter->vlgrp)
adapter->vlgrp->vlan_devices[vid] = NULL; adapter->vlgrp->vlan_devices[vid] = NULL;
e1000_irq_enable(adapter); e1000_irq_enable(adapter);
if((adapter->hw.mng_cookie.status & if ((adapter->hw.mng_cookie.status &
E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT) && E1000_MNG_DHCP_COOKIE_STATUS_VLAN_SUPPORT) &&
(vid == adapter->mng_vlan_id)) { (vid == adapter->mng_vlan_id)) {
/* release control to f/w */ /* release control to f/w */
e1000_release_hw_control(adapter); e1000_release_hw_control(adapter);
...@@ -4389,10 +4391,10 @@ e1000_restore_vlan(struct e1000_adapter *adapter) ...@@ -4389,10 +4391,10 @@ e1000_restore_vlan(struct e1000_adapter *adapter)
{ {
e1000_vlan_rx_register(adapter->netdev, adapter->vlgrp); e1000_vlan_rx_register(adapter->netdev, adapter->vlgrp);
if(adapter->vlgrp) { if (adapter->vlgrp) {
uint16_t vid; uint16_t vid;
for(vid = 0; vid < VLAN_GROUP_ARRAY_LEN; vid++) { for (vid = 0; vid < VLAN_GROUP_ARRAY_LEN; vid++) {
if(!adapter->vlgrp->vlan_devices[vid]) if (!adapter->vlgrp->vlan_devices[vid])
continue; continue;
e1000_vlan_rx_add_vid(adapter->netdev, vid); e1000_vlan_rx_add_vid(adapter->netdev, vid);
} }
...@@ -4405,13 +4407,13 @@ e1000_set_spd_dplx(struct e1000_adapter *adapter, uint16_t spddplx) ...@@ -4405,13 +4407,13 @@ e1000_set_spd_dplx(struct e1000_adapter *adapter, uint16_t spddplx)
adapter->hw.autoneg = 0; adapter->hw.autoneg = 0;
/* Fiber NICs only allow 1000 gbps Full duplex */ /* Fiber NICs only allow 1000 gbps Full duplex */
if((adapter->hw.media_type == e1000_media_type_fiber) && if ((adapter->hw.media_type == e1000_media_type_fiber) &&
spddplx != (SPEED_1000 + DUPLEX_FULL)) { spddplx != (SPEED_1000 + DUPLEX_FULL)) {
DPRINTK(PROBE, ERR, "Unsupported Speed/Duplex configuration\n"); DPRINTK(PROBE, ERR, "Unsupported Speed/Duplex configuration\n");
return -EINVAL; return -EINVAL;
} }
switch(spddplx) { switch (spddplx) {
case SPEED_10 + DUPLEX_HALF: case SPEED_10 + DUPLEX_HALF:
adapter->hw.forced_speed_duplex = e1000_10_half; adapter->hw.forced_speed_duplex = e1000_10_half;
break; break;
...@@ -4496,7 +4498,7 @@ e1000_suspend(struct pci_dev *pdev, pm_message_t state) ...@@ -4496,7 +4498,7 @@ e1000_suspend(struct pci_dev *pdev, pm_message_t state)
netif_device_detach(netdev); netif_device_detach(netdev);
if(netif_running(netdev)) if (netif_running(netdev))
e1000_down(adapter); e1000_down(adapter);
#ifdef CONFIG_PM #ifdef CONFIG_PM
...@@ -4508,21 +4510,21 @@ e1000_suspend(struct pci_dev *pdev, pm_message_t state) ...@@ -4508,21 +4510,21 @@ e1000_suspend(struct pci_dev *pdev, pm_message_t state)
#endif #endif
status = E1000_READ_REG(&adapter->hw, STATUS); status = E1000_READ_REG(&adapter->hw, STATUS);
if(status & E1000_STATUS_LU) if (status & E1000_STATUS_LU)
wufc &= ~E1000_WUFC_LNKC; wufc &= ~E1000_WUFC_LNKC;
if(wufc) { if (wufc) {
e1000_setup_rctl(adapter); e1000_setup_rctl(adapter);
e1000_set_multi(netdev); e1000_set_multi(netdev);
/* turn on all-multi mode if wake on multicast is enabled */ /* turn on all-multi mode if wake on multicast is enabled */
if(adapter->wol & E1000_WUFC_MC) { if (adapter->wol & E1000_WUFC_MC) {
rctl = E1000_READ_REG(&adapter->hw, RCTL); rctl = E1000_READ_REG(&adapter->hw, RCTL);
rctl |= E1000_RCTL_MPE; rctl |= E1000_RCTL_MPE;
E1000_WRITE_REG(&adapter->hw, RCTL, rctl); E1000_WRITE_REG(&adapter->hw, RCTL, rctl);
} }
if(adapter->hw.mac_type >= e1000_82540) { if (adapter->hw.mac_type >= e1000_82540) {
ctrl = E1000_READ_REG(&adapter->hw, CTRL); ctrl = E1000_READ_REG(&adapter->hw, CTRL);
/* advertise wake from D3Cold */ /* advertise wake from D3Cold */
#define E1000_CTRL_ADVD3WUC 0x00100000 #define E1000_CTRL_ADVD3WUC 0x00100000
...@@ -4533,7 +4535,7 @@ e1000_suspend(struct pci_dev *pdev, pm_message_t state) ...@@ -4533,7 +4535,7 @@ e1000_suspend(struct pci_dev *pdev, pm_message_t state)
E1000_WRITE_REG(&adapter->hw, CTRL, ctrl); E1000_WRITE_REG(&adapter->hw, CTRL, ctrl);
} }
if(adapter->hw.media_type == e1000_media_type_fiber || if (adapter->hw.media_type == e1000_media_type_fiber ||
adapter->hw.media_type == e1000_media_type_internal_serdes) { adapter->hw.media_type == e1000_media_type_internal_serdes) {
/* keep the laser running in D3 */ /* keep the laser running in D3 */
ctrl_ext = E1000_READ_REG(&adapter->hw, CTRL_EXT); ctrl_ext = E1000_READ_REG(&adapter->hw, CTRL_EXT);
...@@ -4563,10 +4565,10 @@ e1000_suspend(struct pci_dev *pdev, pm_message_t state) ...@@ -4563,10 +4565,10 @@ e1000_suspend(struct pci_dev *pdev, pm_message_t state)
DPRINTK(PROBE, ERR, "Error enabling D3 cold wake\n"); DPRINTK(PROBE, ERR, "Error enabling D3 cold wake\n");
} }
if(adapter->hw.mac_type >= e1000_82540 && if (adapter->hw.mac_type >= e1000_82540 &&
adapter->hw.media_type == e1000_media_type_copper) { adapter->hw.media_type == e1000_media_type_copper) {
manc = E1000_READ_REG(&adapter->hw, MANC); manc = E1000_READ_REG(&adapter->hw, MANC);
if(manc & E1000_MANC_SMBUS_EN) { if (manc & E1000_MANC_SMBUS_EN) {
manc |= E1000_MANC_ARP_EN; manc |= E1000_MANC_ARP_EN;
E1000_WRITE_REG(&adapter->hw, MANC, manc); E1000_WRITE_REG(&adapter->hw, MANC, manc);
retval = pci_enable_wake(pdev, PCI_D3hot, 1); retval = pci_enable_wake(pdev, PCI_D3hot, 1);
...@@ -4617,12 +4619,12 @@ e1000_resume(struct pci_dev *pdev) ...@@ -4617,12 +4619,12 @@ e1000_resume(struct pci_dev *pdev)
e1000_reset(adapter); e1000_reset(adapter);
E1000_WRITE_REG(&adapter->hw, WUS, ~0); E1000_WRITE_REG(&adapter->hw, WUS, ~0);
if(netif_running(netdev)) if (netif_running(netdev))
e1000_up(adapter); e1000_up(adapter);
netif_device_attach(netdev); netif_device_attach(netdev);
if(adapter->hw.mac_type >= e1000_82540 && if (adapter->hw.mac_type >= e1000_82540 &&
adapter->hw.media_type == e1000_media_type_copper) { adapter->hw.media_type == e1000_media_type_copper) {
manc = E1000_READ_REG(&adapter->hw, MANC); manc = E1000_READ_REG(&adapter->hw, MANC);
manc &= ~(E1000_MANC_ARP_EN); manc &= ~(E1000_MANC_ARP_EN);
......
...@@ -47,7 +47,7 @@ ...@@ -47,7 +47,7 @@
BUG(); \ BUG(); \
} else { \ } else { \
msleep(x); \ msleep(x); \
} } while(0) } } while (0)
/* Some workarounds require millisecond delays and are run during interrupt /* Some workarounds require millisecond delays and are run during interrupt
* context. Most notably, when establishing link, the phy may need tweaking * context. Most notably, when establishing link, the phy may need tweaking
......
...@@ -227,7 +227,7 @@ static int __devinit ...@@ -227,7 +227,7 @@ static int __devinit
e1000_validate_option(int *value, struct e1000_option *opt, e1000_validate_option(int *value, struct e1000_option *opt,
struct e1000_adapter *adapter) struct e1000_adapter *adapter)
{ {
if(*value == OPTION_UNSET) { if (*value == OPTION_UNSET) {
*value = opt->def; *value = opt->def;
return 0; return 0;
} }
...@@ -244,7 +244,7 @@ e1000_validate_option(int *value, struct e1000_option *opt, ...@@ -244,7 +244,7 @@ e1000_validate_option(int *value, struct e1000_option *opt,
} }
break; break;
case range_option: case range_option:
if(*value >= opt->arg.r.min && *value <= opt->arg.r.max) { if (*value >= opt->arg.r.min && *value <= opt->arg.r.max) {
DPRINTK(PROBE, INFO, DPRINTK(PROBE, INFO,
"%s set to %i\n", opt->name, *value); "%s set to %i\n", opt->name, *value);
return 0; return 0;
...@@ -254,10 +254,10 @@ e1000_validate_option(int *value, struct e1000_option *opt, ...@@ -254,10 +254,10 @@ e1000_validate_option(int *value, struct e1000_option *opt,
int i; int i;
struct e1000_opt_list *ent; struct e1000_opt_list *ent;
for(i = 0; i < opt->arg.l.nr; i++) { for (i = 0; i < opt->arg.l.nr; i++) {
ent = &opt->arg.l.p[i]; ent = &opt->arg.l.p[i];
if(*value == ent->i) { if (*value == ent->i) {
if(ent->str[0] != '\0') if (ent->str[0] != '\0')
DPRINTK(PROBE, INFO, "%s\n", ent->str); DPRINTK(PROBE, INFO, "%s\n", ent->str);
return 0; return 0;
} }
...@@ -291,7 +291,7 @@ void __devinit ...@@ -291,7 +291,7 @@ void __devinit
e1000_check_options(struct e1000_adapter *adapter) e1000_check_options(struct e1000_adapter *adapter)
{ {
int bd = adapter->bd_number; int bd = adapter->bd_number;
if(bd >= E1000_MAX_NIC) { if (bd >= E1000_MAX_NIC) {
DPRINTK(PROBE, NOTICE, DPRINTK(PROBE, NOTICE,
"Warning: no configuration for board #%i\n", bd); "Warning: no configuration for board #%i\n", bd);
DPRINTK(PROBE, NOTICE, "Using defaults for all values\n"); DPRINTK(PROBE, NOTICE, "Using defaults for all values\n");
...@@ -315,7 +315,7 @@ e1000_check_options(struct e1000_adapter *adapter) ...@@ -315,7 +315,7 @@ e1000_check_options(struct e1000_adapter *adapter)
if (num_TxDescriptors > bd) { if (num_TxDescriptors > bd) {
tx_ring->count = TxDescriptors[bd]; tx_ring->count = TxDescriptors[bd];
e1000_validate_option(&tx_ring->count, &opt, adapter); e1000_validate_option(&tx_ring->count, &opt, adapter);
E1000_ROUNDUP(tx_ring->count, E1000_ROUNDUP(tx_ring->count,
REQ_TX_DESCRIPTOR_MULTIPLE); REQ_TX_DESCRIPTOR_MULTIPLE);
} else { } else {
tx_ring->count = opt.def; tx_ring->count = opt.def;
...@@ -341,7 +341,7 @@ e1000_check_options(struct e1000_adapter *adapter) ...@@ -341,7 +341,7 @@ e1000_check_options(struct e1000_adapter *adapter)
if (num_RxDescriptors > bd) { if (num_RxDescriptors > bd) {
rx_ring->count = RxDescriptors[bd]; rx_ring->count = RxDescriptors[bd];
e1000_validate_option(&rx_ring->count, &opt, adapter); e1000_validate_option(&rx_ring->count, &opt, adapter);
E1000_ROUNDUP(rx_ring->count, E1000_ROUNDUP(rx_ring->count,
REQ_RX_DESCRIPTOR_MULTIPLE); REQ_RX_DESCRIPTOR_MULTIPLE);
} else { } else {
rx_ring->count = opt.def; rx_ring->count = opt.def;
...@@ -403,7 +403,7 @@ e1000_check_options(struct e1000_adapter *adapter) ...@@ -403,7 +403,7 @@ e1000_check_options(struct e1000_adapter *adapter)
if (num_TxIntDelay > bd) { if (num_TxIntDelay > bd) {
adapter->tx_int_delay = TxIntDelay[bd]; adapter->tx_int_delay = TxIntDelay[bd];
e1000_validate_option(&adapter->tx_int_delay, &opt, e1000_validate_option(&adapter->tx_int_delay, &opt,
adapter); adapter);
} else { } else {
adapter->tx_int_delay = opt.def; adapter->tx_int_delay = opt.def;
...@@ -421,7 +421,7 @@ e1000_check_options(struct e1000_adapter *adapter) ...@@ -421,7 +421,7 @@ e1000_check_options(struct e1000_adapter *adapter)
if (num_TxAbsIntDelay > bd) { if (num_TxAbsIntDelay > bd) {
adapter->tx_abs_int_delay = TxAbsIntDelay[bd]; adapter->tx_abs_int_delay = TxAbsIntDelay[bd];
e1000_validate_option(&adapter->tx_abs_int_delay, &opt, e1000_validate_option(&adapter->tx_abs_int_delay, &opt,
adapter); adapter);
} else { } else {
adapter->tx_abs_int_delay = opt.def; adapter->tx_abs_int_delay = opt.def;
...@@ -439,7 +439,7 @@ e1000_check_options(struct e1000_adapter *adapter) ...@@ -439,7 +439,7 @@ e1000_check_options(struct e1000_adapter *adapter)
if (num_RxIntDelay > bd) { if (num_RxIntDelay > bd) {
adapter->rx_int_delay = RxIntDelay[bd]; adapter->rx_int_delay = RxIntDelay[bd];
e1000_validate_option(&adapter->rx_int_delay, &opt, e1000_validate_option(&adapter->rx_int_delay, &opt,
adapter); adapter);
} else { } else {
adapter->rx_int_delay = opt.def; adapter->rx_int_delay = opt.def;
...@@ -457,7 +457,7 @@ e1000_check_options(struct e1000_adapter *adapter) ...@@ -457,7 +457,7 @@ e1000_check_options(struct e1000_adapter *adapter)
if (num_RxAbsIntDelay > bd) { if (num_RxAbsIntDelay > bd) {
adapter->rx_abs_int_delay = RxAbsIntDelay[bd]; adapter->rx_abs_int_delay = RxAbsIntDelay[bd];
e1000_validate_option(&adapter->rx_abs_int_delay, &opt, e1000_validate_option(&adapter->rx_abs_int_delay, &opt,
adapter); adapter);
} else { } else {
adapter->rx_abs_int_delay = opt.def; adapter->rx_abs_int_delay = opt.def;
...@@ -475,17 +475,17 @@ e1000_check_options(struct e1000_adapter *adapter) ...@@ -475,17 +475,17 @@ e1000_check_options(struct e1000_adapter *adapter)
if (num_InterruptThrottleRate > bd) { if (num_InterruptThrottleRate > bd) {
adapter->itr = InterruptThrottleRate[bd]; adapter->itr = InterruptThrottleRate[bd];
switch(adapter->itr) { switch (adapter->itr) {
case 0: case 0:
DPRINTK(PROBE, INFO, "%s turned off\n", DPRINTK(PROBE, INFO, "%s turned off\n",
opt.name); opt.name);
break; break;
case 1: case 1:
DPRINTK(PROBE, INFO, "%s set to dynamic mode\n", DPRINTK(PROBE, INFO, "%s set to dynamic mode\n",
opt.name); opt.name);
break; break;
default: default:
e1000_validate_option(&adapter->itr, &opt, e1000_validate_option(&adapter->itr, &opt,
adapter); adapter);
break; break;
} }
...@@ -494,7 +494,7 @@ e1000_check_options(struct e1000_adapter *adapter) ...@@ -494,7 +494,7 @@ e1000_check_options(struct e1000_adapter *adapter)
} }
} }
switch(adapter->hw.media_type) { switch (adapter->hw.media_type) {
case e1000_media_type_fiber: case e1000_media_type_fiber:
case e1000_media_type_internal_serdes: case e1000_media_type_internal_serdes:
e1000_check_fiber_options(adapter); e1000_check_fiber_options(adapter);
...@@ -518,17 +518,17 @@ static void __devinit ...@@ -518,17 +518,17 @@ static void __devinit
e1000_check_fiber_options(struct e1000_adapter *adapter) e1000_check_fiber_options(struct e1000_adapter *adapter)
{ {
int bd = adapter->bd_number; int bd = adapter->bd_number;
if(num_Speed > bd) { if (num_Speed > bd) {
DPRINTK(PROBE, INFO, "Speed not valid for fiber adapters, " DPRINTK(PROBE, INFO, "Speed not valid for fiber adapters, "
"parameter ignored\n"); "parameter ignored\n");
} }
if(num_Duplex > bd) { if (num_Duplex > bd) {
DPRINTK(PROBE, INFO, "Duplex not valid for fiber adapters, " DPRINTK(PROBE, INFO, "Duplex not valid for fiber adapters, "
"parameter ignored\n"); "parameter ignored\n");
} }
if((num_AutoNeg > bd) && (AutoNeg[bd] != 0x20)) { if ((num_AutoNeg > bd) && (AutoNeg[bd] != 0x20)) {
DPRINTK(PROBE, INFO, "AutoNeg other than 1000/Full is " DPRINTK(PROBE, INFO, "AutoNeg other than 1000/Full is "
"not valid for fiber adapters, " "not valid for fiber adapters, "
"parameter ignored\n"); "parameter ignored\n");
...@@ -598,7 +598,7 @@ e1000_check_copper_options(struct e1000_adapter *adapter) ...@@ -598,7 +598,7 @@ e1000_check_copper_options(struct e1000_adapter *adapter)
} }
} }
if((num_AutoNeg > bd) && (speed != 0 || dplx != 0)) { if ((num_AutoNeg > bd) && (speed != 0 || dplx != 0)) {
DPRINTK(PROBE, INFO, DPRINTK(PROBE, INFO,
"AutoNeg specified along with Speed or Duplex, " "AutoNeg specified along with Speed or Duplex, "
"parameter ignored\n"); "parameter ignored\n");
...@@ -659,7 +659,7 @@ e1000_check_copper_options(struct e1000_adapter *adapter) ...@@ -659,7 +659,7 @@ e1000_check_copper_options(struct e1000_adapter *adapter)
switch (speed + dplx) { switch (speed + dplx) {
case 0: case 0:
adapter->hw.autoneg = adapter->fc_autoneg = 1; adapter->hw.autoneg = adapter->fc_autoneg = 1;
if((num_Speed > bd) && (speed != 0 || dplx != 0)) if ((num_Speed > bd) && (speed != 0 || dplx != 0))
DPRINTK(PROBE, INFO, DPRINTK(PROBE, INFO,
"Speed and duplex autonegotiation enabled\n"); "Speed and duplex autonegotiation enabled\n");
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment