From: Andrew Morton <akpm@zip.com.au>
To: Linus Torvalds <torvalds@transmeta.com>,
lkml <linux-kernel@vger.kernel.org>
Subject: [patch 3/12] 3c905B fix
Date: Fri, 09 Aug 2002 17:56:42 -0700 [thread overview]
Message-ID: <3D5464CA.EABF5F8B@zip.com.au> (raw)
Patch from Zwane which fixes a transceiver problem on his 3c905B.
Apparently the 905B's MII status register is saying that it doesn't
need preamble, but the datasheet says that it does. So add a 905B
override for that in the device table.
This could break other 3c905B's. I don't know. There's only one way
to find out.
3c59x.c | 11 +++++++----
1 files changed, 7 insertions, 4 deletions
--- 2.5.30/drivers/net/3c59x.c~zwane-3c59x Fri Aug 9 17:36:40 2002
+++ 2.5.30-akpm/drivers/net/3c59x.c Fri Aug 9 17:36:40 2002
@@ -418,7 +418,8 @@ enum { IS_VORTEX=1, IS_BOOMERANG=2, IS_C
EEPROM_8BIT=0x10, /* AKPM: Uses 0x230 as the base bitmaps for EEPROM reads */
HAS_PWR_CTRL=0x20, HAS_MII=0x40, HAS_NWAY=0x80, HAS_CB_FNS=0x100,
INVERT_MII_PWR=0x200, INVERT_LED_PWR=0x400, MAX_COLLISION_RESET=0x800,
- EEPROM_OFFSET=0x1000, HAS_HWCKSM=0x2000, WNO_XCVR_PWR=0x4000 };
+ EEPROM_OFFSET=0x1000, HAS_HWCKSM=0x2000, WNO_XCVR_PWR=0x4000,
+ EXTRA_PREAMBLE=0x8000, };
enum vortex_chips {
CH_3C590 = 0,
@@ -504,7 +505,7 @@ static struct vortex_chip_info {
{"3c905 Boomerang 100baseT4",
PCI_USES_IO|PCI_USES_MASTER, IS_BOOMERANG|HAS_MII, 64, },
{"3c905B Cyclone 100baseTx",
- PCI_USES_IO|PCI_USES_MASTER, IS_CYCLONE|HAS_NWAY|HAS_HWCKSM, 128, },
+ PCI_USES_IO|PCI_USES_MASTER, IS_CYCLONE|HAS_NWAY|HAS_HWCKSM|EXTRA_PREAMBLE, 128, },
{"3c905B Cyclone 10/100/BNC",
PCI_USES_IO|PCI_USES_MASTER, IS_CYCLONE|HAS_NWAY|HAS_HWCKSM, 128, },
@@ -1281,6 +1282,8 @@ static int __devinit vortex_probe1(struc
int phy, phy_idx = 0;
EL3WINDOW(4);
mii_preamble_required++;
+ if (vp->drv_flags & EXTRA_PREAMBLE)
+ mii_preamble_required++;
mdio_sync(ioaddr, 32);
mdio_read(dev, 24, 1);
for (phy = 0; phy < 32 && phy_idx < 1; phy++) {
@@ -1297,8 +1300,8 @@ static int __devinit vortex_probe1(struc
else
phyx = phy;
mii_status = mdio_read(dev, phyx, 1);
- printk("phy=%d, phyx=%d, mii_status=0x%04x\n",
- phy, phyx, mii_status);
+ printk("phy=%d, phyx=%d, mii_status=0x%04x\n",
+ phy, phyx, mii_status);
if (mii_status && mii_status != 0xffff) {
vp->phys[phy_idx++] = phyx;
if (print_info) {
.
reply other threads:[~2002-08-10 0:55 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=3D5464CA.EABF5F8B@zip.com.au \
--to=akpm@zip.com.au \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.