summaryrefslogtreecommitdiffstats
path: root/src/drivers/net/intel.h
diff options
context:
space:
mode:
authorMichael Brown2015-11-22 19:35:50 +0100
committerMichael Brown2015-11-22 20:08:09 +0100
commitfff9281b8454dadf5e31c297af904959fe35800b (patch)
treefa89ea25f15481ee5d11a7215ee9e9b95027b52c /src/drivers/net/intel.h
parent[comboot] Reset console before starting COMBOOT executable (diff)
downloadipxe-fff9281b8454dadf5e31c297af904959fe35800b.tar.gz
ipxe-fff9281b8454dadf5e31c297af904959fe35800b.tar.xz
ipxe-fff9281b8454dadf5e31c297af904959fe35800b.zip
[intel] Forcibly skip PHY reset on some models
On some models (notably ICH), the PHY reset mechanism appears to be broken. In particular, the PHY_CTRL register will be correctly loaded from NVM but the values will not be propagated to the "OEM bits" PHY register. This typically has the effect of dropping the link speed to 10Mbps. Since the original version of this driver in commit 945e428 ("[intel] Replace driver for Intel Gigabit NICs"), we have always worked around this problem by skipping the PHY reset if the link is already up. Enhance this workaround by explicitly checking for known-broken PCI IDs. Reported-by: Robin Smidsrød <robin@smidsrod.no> Tested-by: Robin Smidsrød <robin@smidsrod.no> Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/drivers/net/intel.h')
-rw-r--r--src/drivers/net/intel.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/drivers/net/intel.h b/src/drivers/net/intel.h
index ce9e3f46..436229ef 100644
--- a/src/drivers/net/intel.h
+++ b/src/drivers/net/intel.h
@@ -301,6 +301,8 @@ enum intel_flags {
INTEL_PBS_ERRATA = 0x0001,
/** VMware missing interrupt workaround required */
INTEL_VMWARE = 0x0002,
+ /** PHY reset is broken */
+ INTEL_NO_PHY_RST = 0x0004,
};
/**