Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Jan 2000 03:12:42 -0800 (PST)
From:      Matt Jacob <mjacob@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/pci if_wx.c if_wxreg.h if_wxvar.h
Message-ID:  <200001041112.DAA14010@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
mjacob      2000/01/04 03:12:42 PST

  Added files:
    sys/pci              if_wx.c if_wxreg.h if_wxvar.h 
  Log:
  Add first pass of the Intel Gigabit Ethernet (wiseman) driver. This
  driver seems relatively functional, but could use some souping up,
  particularly in the performance area. This has both NetBSD and FreeBSD
  attachment code and a fair amount of effort has been put into making
  it easy to port to different *BSD platforms.
  
  The basic design is a one tfd per mbuf transmit (with no transmit
  related interrupts- tfds are gc'd as needed). The receive ring
  uses a 2K buffer per rfd with a +2 byte adjust for the ethernet
  header (so the payload is aligned). There's support that *almost*
  works for doing large packets- the rfd chaining code works, but there's
  some problem with getting good checksums at the IP reassembly level
  (ditto for doing short tfd's too).
  
  The chip has support for TCP checksums insertion for transmit and
  TCP checksum calculation on receive (for both you have to do some
  appropriate backoff && twiddling), but this isn't in place.
  
  This is nearly entirely reverse engineered from the released Intel
  driver, so there's a lot of "We have to do this but do not know why"
  stuff. There is somebody who has the chip specs who works in FreeBSD
  but they're being a bit standoffish about even sharing hints which
  is somewhat annoying. It's also apparent that all I had to work with
  were the first rev boards.
  
  This driver has been lightly tested on intel && alpha, but only
  point-to-point. There may be some issues with switches- use of
  boot time environment variables that override EEPROM settings
  (e.g., 'set wx_ilos=1' which inverts the sense of optical signal
  loss) may help with this.
  
  I had this out for review for three weeks, and nobody said anything
  negative or positive, ergo, this checkin has no 'reviewed by' field
  which I would have preferred.



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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