| To: | jgarzik@xxxxxxxxx |
|---|---|
| Subject: | [PATCH 5/6 2.5] e100 - Auto MDI/MDI-X support |
| From: | ganesh.venkatesan@xxxxxxxxx |
| Date: | Thu, 29 Jul 2004 08:27:04 -0700 (PDT) |
| Cc: | netdev@xxxxxxxxxxx, <ganesh.venkatesan@xxxxxxxxx> |
| Reply-to: | ganesh.venkatesan@xxxxxxxxx |
| Sender: | netdev-bounce@xxxxxxxxxxx |
--- linux-2.5/drivers/net/e100.c 2004-07-29 00:28:31.783768664 -0700
+++ linux-2.5/drivers/net/e100.c.mod 2004-07-29 00:28:57.405873512 -0700
@@ -333,11 +333,16 @@ enum eeprom_op {
};
enum eeprom_offsets {
+ eeprom_cnfg_mdix = 0x03,
eeprom_id = 0x0A,
eeprom_config_asf = 0x0D,
eeprom_smbus_addr = 0x90,
};
+enum eeprom_cnfg_mdix {
+ eeprom_mdix_enabled = 0x0080,
+};
+
enum eeprom_id {
eeprom_id_wol = 0x0020,
};
@@ -1074,7 +1079,9 @@ static int e100_phy_init(struct nic *nic
mdio_write(netdev, nic->mii.phy_id, MII_NSC_CONG, cong);
}
- if(nic->mac >= mac_82550_D102)
+ if((nic->mac >= mac_82550_D102) || ((nic->flags & ich) &&
+ (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);
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [PATCH 1/6 2.5] e100 - restore speed/duplex/autoneg settings after diagnostic test, ganesh . venkatesan |
|---|---|
| Next by Date: | [PATCH 6/6 2.5] e100 - driver version update, ganesh . venkatesan |
| Previous by Thread: | [PATCH 1/6 2.5] e100 - restore speed/duplex/autoneg settings after diagnostic test, ganesh . venkatesan |
| Next by Thread: | [PATCH 6/6 2.5] e100 - driver version update, ganesh . venkatesan |
| Indexes: | [Date] [Thread] [Top] [All Lists] |