[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Ethernet MEDIA "manual" ?
Please wrap your lines.
eDU wrote:
>
> Helo
> I have a simple question. I recently installed Open 3.3 in a computer. The ethernet card im using is an old NE2000 compatible (ISA). Its the only card that the machine has.
>
> During the boot time, i can see the kernel detecting the card as "ne0".
> The strange thing is that is detectected as "media manual". This is the first time i see this, as the other machines where i installed OpenBSD, the ehternet cards where detected with things like "media autoselect" or just "media 10baseT".
>
> I wonder if some one can tell my what thas it mean when this happen. Or if this could be just a problem on the ethernet card.
Key word: "NE2000 compatible".
Go grab a *real* NE2000 card, one of the ones made by Novell. Go
ahead, I'll wait.
(I bill by the hour, take your time. 8)
Ok, now look at the card. Notice the jumpers. Lots of jumpers. One
big block eight jumpers, all in one block, that can be set in one of
two positions. That's the MEDIA jumper. In the "up" position, it is
set for the coax port on the card, in the down position, it is set for
the AUI port (I think that is right, the card I have here isn't
labeled, and as I recall, it was counter intuitive -- the BNC
connector was below the AUI connector. But don't quote me on this, I
don't feel like digging out the REAL NE2000 manual I have upstairs. 8)
You see, the REAL NE2000 card predates any of this "soft set" or "Plug
and Play" stuff (and predates 10BASE-T by a large number of years!).
It was very much, "manual". In fact, if you want to move that media
jumper, you had to pull the card out of the computer, and grab it with
a pair of pliers, as all eight jumpers are in one block, and they are
usually pretty tight after all these years of sitting in one
position. Hmmm...mine is trying to make a fool of me, I had no
trouble moving the jumper by finger...
Anyway, hopefully you see the point. The REAL NE2000 was a very
"manual" card. You did all the thinking, and you did it with the
manual near by (D'oh, just noticed the pun! 8).
Now, life moves on. All those chips you see on the real NE2000 have
been condensed into a small handful of chips... they give you more
than four I/O locations (300, 320, 340, 360. 360 conflicts with the
standard parallel port. What were they thinking?) and more than the
four IRQ settings (2, 3, 4, 5). They do setting by software, and some
by ISAPNP. All things considered, things are much nicer (except a lot
of the new NE2000 compatibles suck in performance). So, as you can
see, there has been a lot of extension to this concept of
"compatable"...and there is no standards body for NE2000 compatible
cards, so each chipset is different.
However, SOME of the NE2000 compatibles STILL had manual media and
resource settings. And, from memory, all the best ones were purely
manual (there were some suckey manual ones, too, but I can't think of
any good performing ISA PNP NE2000 chipsets).
The ne(4) driver will pick out a few common chipsets and deal with
them, but the really good performing NE2000 compatible cards still
have to be manually dealt with outside of OpenBSD (either through an
MSDOS setup program or through jumpers).
> I can use other ethernet cards, but i just wanted to know what could be a possible reason of this media detection.
History. And, you are spoiled by more modern cards. 8)
> PD: The ethernet card works fine on other sistems, and i get a "ne0: time out" message when i try to use it in Open (3.3 release).
right.
You plugged it in and expected magic to happen.
that's not the way ISA works. You have to set the card to particular
locations to get the OS to recognize it. Some OSs and their
developers spend a lot of time and effort trying to probe every
imaginable card and every imaginable setting out there in a way that
doesn't "break" any other imaginable card or setting. That's really
not well spent effort -- I think it is fair game to expect users to
understand what goes on with ISA cards, and the attempts to automate
things have been less than perfectly successful.
Here's a new FAQ article I'm working on:
vvvvvvvvvvvv
NE2000
The NE2000 compatible cards are similar to a NIC that was developed in
the mid-1980s by Novell. Since then, many manufacturers have come out
with cards which are very similar to the NE2000. Performance of these
"clone" cards varies greatly, and unfortunately, all the commonly
available current NE2000 compatible cards are at the very bottom of
the NIC performance scale, though many older cards performed very
well. The NE2000 compatibles are supported by the ne(4) driver in
OpenBSD.
OpenBSD will handle some ISAPNP capable NE2000 compatible cards well
if the ISAPNP mode is turned on. Other cards will have to be set using
either jumpers or a DOS-based configuration utility. Unfortunately, as
the original NE2000 cards did not have software configuration or
ISAPNP support, there is no standards for this -- you need the utility
that came with your card originally. This can often be difficult to
obtain.
The ne(4) driver supports three configurations of the ISA NE2000 card
in the GENERIC OpenBSD kernel:
ne0: port 0x240 irq 9
ne1: port 0x300 irq 10
ne2: port 0x280 irq 9
If these settings are not acceptable, you can adjust them using User
Kernel Configuration (UKC) or by building a customized kernel
Note that the ne(4) driver is fairly "dumb" -- only the I/O port is
probed, if any of the above I/O addresses is detected, the
corresponding IRQ is assumed.
Note that there are non-ISA cards that use the ne(4) driver -- PCI and
PCMCIA ne(4) cards exist. These notes do not apply to them, these
devices are auto-configuring.
^^^^^^^^^^^
(gee, I could have skipped much of what I wrote above, and just pasted
that article draft like I did, huh? I'm late, brain is getting wacky,
and I was waiting for someone to answer a question for me...)
Your problem is that you have the wrong IRQ set on the card. Second
to the last paragraph is you. I probably should add reference to the
"ne0: time out" message... 8)
Since you are getting the card picked up as ne0, you are at port
0x240, but your card isn't at IRQ 9 (or some other devices is). As
indicated, you can alter the kernel to support your card's IRQ, or
alter your card, I suggest altering your card (I always forget to
change the kernel when I update, and I'm a hardware guy. You might
prefer the "software" solution... 8).
Nick.
--
http://www.holland-consulting.net