From 3e3cec57bf235c16018c011cd456ff66c9ee307e Mon Sep 17 00:00:00 2001 From: Steffen Klassert Date: Sun, 26 Mar 2006 01:37:41 -0800 Subject: [PATCH] --- yaml --- r: 24067 b: refs/heads/master c: e94d10eb0d77ae70378f9218631a7be91e0aecff h: refs/heads/master i: 24065: c642df8e3cb292389d70fe530fcd5a823699b6b8 24063: d2bd304b1fdb20518dfbc02f1c70f5f68e3dbd52 v: v3 --- [refs] | 2 +- trunk/drivers/net/3c59x.c | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 7056d8722fa9..d56171ffc8c1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b4ff6450f5336c492d1e2f184d3b8186e0716b7a +refs/heads/master: e94d10eb0d77ae70378f9218631a7be91e0aecff diff --git a/trunk/drivers/net/3c59x.c b/trunk/drivers/net/3c59x.c index 3343cbda4197..4655662453ba 100644 --- a/trunk/drivers/net/3c59x.c +++ b/trunk/drivers/net/3c59x.c @@ -1907,8 +1907,6 @@ vortex_timer(unsigned long data) printk(KERN_DEBUG "dev->watchdog_timeo=%d\n", dev->watchdog_timeo); } - if (vp->medialock) - goto leave_media_alone; disable_irq(dev->irq); old_window = ioread16(ioaddr + EL3_CMD) >> 13; EL3WINDOW(4); @@ -1947,6 +1945,9 @@ vortex_timer(unsigned long data) if (!netif_carrier_ok(dev)) next_tick = 5*HZ; + if (vp->medialock) + goto leave_media_alone; + if ( ! ok) { unsigned int config; @@ -1980,14 +1981,14 @@ vortex_timer(unsigned long data) printk(KERN_DEBUG "wrote 0x%08x to Wn3_Config\n", config); /* AKPM: FIXME: Should reset Rx & Tx here. P60 of 3c90xc.pdf */ } - EL3WINDOW(old_window); - enable_irq(dev->irq); leave_media_alone: if (vortex_debug > 2) printk(KERN_DEBUG "%s: Media selection timer finished, %s.\n", dev->name, media_tbl[dev->if_port].name); + EL3WINDOW(old_window); + enable_irq(dev->irq); mod_timer(&vp->timer, RUN_AT(next_tick)); if (vp->deferred) iowrite16(FakeIntr, ioaddr + EL3_CMD);