* [PATCH 00/13] e100, e1000, ixgb fixes
@ 2006-08-16 21:53 Kok, Auke
2006-08-16 21:56 ` [PATCH 01/13] e100: Fix MDIO/MDIO-X Kok, Auke
` (13 more replies)
0 siblings, 14 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:53 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Hi,
Here are updates targeted to branch #upstream-fixes from netdev-2.6, including
fixes to e100, e1000 and ixgb.
Summary:
---
Manasi Deval
ixgb: Add CX4 PHY type detection and subdevice ID.
Jesse Brandeburg
e1000: Explicitly power up the PHY during loopback testing.
e1000: Explicit locking for two ethtool path functions
ixgb: Fix cache miss due to miscalculation
Jeff Kirsher
e1000: Remove 0x1000 as supported device
e1000: Allow NVM to setup LPLU for IGP2 and IGP3
e1000: Force full DMA clocking for 10/100 speed
e1000: Disable aggressive clocking on esb2 with SERDES port
e100: Remove auto-MDIO/MDIO-X workaround
Auke Kok
e1000: Same ntohs/htons cosmetic fix as for ipv6
e1000: Increment driver version to 7.1.9-k6
e100: Increment version to 3.5.10-k4
ixgb: Increment version to 1.0.109-k4
---
These changes are available through git.
git pull git://lost.foo-projects.org/~ahkok/git/netdev-2.6 upstream-fixes
these patches are against
netdev-2.6#upstream-fixes 09e590e5d5a93f2eaa748a89c623258e6bad1648
Cheers,
Auke
---
drivers/net/e100.c | 22 ++++++++------------
drivers/net/e1000/e1000_ethtool.c | 40 ++++++++++++++++++++++++++++----------
drivers/net/e1000/e1000_hw.c | 24 ++++++++++++++++++----
drivers/net/e1000/e1000_main.c | 9 ++------
drivers/net/ixgb/ixgb_hw.c | 11 ++++++++++
drivers/net/ixgb/ixgb_ids.h | 1
drivers/net/ixgb/ixgb_main.c | 14 ++++++-------
7 files changed, 80 insertions(+), 41 deletions(-)
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 01/13] e100: Fix MDIO/MDIO-X
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 02/13] e100: increment version to 3.5.10-k4 Kok, Auke
` (12 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
MDIO/MDIO-X was broken due to a wrong errata. Removing the workaround
code fixes for affected NICs.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e100.c | 14 +++++---------
1 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/drivers/net/e100.c b/drivers/net/e100.c
index 91ef5f2..5de9843 100644
--- a/drivers/net/e100.c
+++ b/drivers/net/e100.c
@@ -1391,15 +1391,11 @@ static int e100_phy_init(struct nic *nic
}
if((nic->mac >= mac_82550_D102) || ((nic->flags & ich) &&
- (mdio_read(netdev, nic->mii.phy_id, MII_TPISTATUS) & 0x8000))) {
- /* enable/disable MDI/MDI-X auto-switching.
- MDI/MDI-X auto-switching is disabled for 82551ER/QM chips */
- if((nic->mac == mac_82551_E) || (nic->mac == mac_82551_F) ||
- (nic->mac == mac_82551_10) || (nic->mii.force_media) ||
- !(nic->eeprom[eeprom_cnfg_mdix] & eeprom_mdix_enabled))
- mdio_write(netdev, nic->mii.phy_id, MII_NCONFIG, 0);
- else
- mdio_write(netdev, nic->mii.phy_id, MII_NCONFIG, NCONFIG_AUTO_SWITCH);
+ (mdio_read(netdev, nic->mii.phy_id, MII_TPISTATUS) & 0x8000) &&
+ !(nic->eeprom[eeprom_cnfg_mdix] & eeprom_mdix_enabled))) {
+ /* enable/disable MDI/MDI-X auto-switching. */
+ mdio_write(netdev, nic->mii.phy_id, MII_NCONFIG,
+ nic->mii.force_media ? 0 : NCONFIG_AUTO_SWITCH);
}
return 0;
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 02/13] e100: increment version to 3.5.10-k4
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
2006-08-16 21:56 ` [PATCH 01/13] e100: Fix MDIO/MDIO-X Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 03/13] e1000: Same cosmetic fix as earlier sent out for IPV4 Kok, Auke
` (11 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Increment the version of e100 to 3.5.10-k4, increment dates.
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e100.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/net/e100.c b/drivers/net/e100.c
index 5de9843..e208c09 100644
--- a/drivers/net/e100.c
+++ b/drivers/net/e100.c
@@ -1,7 +1,7 @@
/*******************************************************************************
- Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+ Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the Free
@@ -158,10 +158,10 @@
#define DRV_NAME "e100"
-#define DRV_EXT "-NAPI"
-#define DRV_VERSION "3.5.10-k2"DRV_EXT
+#define DRV_EXT "-NAPI"
+#define DRV_VERSION "3.5.10-k4"DRV_EXT
#define DRV_DESCRIPTION "Intel(R) PRO/100 Network Driver"
-#define DRV_COPYRIGHT "Copyright(c) 1999-2005 Intel Corporation"
+#define DRV_COPYRIGHT "Copyright(c) 1999-2006 Intel Corporation"
#define PFX DRV_NAME ": "
#define E100_WATCHDOG_PERIOD (2 * HZ)
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 03/13] e1000: Same cosmetic fix as earlier sent out for IPV4.
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
2006-08-16 21:56 ` [PATCH 01/13] e100: Fix MDIO/MDIO-X Kok, Auke
2006-08-16 21:56 ` [PATCH 02/13] e100: increment version to 3.5.10-k4 Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 04/13] e1000: Remove 0x1000 as supported device Kok, Auke
` (10 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e1000/e1000_main.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index 627f224..ea3d504 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -2545,7 +2545,7 @@ e1000_tso(struct e1000_adapter *adapter,
cmd_length = E1000_TXD_CMD_IP;
ipcse = skb->h.raw - skb->data - 1;
#ifdef NETIF_F_TSO_IPV6
- } else if (skb->protocol == ntohs(ETH_P_IPV6)) {
+ } else if (skb->protocol == htons(ETH_P_IPV6)) {
skb->nh.ipv6h->payload_len = 0;
skb->h.th->check =
~csum_ipv6_magic(&skb->nh.ipv6h->saddr,
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 04/13] e1000: Remove 0x1000 as supported device
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (2 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 03/13] e1000: Same cosmetic fix as earlier sent out for IPV4 Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 05/13] e1000: Explicitly power up the PHY during loopback testing Kok, Auke
` (9 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Remove pci ID 8086:1000 from the list fo supported devices. This device
has not functioned with the driver for very long (since v. 5.2.4!)
and we lack the resources to come with a substantial fix. There are only
few cards of this type out there.
Signed-off-by: Jeff Kirsher <Jeffrey.t.kirsher@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e1000/e1000_main.c | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index ea3d504..bd7770f 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -48,7 +48,6 @@ static char e1000_copyright[] = "Copyrig
* {PCI_DEVICE(PCI_VENDOR_ID_INTEL, device_id)}
*/
static struct pci_device_id e1000_pci_tbl[] = {
- INTEL_E1000_ETHERNET_DEVICE(0x1000),
INTEL_E1000_ETHERNET_DEVICE(0x1001),
INTEL_E1000_ETHERNET_DEVICE(0x1004),
INTEL_E1000_ETHERNET_DEVICE(0x1008),
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 05/13] e1000: Explicitly power up the PHY during loopback testing.
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (3 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 04/13] e1000: Remove 0x1000 as supported device Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 06/13] e1000: explicit locking for two ethtool path functions Kok, Auke
` (8 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e1000/e1000_ethtool.c | 7 +++++++
drivers/net/e1000/e1000_main.c | 2 +-
2 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/drivers/net/e1000/e1000_ethtool.c b/drivers/net/e1000/e1000_ethtool.c
index 88a82ba..8edbc6b 100644
--- a/drivers/net/e1000/e1000_ethtool.c
+++ b/drivers/net/e1000/e1000_ethtool.c
@@ -1590,6 +1590,8 @@ e1000_diag_test_count(struct net_device
return E1000_TEST_LEN;
}
+extern void e1000_power_up_phy(struct e1000_adapter *);
+
static void
e1000_diag_test(struct net_device *netdev,
struct ethtool_test *eth_test, uint64_t *data)
@@ -1606,6 +1608,8 @@ e1000_diag_test(struct net_device *netde
uint8_t forced_speed_duplex = adapter->hw.forced_speed_duplex;
uint8_t autoneg = adapter->hw.autoneg;
+ DPRINTK(HW, INFO, "offline testing starting\n");
+
/* Link test performed before hardware reset so autoneg doesn't
* interfere with test result */
if (e1000_link_test(adapter, &data[4]))
@@ -1629,6 +1633,8 @@ e1000_diag_test(struct net_device *netde
eth_test->flags |= ETH_TEST_FL_FAILED;
e1000_reset(adapter);
+ /* make sure the phy is powered up */
+ e1000_power_up_phy(adapter);
if (e1000_loopback_test(adapter, &data[3]))
eth_test->flags |= ETH_TEST_FL_FAILED;
@@ -1642,6 +1648,7 @@ e1000_diag_test(struct net_device *netde
if (if_running)
dev_open(netdev);
} else {
+ DPRINTK(HW, INFO, "online testing starting\n");
/* Online tests */
if (e1000_link_test(adapter, &data[4]))
eth_test->flags |= ETH_TEST_FL_FAILED;
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index bd7770f..b2caaa2 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -484,7 +484,7 @@ e1000_up(struct e1000_adapter *adapter)
*
**/
-static void e1000_power_up_phy(struct e1000_adapter *adapter)
+void e1000_power_up_phy(struct e1000_adapter *adapter)
{
uint16_t mii_reg = 0;
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 06/13] e1000: explicit locking for two ethtool path functions
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (4 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 05/13] e1000: Explicitly power up the PHY during loopback testing Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 07/13] e1000: Allow NVM to setup LPLU for IGP2 and IGP3 Kok, Auke
` (7 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Explicitly lock two more ethtool entry points completely instead
of the hardware reset only to prevent a race condition.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e1000/e1000_ethtool.c | 33 +++++++++++++++++++++++----------
1 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/drivers/net/e1000/e1000_ethtool.c b/drivers/net/e1000/e1000_ethtool.c
index 8edbc6b..2baccf8 100644
--- a/drivers/net/e1000/e1000_ethtool.c
+++ b/drivers/net/e1000/e1000_ethtool.c
@@ -183,6 +183,9 @@ e1000_set_settings(struct net_device *ne
return -EINVAL;
}
+ while (test_and_set_bit(__E1000_RESETTING, &adapter->flags))
+ msleep(1);
+
if (ecmd->autoneg == AUTONEG_ENABLE) {
hw->autoneg = 1;
if (hw->media_type == e1000_media_type_fiber)
@@ -199,16 +202,20 @@ e1000_set_settings(struct net_device *ne
ADVERTISED_TP;
ecmd->advertising = hw->autoneg_advertised;
} else
- if (e1000_set_spd_dplx(adapter, ecmd->speed + ecmd->duplex))
+ if (e1000_set_spd_dplx(adapter, ecmd->speed + ecmd->duplex)) {
+ clear_bit(__E1000_RESETTING, &adapter->flags);
return -EINVAL;
+ }
/* reset the link */
- if (netif_running(adapter->netdev))
- e1000_reinit_locked(adapter);
- else
+ if (netif_running(adapter->netdev)) {
+ e1000_down(adapter);
+ e1000_up(adapter);
+ } else
e1000_reset(adapter);
+ clear_bit(__E1000_RESETTING, &adapter->flags);
return 0;
}
@@ -238,9 +245,13 @@ e1000_set_pauseparam(struct net_device *
{
struct e1000_adapter *adapter = netdev_priv(netdev);
struct e1000_hw *hw = &adapter->hw;
+ int retval = 0;
adapter->fc_autoneg = pause->autoneg;
+ while (test_and_set_bit(__E1000_RESETTING, &adapter->flags))
+ msleep(1);
+
if (pause->rx_pause && pause->tx_pause)
hw->fc = e1000_fc_full;
else if (pause->rx_pause && !pause->tx_pause)
@@ -253,15 +264,17 @@ e1000_set_pauseparam(struct net_device *
hw->original_fc = hw->fc;
if (adapter->fc_autoneg == AUTONEG_ENABLE) {
- if (netif_running(adapter->netdev))
- e1000_reinit_locked(adapter);
- else
+ if (netif_running(adapter->netdev)) {
+ e1000_down(adapter);
+ e1000_up(adapter);
+ } else
e1000_reset(adapter);
} else
- return ((hw->media_type == e1000_media_type_fiber) ?
- e1000_setup_link(hw) : e1000_force_mac_fc(hw));
+ retval = ((hw->media_type == e1000_media_type_fiber) ?
+ e1000_setup_link(hw) : e1000_force_mac_fc(hw));
- return 0;
+ clear_bit(__E1000_RESETTING, &adapter->flags);
+ return retval;
}
static uint32_t
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 07/13] e1000: Allow NVM to setup LPLU for IGP2 and IGP3
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (5 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 06/13] e1000: explicit locking for two ethtool path functions Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 08/13] e1000: Force full DMA clocking for 10/100 speed Kok, Auke
` (6 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Allow NVM to setup LPLU for IGP2 and IGP3. Only IGP needs LPLU D3
disabled during init here.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e1000/e1000_hw.c | 13 ++++++++-----
1 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/drivers/net/e1000/e1000_hw.c b/drivers/net/e1000/e1000_hw.c
index 583518a..3728f33 100644
--- a/drivers/net/e1000/e1000_hw.c
+++ b/drivers/net/e1000/e1000_hw.c
@@ -1324,11 +1324,14 @@ e1000_copper_link_igp_setup(struct e1000
E1000_WRITE_REG(hw, LEDCTL, led_ctrl);
}
- /* disable lplu d3 during driver init */
- ret_val = e1000_set_d3_lplu_state(hw, FALSE);
- if (ret_val) {
- DEBUGOUT("Error Disabling LPLU D3\n");
- return ret_val;
+ /* The NVM settings will configure LPLU in D3 for IGP2 and IGP3 PHYs */
+ if (hw->phy_type == e1000_phy_igp) {
+ /* disable lplu d3 during driver init */
+ ret_val = e1000_set_d3_lplu_state(hw, FALSE);
+ if (ret_val) {
+ DEBUGOUT("Error Disabling LPLU D3\n");
+ return ret_val;
+ }
}
/* disable lplu d0 during driver init */
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 08/13] e1000: Force full DMA clocking for 10/100 speed
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (6 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 07/13] e1000: Allow NVM to setup LPLU for IGP2 and IGP3 Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 09/13] e1000: Disable aggressive clocking on esb2 with SERDES port Kok, Auke
` (5 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e1000/e1000_hw.c | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/drivers/net/e1000/e1000_hw.c b/drivers/net/e1000/e1000_hw.c
index 3728f33..8eddfdf 100644
--- a/drivers/net/e1000/e1000_hw.c
+++ b/drivers/net/e1000/e1000_hw.c
@@ -718,6 +718,17 @@ e1000_init_hw(struct e1000_hw *hw)
DEBUGFUNC("e1000_init_hw");
+ /* force full DMA clock frequency for 10/100 on ICH8 A0-B0 */
+ if (hw->mac_type == e1000_ich8lan) {
+ reg_data = E1000_READ_REG(hw, TARC0);
+ reg_data |= 0x30000000;
+ E1000_WRITE_REG(hw, TARC0, reg_data);
+
+ reg_data = E1000_READ_REG(hw, STATUS);
+ reg_data &= ~0x80000000;
+ E1000_WRITE_REG(hw, STATUS, reg_data);
+ }
+
/* Initialize Identification LED */
ret_val = e1000_id_led_init(hw);
if(ret_val) {
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 09/13] e1000: Disable aggressive clocking on esb2 with SERDES port
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (7 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 08/13] e1000: Force full DMA clocking for 10/100 speed Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 10/13] e1000: Increment driver version to 7.1.9-k6 Kok, Auke
` (4 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Disable aggressive clocking on esb2 with SERDES port as it causes
hardware problems.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e1000/e1000_main.c | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index b2caaa2..978e3b7 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -1498,8 +1498,6 @@ e1000_configure_tx(struct e1000_adapter
} else if (hw->mac_type == e1000_80003es2lan) {
tarc = E1000_READ_REG(hw, TARC0);
tarc |= 1;
- if (hw->media_type == e1000_media_type_internal_serdes)
- tarc |= (1 << 20);
E1000_WRITE_REG(hw, TARC0, tarc);
tarc = E1000_READ_REG(hw, TARC1);
tarc |= 1;
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 10/13] e1000: Increment driver version to 7.1.9-k6
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (8 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 09/13] e1000: Disable aggressive clocking on esb2 with SERDES port Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 11/13] ixgb: Add CX4 PHY type detection and subdevice ID Kok, Auke
` (3 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/e1000/e1000_main.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index 978e3b7..815abe5 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -36,7 +36,7 @@ static char e1000_driver_string[] = "Int
#else
#define DRIVERNAPI "-NAPI"
#endif
-#define DRV_VERSION "7.1.9-k4"DRIVERNAPI
+#define DRV_VERSION "7.1.9-k6"DRIVERNAPI
char e1000_driver_version[] = DRV_VERSION;
static char e1000_copyright[] = "Copyright (c) 1999-2006 Intel Corporation.";
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 11/13] ixgb: Add CX4 PHY type detection and subdevice ID.
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (9 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 10/13] e1000: Increment driver version to 7.1.9-k6 Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 12/13] ixgb: fix cache miss due to miscalculation Kok, Auke
` (2 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Signed-off-by: Manasi Deval <manasi.deval@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/ixgb/ixgb_hw.c | 11 +++++++++++
drivers/net/ixgb/ixgb_ids.h | 1 +
2 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/drivers/net/ixgb/ixgb_hw.c b/drivers/net/ixgb/ixgb_hw.c
index f7fa10e..2b15155 100644
--- a/drivers/net/ixgb/ixgb_hw.c
+++ b/drivers/net/ixgb/ixgb_hw.c
@@ -236,6 +236,17 @@ ixgb_identify_phy(struct ixgb_hw *hw)
DEBUGOUT("Identified G6104 optics\n");
phy_type = ixgb_phy_type_g6104;
break;
+ case IXGB_DEVICE_ID_82597EX_CX4:
+ DEBUGOUT("Identified CX4\n");
+ xpak_vendor = ixgb_identify_xpak_vendor(hw);
+ if (xpak_vendor == ixgb_xpak_vendor_intel) {
+ DEBUGOUT("Identified TXN17201 optics\n");
+ phy_type = ixgb_phy_type_txn17201;
+ } else {
+ DEBUGOUT("Identified G6005 optics\n");
+ phy_type = ixgb_phy_type_g6005;
+ }
+ break;
default:
DEBUGOUT("Unknown physical layer module\n");
phy_type = ixgb_phy_type_unknown;
diff --git a/drivers/net/ixgb/ixgb_ids.h b/drivers/net/ixgb/ixgb_ids.h
index 40a085f..9fd6118 100644
--- a/drivers/net/ixgb/ixgb_ids.h
+++ b/drivers/net/ixgb/ixgb_ids.h
@@ -45,6 +45,7 @@
#define IXGB_DEVICE_ID_82597EX_CX4 0x109E
#define IXGB_SUBDEVICE_ID_A00C 0xA00C
+#define IXGB_SUBDEVICE_ID_A01C 0xA01C
#endif /* #ifndef _IXGB_IDS_H_ */
/* End of File */
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 12/13] ixgb: fix cache miss due to miscalculation
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (10 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 11/13] ixgb: Add CX4 PHY type detection and subdevice ID Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-16 21:56 ` [PATCH 13/13] ixgb: Increment version to 1.0.109-k4 Kok, Auke
2006-08-24 4:47 ` [PATCH 00/13] e100, e1000, ixgb fixes Jeff Garzik
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Reduce writeback threshold by 1. We were instructing the hardware to
wait until the 17th descriptor which went over the cache line limit.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke.jan.h.kok@intel.com>
---
drivers/net/ixgb/ixgb_main.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index 7bbd447..770eef2 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -140,12 +140,12 @@ module_param(debug, int, 0);
MODULE_PARM_DESC(debug, "Debug level (0=none,...,16=all)");
/* some defines for controlling descriptor fetches in h/w */
-#define RXDCTL_WTHRESH_DEFAULT 16 /* chip writes back at this many or RXT0 */
-#define RXDCTL_PTHRESH_DEFAULT 0 /* chip considers prefech below
- * this */
-#define RXDCTL_HTHRESH_DEFAULT 0 /* chip will only prefetch if tail
- * is pushed this many descriptors
- * from head */
+#define RXDCTL_WTHRESH_DEFAULT 15 /* chip writes back at this many or RXT0 */
+#define RXDCTL_PTHRESH_DEFAULT 0 /* chip considers prefech below
+ * this */
+#define RXDCTL_HTHRESH_DEFAULT 0 /* chip will only prefetch if tail
+ * is pushed this many descriptors
+ * from head */
/**
* ixgb_init_module - Driver Registration Routine
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* [PATCH 13/13] ixgb: Increment version to 1.0.109-k4
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (11 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 12/13] ixgb: fix cache miss due to miscalculation Kok, Auke
@ 2006-08-16 21:56 ` Kok, Auke
2006-08-24 4:47 ` [PATCH 00/13] e100, e1000, ixgb fixes Jeff Garzik
13 siblings, 0 replies; 15+ messages in thread
From: Kok, Auke @ 2006-08-16 21:56 UTC (permalink / raw)
To: Garzik, Jeff
Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Kok, Auke,
Ronciak, John
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
---
drivers/net/ixgb/ixgb_main.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index 770eef2..b1cf852 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -36,7 +36,7 @@ static char ixgb_driver_string[] = "Inte
#else
#define DRIVERNAPI "-NAPI"
#endif
-#define DRV_VERSION "1.0.109-k2"DRIVERNAPI
+#define DRV_VERSION "1.0.109-k4"DRIVERNAPI
char ixgb_driver_version[] = DRV_VERSION;
static char ixgb_copyright[] = "Copyright (c) 1999-2006 Intel Corporation.";
--
Auke Kok <auke-jan.h.kok@intel.com>
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH 00/13] e100, e1000, ixgb fixes
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
` (12 preceding siblings ...)
2006-08-16 21:56 ` [PATCH 13/13] ixgb: Increment version to 1.0.109-k4 Kok, Auke
@ 2006-08-24 4:47 ` Jeff Garzik
13 siblings, 0 replies; 15+ messages in thread
From: Jeff Garzik @ 2006-08-24 4:47 UTC (permalink / raw)
To: Kok, Auke; +Cc: netdev, akpm, Brandeburg, Jesse, Kok, Auke, Ronciak, John
pulled into #upstream
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2006-08-24 4:47 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-08-16 21:53 [PATCH 00/13] e100, e1000, ixgb fixes Kok, Auke
2006-08-16 21:56 ` [PATCH 01/13] e100: Fix MDIO/MDIO-X Kok, Auke
2006-08-16 21:56 ` [PATCH 02/13] e100: increment version to 3.5.10-k4 Kok, Auke
2006-08-16 21:56 ` [PATCH 03/13] e1000: Same cosmetic fix as earlier sent out for IPV4 Kok, Auke
2006-08-16 21:56 ` [PATCH 04/13] e1000: Remove 0x1000 as supported device Kok, Auke
2006-08-16 21:56 ` [PATCH 05/13] e1000: Explicitly power up the PHY during loopback testing Kok, Auke
2006-08-16 21:56 ` [PATCH 06/13] e1000: explicit locking for two ethtool path functions Kok, Auke
2006-08-16 21:56 ` [PATCH 07/13] e1000: Allow NVM to setup LPLU for IGP2 and IGP3 Kok, Auke
2006-08-16 21:56 ` [PATCH 08/13] e1000: Force full DMA clocking for 10/100 speed Kok, Auke
2006-08-16 21:56 ` [PATCH 09/13] e1000: Disable aggressive clocking on esb2 with SERDES port Kok, Auke
2006-08-16 21:56 ` [PATCH 10/13] e1000: Increment driver version to 7.1.9-k6 Kok, Auke
2006-08-16 21:56 ` [PATCH 11/13] ixgb: Add CX4 PHY type detection and subdevice ID Kok, Auke
2006-08-16 21:56 ` [PATCH 12/13] ixgb: fix cache miss due to miscalculation Kok, Auke
2006-08-16 21:56 ` [PATCH 13/13] ixgb: Increment version to 1.0.109-k4 Kok, Auke
2006-08-24 4:47 ` [PATCH 00/13] e100, e1000, ixgb fixes Jeff Garzik
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.