Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Dec 2004 13:02:30 +0100 (CET)
From:      Barry Bouwsma <freebsd-misuser@remove-NOSPAM-to-reply.NOSPAM.dyndns.dk>
To:        freebsd-stable@freebsd.org
Subject:    code to allegedly support realtek gigabit ethernet for 4.x available
Message-ID:  <200412131202.iBDC2Uw88471@Mail.NOSPAM.DynDNS.dK>

next in thread | raw e-mail | index | archive | help
e

First of all, sorry for the delay in this -- I had hoped to get this
done in time for the 4.11 code freeze, but I don't feel this is yet
ready for inclusion into 4.x, until a couple of observed issues are
resolved.  What good is support if it's somewhat broken?

Anyway, I've taken the if_re code from -current and patched it so
that it can build by hand as a kernel module with recent 4.x source.
This is code to support the Realtek (shut up, I know already) gigabit
ethernet chips, that are making their way onto the market in rather
low-priced gig-e cards (we're talking the ten euro or so range).

There are a few issues that need to be fixed before this code is a
candidate for RELENG_4, as follows:

*)  I think manually setting interface media doesn't work; at least,
    it didn't work on the two cards I acquired.  I have a hack that
    does let me specify the link speed/duplex, though it's not quite
    the same as forcing the settings.  From reading the code, I suspect
    this is also a problem in 5.x and -current; I experienced the same
    with NetBSD as with my hacks on 4.x.  Or else my cards/chipsets
    are properly buggered.

*)  My hacks to the latest -current code has introduced some new
    kernel messages ``re0: PHY write failed'' when setting media
    options, but this doesn't seem to hurt anything.  I want to fix
    this though.  As per the above, this seems somewhat pointless,
    anyway -- autoselect seems to work fine for all speeds.

*)  Most seriously, I think I'm getting corrupt data, shown by errors
    being thrown when transporting data wrapped by zlib or similar.
    This is a show-stopper, though superficially things seemed to
    work (I don't have much of a network with which to test things).

Rather than let my hacks languish, like they have over the past few
months, I thought I'd put a pointer to this work-in-progress, for
anyone who wants to try it out.  It's not a clean patch yet, so some
familiarity with source layout is required, as well as access to the
-current source.  And, of course, the hardware.

And as usual, the apology/disclaimer, that I have no clue what I'm
doing, and there are no doubt absolutely boneheaded examples of my
ignorance in my patches.  Which you're welcome to fix after giving me
a good scolding.

The hacks that I've come up with can be downloaded from
  https://nospam.dyndns.dk/hacks/if_re/
for a short time (if unavailable, I've had to turn my machine off
overnight or am again unable to be online) from the time I post this.
In particular, pay attention to
  https://nospam.dyndns.dk/hacks/if_re/README
which I keep updated to reflect the status of the patches present,
and which tells what you need to do, as well as which of the files
present in the above directory are relevant.  Not for beginners.


After I resolve the show-stopper issues, I'll submit a clean diff
for review and widespread testing for potential inclusion into
post-4.11 RELENG_4, but I can't say when that will be, so I'm
making available what I've done so far for any interested parties.

Please keep any followup on the list, as I'm probably going to be
unable to be online after a few days.  And feel free to adopt this
code and treat it as your own, as I'm rather negligent in my
responsibility to it these days.


thanks
barry bouwsma



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