diff options
author | Michael Chan <mchan@broadcom.com> | 2005-08-25 15:31:41 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-08-25 15:31:41 -0700 |
commit | d4ef16088913002255eab9958fff4e98b3b507d6 (patch) | |
tree | 3984a1dc8378d7a976be60523021036c8265a167 | |
parent | 06c7427021f1cc83703f14659d8405ca773ba1ef (diff) | |
download | linux-d4ef16088913002255eab9958fff4e98b3b507d6.tar.gz linux-d4ef16088913002255eab9958fff4e98b3b507d6.tar.bz2 linux-d4ef16088913002255eab9958fff4e98b3b507d6.zip |
[TG3]: Fix ethtool loopback test lockup
The tg3_abort_hw() call in tg3_test_loopback() is causing lockups on
some devices. tg3_abort_hw() disables the memory arbiter, causing
tg3_reset_hw() to hang when it tries to write the pre-reset signature.
tg3_abort_hw() should only be called after the pre-reset signature has
been written. This is all done in tg3_reset_hw() so the tg3_abort_hw()
call is unnecessary and can be removed.
[ Also bump driver version and release date. -DaveM ]
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/tg3.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index 01419aff333e..6d4ab1e333b5 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c @@ -66,8 +66,8 @@ #define DRV_MODULE_NAME "tg3" #define PFX DRV_MODULE_NAME ": " -#define DRV_MODULE_VERSION "3.36" -#define DRV_MODULE_RELDATE "August 19, 2005" +#define DRV_MODULE_VERSION "3.37" +#define DRV_MODULE_RELDATE "August 25, 2005" #define TG3_DEF_MAC_MODE 0 #define TG3_DEF_RX_MODE 0 @@ -7865,8 +7865,6 @@ static int tg3_test_loopback(struct tg3 *tp) err = -EIO; - tg3_abort_hw(tp, 1); - tg3_reset_hw(tp); mac_mode = (tp->mac_mode & ~MAC_MODE_PORT_MODE_MASK) | |