Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Aug 2003 13:05:04 -0700 (PDT)
From:      wpaul@FreeBSD.ORG (Bill Paul)
To:        cdillon@wolves.k12.mo.us (Chris Dillon)
Cc:        freebsd-net@FreeBSD.ORG
Subject:   Re: cvs commit: src/sys/pci if_rl.c if_rlreg.h
Message-ID:  <20030807200504.2749237B401@hub.freebsd.org>
In-Reply-To: <20030807125217.B25373@duey.wolves.k12.mo.us> from Chris Dillon at "Aug 7, 2003 01:34:57 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
> On Thu, 7 Aug 2003, Bill Paul wrote:
> 
> > Pros:
> >
> > - The 8169 is very easy to program. RealTek has been very peculiar
> >   in how it's releasing documentation for it though. They had the
> >   manual on their site for a while, then took it down. I have a
> >   copy at: http://www.freebsd.org/~wpaul/RealTek. Note that it has
> >   almost exactly the same API as the 8139C+.
> 
> It is good to know that they released the programming information at
> least once, even if on accident.  Releasing it out into the open just
> one time is all it takes, and it is forever available as long as
> somebody has a copy of it. :-)

They have another 'datasheet' up now, but it doesn't contain any
programming info. Same for the 8110 (which is a lan-on-motherboard
version of the 8169, also a slightly newer MAC rev). I have harassed
them about this a bit, but haven't gotten a answer back yet.
 
> > - There doesn't appear to be any alignment restrictions for data
> >   buffers on either RX or TX (so no copies on RX needed).
> 
> This is good, I know the fxp has a couple of alignment constraints, at
> least on receive on the Alpha, and I thought I remember discussion
> about being able to fix that by uploading the right microcode, but we
> don't have any info on how to do that.  I assume the bge and em
> drivers don't have to deal with alignment issues either.

Well... the fxp driver does achieve proper alignment of frames, but it
does so at the cost of mis-aligning the RX descriptor. This is because
we program the 8255x chips to use what Intel calls 'simple' DMA mode
on receive. In simple mode, the RX packet data immediately follows the
RX descriptor.

If you use 'flexible' RX mode, then the RX data buffers and descriptors
are separate from each other, but flexible mode is a bitch to program,
from what I've seen.

> > Cons:
> >
> > - Finding an 8169-based NIC in the U.S. market is ridiculously difficult.
> >   I ordered my card from www.mrtechus.com, which appears to be based in
> >   Los Angeles. I have yet to see either an 8169 or 8139C+ card in a
> >   retail store (although I have not been to Fry's lately).
> 
> I'm sure given its price it will soon find its way embedded onto many
> low to mid-range desktop motherboards, if not in add-in cards.  The
> way ASUS and other vendors have been using the RTL8100 NIC and now the
> RTL8201 PHYs quite a bit I'm suprised the RTL8169 isn't already on
> some of their boards.

I'm surprised (and disappointed) that the 8139C+ hasn't turned up either.
I have exactly one 8139C+ card, and it's an engineering sample. I'd love
nothing more than to see all those older 8139 NICs at CompUSA and so forth
to be replaced with 8139C+ cards. At least they perform reasonably well.
I've found one place that sells 8139C+ cards. It's in Australia. :(

-Bill

--
=============================================================================
-Bill Paul            (510) 749-2329 | Senior Engineer, Master of Unix-Fu
                 wpaul@windriver.com | Wind River Systems
=============================================================================
      "If stupidity were a handicap, you'd have the best parking spot."
=============================================================================



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030807200504.2749237B401>