From nobody@FreeBSD.ORG Thu Sep  9 09:50:51 1999
Return-Path: <nobody@FreeBSD.ORG>
Received: by hub.freebsd.org (Postfix, from userid 32767)
	id EC71F1518B; Thu,  9 Sep 1999 09:50:50 -0700 (PDT)
Message-Id: <19990909165050.EC71F1518B@hub.freebsd.org>
Date: Thu,  9 Sep 1999 09:50:50 -0700 (PDT)
From: dave@dugard.org
Sender: nobody@FreeBSD.ORG
To: freebsd-gnats-submit@freebsd.org
Subject: xl driver does not work with 3C900 10-T cards. It only works with 3c90x 10/100 cards
X-Send-Pr-Version: www-1.0

>Number:         13665
>Category:       misc
>Synopsis:       xl driver does not work with 3C900 10-T cards. It only works with 3c90x 10/100 cards
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Sep  9 10:00:00 PDT 1999
>Closed-Date:    Mon Sep 20 13:26:11 PDT 1999
>Last-Modified:  Sat Dec  1 08:00:03 PST 2001
>Originator:     Dave Dugard
>Release:        4.0 Current
>Organization:
>Environment:
FreeBSD phooey.dugard.org 4.0-CURRENT FreeBSD 4.0-CURRENT #7: Thu Sep  9 12:31:28 GMT 1999     dave@phooey.dugard.org:/usr/src/sys/compile/phooey2  i386

>Description:
Machine started rebooting right after it looked at the NIC after make world and then the kernel config.
After reading /sys/i386/conf/LINT about the MII bus device I guessed 
that it might be a problem with 3c900. So I swapped out the 3c900 with a 
spare 3c905 10/100 card. The stop and reboot problem cleared up. As an experement
I put the old card back in a booted off a 3.2 Generic kernel. The system 
came right up. But the 4.0 kernel still rebooted after the card init. The 3c900 
card is in another system now working properly. I kept the 3c905 in this 
system. It looks like it does not like the non-10/100 cards.

>How-To-Repeat:
Load the xl and MII with a 3c900 10-T card
>Fix:


>Release-Note:
>Audit-Trail:

From: Bill Paul <wpaul@skynet.ctr.columbia.edu>
To: dave@dugard.org
Cc: freebsd-gnats-submit@FreeBSD.ORG
Subject: Re: misc/13665: xl driver does not work with 3C900 10-T cards. It only works with 3c90x 10/100 cards
Date: Thu, 9 Sep 1999 15:51:36 -0400 (EDT)

 Of all the gin joints in all the towns in all the world, dave@dugard.org 
 had to walk into mine and say:
  
 > >Number:         13665
 > >Category:       misc
 > >Synopsis:       xl driver does not work with 3C900 10-T cards. It only works with 3c90x 10/100 cards
 
 You know, I scream and yell and harrass people in an attempt to get them
 to provide accurate and detailed information when they file so-called
 bug reports, and by now I would have though everyone would have noticed
 the screaming and yelling and gotten the point. But nooooo....
 
 Well that's just fine. I can scream and yell all day. Just remember:
 you asked for it.
 
 > >Description:
 
 > Machine started rebooting
 
 What does it say when it reboots! Does it print a panic message?!
 If so, what!? What does it say when you do a verbose boot?! When exactly 
 does it reboot! Show us what it says on the screen!! Write it down! Set 
 up a serial console! Paint it on a cave wall! Chisel it into a stone
 tablet! Do *anything* besides just sit there like a bump on a log and
 complain that "it don't work!"
 
 You can't just say "the machine reboots." You have to provide a
 *DETAILED* description of what you observe. This means write down
 everything that you see: all the panic messages, all the error
 messages, all of the things that indicate something has gone wrong.
 Why? Because I can't see your computer from here, so if you don't
 explain exactly what happend I can't help you!
 
 > right after it looked at the NIC
 
 It's not "the NIC." It's a particular model. There are several 3Com
 10Mbps-only PCI cards; it's important that I know which one you have.
 The kernel tells you what model it is when it probes it, then you share
 this information with us so we know exactly what you're talking about!
 
 > after make world and then the kernel config.
 > After reading /sys/i386/conf/LINT about the MII bus device I guessed 
 > that it might be a problem with 3c900.
 
 Well you guessed wrong. I just compiled the -current xl driver and loaded
 it on my test box with a 3c900-COMBO:
 
 xl0: <3Com 3c900-COMBO Etherlink XL> irq 9 at device 13.0 on pci0
 xl0: Ethernet address: 00:60:08:08:f5:4a
 xl0: selecting 10baseT transceiver, half duplex
 
 Seems to work fine for me. This means that whatever your problem is,
 it's more complicated than you make it out to be, which means we need
 more information, which you didn't provide!
 
 Look: the one thing I can't stand is having to go several rounds of
 e-mail with people in order to painstakingly extract the details about
 their particular problem. People seem to think it's okay to just post
 a little blurb first and ask "does anybody have any ideas?", and then,
 after several hours of interrogation, then finally disclose more
 details. This is *WRONG*. You want to provide all of the details *UP*
 *FRONT* so people don't have to go tracking you down trying to get
 more information out of you! It wastes time!
 
 Now I want you to provide more information. I want you to provide it
 a timely fashion (i.e. within the next 24 hours, not next week or
 next month, or whenever you feel like it), I want it chock full of 
 details, I want it verbatim without any attempts on your part to 
 interpret, paraphrase or otherwise mangle it, I want it in complete 
 sentences and I want it in 80 columns or less. I don't want you to
 say things like "I can't remember" or "I forgot to write it down" or
 "I have to go to Fiji for a week, I'll try it when I get back." Take
 a memory improvement class, get a pencil and paper, cancel the
 reservations at the Fiji Hilton, put the card *back* in the machine, 
 recreate the problem and document the crap out of it!
 
 -Bill
 
 -- 
 =============================================================================
 -Bill Paul            (212) 854-6020 | System Manager, Master of Unix-Fu
 Work:         wpaul@ctr.columbia.edu | Center for Telecommunications Research
 Home:  wpaul@skynet.ctr.columbia.edu | Columbia University, New York City
 =============================================================================
  "It is not I who am crazy; it is I who am mad!" - Ren Hoek, "Space Madness"
 =============================================================================
 
