summaryrefslogtreecommitdiff
path: root/usr/src/uts
diff options
context:
space:
mode:
authorcc210113 <none@none>2008-01-17 20:48:39 -0800
committercc210113 <none@none>2008-01-17 20:48:39 -0800
commit262055defd7d95a7d6f6f538fb880cad267af77f (patch)
treed58cca2a9b296ea3465c9436eaf4574c4abb36d5 /usr/src/uts
parent30da79d5c00c3e1e3610c757d1e3db22962674c7 (diff)
downloadillumos-gate-262055defd7d95a7d6f6f538fb880cad267af77f.tar.gz
6619929 Sunvts test on Northstar QGC EM failed for "Not received any packets in loopback mode".
Diffstat (limited to 'usr/src/uts')
-rw-r--r--usr/src/uts/common/io/e1000g/e1000g_main.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/usr/src/uts/common/io/e1000g/e1000g_main.c b/usr/src/uts/common/io/e1000g/e1000g_main.c
index ec9b08add1..a672c55c4a 100644
--- a/usr/src/uts/common/io/e1000g/e1000g_main.c
+++ b/usr/src/uts/common/io/e1000g/e1000g_main.c
@@ -19,7 +19,7 @@
*/
/*
- * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms of the CDDLv1.
*/
@@ -3752,8 +3752,6 @@ e1000g_set_loopback_mode(struct e1000g *Adapter, uint32_t mode)
again:
- (void) e1000g_reset(Adapter);
-
rw_enter(&Adapter->chip_lock, RW_WRITER);
switch (mode) {
@@ -3780,10 +3778,14 @@ again:
times++;
+ rw_exit(&Adapter->chip_lock);
+
/* Wait for link up */
for (i = (PHY_FORCE_LIMIT * 2); i > 0; i--)
msec_delay(100);
+ rw_enter(&Adapter->chip_lock, RW_WRITER);
+
link_up = e1000g_link_up(Adapter);
rw_exit(&Adapter->chip_lock);