From: Steffen Klassert <klassert@mathematik.tu-chemnitz.de>
To: Pete Clements <clem@clem.clem-digital.net>
Cc: Andrew Morton <akpm@osdl.org>,
klassert@mathematik.tu-chemnitz.de, linux-kernel@vger.kernel.org
Subject: Re: Correction: 2.6.16-git12 killed networking -- 3c900 card
Date: Thu, 30 Mar 2006 16:29:50 +0200 [thread overview]
Message-ID: <20060330142950.GB8629@bayes.mathematik.tu-chemnitz.de> (raw)
In-Reply-To: <200603301346.k2UDksdJ001794@clem.clem-digital.net>
On Thu, Mar 30, 2006 at 08:46:54AM -0500, Pete Clements wrote:
>
> Looks like that is the case until -git12, which Steffen has identified.
> Tested on git18 (with git12 fix) and looks good.
This Patch is a candidate for the final fix to make 10base2 work again.
Could you please try this together with Andrews
3c59x-collision-statistics-fix-fix.patch?
Steffen
--- linux-2.6.16-git12/drivers/net/3c59x.c 2006-03-30 14:16:23.000000000 +0200
+++ linux-2.6.16-git12-sk/drivers/net/3c59x.c 2006-03-30 15:27:13.000000000 +0200
@@ -788,7 +788,7 @@
int options; /* User-settable misc. driver options. */
unsigned int media_override:4, /* Passed-in media type. */
default_media:4, /* Read from the EEPROM/Wn3_Config. */
- full_duplex:1, force_fd:1, autoselect:1,
+ full_duplex:1, autoselect:1,
bus_master:1, /* Vortex can only do a fragment bus-m. */
full_bus_master_tx:1, full_bus_master_rx:2, /* Boomerang */
flow_ctrl:1, /* Use 802.3x flow control (PAUSE only) */
@@ -1633,12 +1633,6 @@
((vp->full_duplex && vp->flow_ctrl && vp->partner_flow_ctrl) ?
0x100 : 0),
ioaddr + Wn3_MAC_Ctrl);
-
- issue_and_wait(dev, TxReset);
- /*
- * Don't reset the PHY - that upsets autonegotiation during DHCP operations.
- */
- issue_and_wait(dev, RxReset|0x04);
}
static void vortex_check_media(struct net_device *dev, unsigned int init)
@@ -1663,7 +1657,7 @@
struct vortex_private *vp = netdev_priv(dev);
void __iomem *ioaddr = vp->ioaddr;
unsigned int config;
- int i;
+ int i, mii_reg1, mii_reg5;
if (VORTEX_PCI(vp)) {
pci_set_power_state(VORTEX_PCI(vp), PCI_D0); /* Go active */
@@ -1723,14 +1717,23 @@
printk(KERN_DEBUG "vortex_up(): writing 0x%x to InternalConfig\n", config);
iowrite32(config, ioaddr + Wn3_Config);
- netif_carrier_off(dev);
if (dev->if_port == XCVR_MII || dev->if_port == XCVR_NWAY) {
EL3WINDOW(4);
+ mii_reg1 = mdio_read(dev, vp->phys[0], MII_BMSR);
+ mii_reg5 = mdio_read(dev, vp->phys[0], MII_LPA);
+ vp->partner_flow_ctrl = ((mii_reg5 & 0x0400) != 0);
+
vortex_check_media(dev, 1);
}
else
vortex_set_duplex(dev);
+ issue_and_wait(dev, TxReset);
+ /*
+ * Don't reset the PHY - that upsets autonegotiation during DHCP operations.
+ */
+ issue_and_wait(dev, RxReset|0x04);
+
iowrite16(SetStatusEnb | 0x00, ioaddr + EL3_CMD);
next prev parent reply other threads:[~2006-03-30 14:29 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-27 2:12 Correction: 2.6.16-git12 killed networking -- 3c900 card Pete Clements
2006-03-28 14:14 ` Steffen Klassert
2006-03-28 16:44 ` Pete Clements
2006-03-29 11:47 ` Steffen Klassert
2006-03-29 14:27 ` Pete Clements
2006-03-29 1:12 ` Pete Clements
2006-03-29 2:50 ` Pete Clements
2006-03-29 6:43 ` Andrew Morton
2006-03-29 9:14 ` Steffen Klassert
2006-03-29 14:39 ` Pete Clements
2006-03-29 6:49 ` Andrew Morton
2006-03-29 14:49 ` Pete Clements
2006-03-29 19:29 ` Andrew Morton
2006-03-30 0:53 ` Pete Clements
2006-03-30 1:10 ` Andrew Morton
2006-03-30 1:19 ` Pete Clements
2006-03-30 4:51 ` Pete Clements
2006-03-30 5:09 ` Andrew Morton
2006-03-30 13:46 ` Pete Clements
2006-03-30 14:29 ` Steffen Klassert [this message]
2006-03-30 16:02 ` Pete Clements
2006-03-29 7:01 ` Andrew Morton
2006-03-29 15:15 ` Pete Clements
2006-03-29 1:07 ` Pete Clements
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060330142950.GB8629@bayes.mathematik.tu-chemnitz.de \
--to=klassert@mathematik.tu-chemnitz.de \
--cc=akpm@osdl.org \
--cc=clem@clem.clem-digital.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox