summaryrefslogtreecommitdiff
path: root/sys/dev/pci/if_em_hw.c
diff options
context:
space:
mode:
authorJonathan Gray <jsg@cvs.openbsd.org>2011-11-29 04:11:00 +0000
committerJonathan Gray <jsg@cvs.openbsd.org>2011-11-29 04:11:00 +0000
commit42f7f7e5cd66899db7bb1b968cbc64cd27938fc6 (patch)
treee6ac1a721b5921177ff5788a61c3f83caaa530ae /sys/dev/pci/if_em_hw.c
parent42e188d4a60eb7d22b56ee4fd71bbccb110835c9 (diff)
Limit the kumeran errata to a specific mac/phy combo as done in the Intel
code instead of testing only the phy. Fixes autoneg on ich9. From Jonathan Perkin
Diffstat (limited to 'sys/dev/pci/if_em_hw.c')
-rw-r--r--sys/dev/pci/if_em_hw.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/pci/if_em_hw.c b/sys/dev/pci/if_em_hw.c
index 61ae3c9bbd3..dc45856ddef 100644
--- a/sys/dev/pci/if_em_hw.c
+++ b/sys/dev/pci/if_em_hw.c
@@ -31,7 +31,7 @@
*******************************************************************************/
-/* $OpenBSD: if_em_hw.c,v 1.67 2011/10/19 07:29:42 jsg Exp $ */
+/* $OpenBSD: if_em_hw.c,v 1.68 2011/11/29 04:10:59 jsg Exp $ */
/*
* if_em_hw.c Shared functions for accessing and configuring the MAC
*/
@@ -3973,7 +3973,9 @@ em_get_speed_and_duplex(struct em_hw *hw, uint16_t *speed, uint16_t *duplex)
if (ret_val)
return ret_val;
}
- if ((hw->phy_type == em_phy_igp_3) && (*speed == SPEED_1000)) {
+ if ((hw->mac_type == em_ich8lan) &&
+ (hw->phy_type == em_phy_igp_3) &&
+ (*speed == SPEED_1000)) {
ret_val = em_kumeran_lock_loss_workaround(hw);
if (ret_val)
return ret_val;