State-Changed-From-To: open->closed 
State-Changed-By: wpaul 
State-Changed-When: Mon Sep 20 13:26:11 PDT 1999 
State-Changed-Why:  

I still haven't heard anything from you yet, but I managed to figure 
out your problem anyway. Let me explain to you the things you *didn't* 
tell me which would have saved me a lot of time: 

- You only said the system reboots. This is wrong. In fact, it panics, 
and the panic comes from ifmedia_set. It tells you this quite plainly, 
and it would have taken you all of one minute to grab a piece of paper 
and write this information down. You have no excuse for not doing this. 
When you're standing before St. Peter at the pearly gates, this will      
be counted against you. 

- You didn't check the card with the 3C90XCFG.EXE utility and inspect 
the transceiver setting. If you had, you would have discovered that 
the setting is for "auto" which is part of the problem. I'm not going 
to flame you too hard for this since it's not exactly obvious.        

The problem is that the driver doesn't support autoselection for non-NWAY 
transceivers. For the 10/100 cards, autoselection is done with NWAY. For 
the TPC/TPO/COMBO/FL cards, the driver just selects the default transceiver 
selection from the EEPROM, and you can override it with ifconfig if you 
need to. However if the EEPROM says to use "auto," the driver doesn't 
handle it correctly. (The one exception is the 3c905B-COMBO, for which      
there is already a little bit of special handling.) 

I patched the driver to detect the case where "auto" has been selected for 
the case where there is no NWAY media and select a reasonable default based 
on the card type. 

-Bill 

From: Samuel Tardieu <sam@rfc1149.net>
To: freebsd-gnats-submit@FreeBSD.ORG
Cc:  
Subject: Re: misc/13665: xl driver does not work with 3C900 10-T cards. It only works with 3c90x 10/100 cards
Date: Sat, 01 Dec 2001 16:52:16 +0100

 I just noticed this bug, which can probably be closed: I currently have 
 a 3c900 10baseT card which is working just fine with FreeBSD 4.4-STABLE.
 
 Incidentally, the card does not work with Windows 2000, because of an 
 obscure error. Hopefully, a real system can make it work :-)
 

From: Samuel Tardieu <sam@rfc1149.net>
To: Samuel Tardieu <sam@rfc1149.net>
Cc: freebsd-gnats-submit@FreeBSD.ORG
Subject: Re: misc/13665: xl driver does not work with 3C900 10-T cards. It only works with 3c90x 10/100 cards
Date: Sat, 01 Dec 2001 16:53:56 +0100

 Samuel Tardieu wrote:
 
 > I just noticed this bug, which can probably be closed: I currently have 
 > a 3c900 10baseT card which is working just fine with FreeBSD 4.4-STABLE.
 > 
 > Incidentally, the card does not work with Windows 2000, because of an 
 > obscure error. Hopefully, a real system can make it work :-)
 > 
 
 Forget about this notice: I hadn't seen that the bug had been closed a 
 long time ago.
 
>Unformatted:
