Home | History | Annotate | Download | only in ic
History log of /src/sys/dev/ic/elink3reg.h
RevisionDateAuthorComments
 1.31  05-Nov-2006  itohy Add definition for Tx Reclaim status (TXS_RECLAIM).
 1.30  25-Feb-2006  wiz branches: 1.30.14; 1.30.16;
Fix some typos.
 1.29  11-Dec-2005  christos branches: 1.29.2; 1.29.4; 1.29.6;
merge ktrace-lwp.
 1.28  27-Feb-2005  perry branches: 1.28.4;
nuke trailing whitespace
 1.27  09-Aug-2004  mycroft branches: 1.27.4; 1.27.6;
Eliminate most 8-bit access. Just the data in/out path remains.
 1.26  02-Nov-2003  wiz Fix some typos. From Tom Cosgrove via jmc@openbsd.
 1.25  28-Dec-2001  christos branches: 1.25.16;
Clean up the C_ and S_ constants. We don't really need two sets of them.
Also make the interrupt handler for older 3com cards look like the xl one.
I.e. don't ack the interrupt latch bit before checking if it is set.
At the same time, introduce constants for the watched interrupts, so that
we don't copy them all over the place.
 1.24  11-Nov-2001  christos merge duplicate register definitions.
 1.23  20-Jul-2001  thorpej branches: 1.23.4;
Add the ISA Bridge ASIC registers found on the Corkscrew (3c515).
 1.22  13-Mar-2000  soren branches: 1.22.6; 1.22.8;
Fix doubled 'the's in comments.
 1.21  11-Oct-1999  thorpej branches: 1.21.2;
Add some more RoadRunner bits. Partially from Ryoji KATO, PR #8331.
 1.20  28-Apr-1999  jonathan branches: 1.20.2;
Add EEPROM_SSI EEPROM field (hardware revision-level info).
 1.19  04-Nov-1998  fvdl branches: 1.19.6;
Add the 'ex' driver, a DMA driver for 3Com 90x and 90xB cards. Rename
constants from EP_ to ELINK_ since they're now used in the ex driver as well.
 1.18  26-Aug-1998  thorpej Define the full-duplex bit in the W3 MAC CONTROL register.
 1.17  15-Aug-1998  thorpej RoadRunner has a bit in Reset Options that must be set to enable the MII.
Define that bit.
 1.16  15-Aug-1998  thorpej Reset Options is in Window 3; correct a comment.
 1.15  15-Aug-1998  thorpej Define the RoadRunner FIFO count registers.
 1.14  12-Aug-1998  thorpej Completely rewrite media selection. Add support for the MII/PHY on
the 3Com 3c905-TX and 3c905-T4. Fix handling of the MII on the
3c595-MII and 3c597-MII (can't talk to the PHYs on these cards; just
use "manual" for the external MII port).

Fixes kern/4782 (Chris Demetriou).
 1.13  27-Apr-1997  veego Rename the PROD_ID to PROD_ID_3C509 to make it possible to add other
product id's, e.g. for the 3c515.
 1.12  07-Apr-1997  jonathan Remove IFF_LINK[01] "connector" support.
Add if_media support. Still missing a software autosense FSM.
 1.11  30-Dec-1996  jonathan * make sure 100mbit media-present bits don't collied with 3c509
CONFIG_CNTRL bits by making the "conn" argument to epconfig()
a u_int, not a u_int16_t, and by defining 100mbit media
bits in the upper 16 bits.

A redesigned interface that fixes this properly is in the pipeline.
 1.10  29-Dec-1996  jonathan * Expand softc sc_connectors field to 16 bits.
For now, we really only need 8 bits of media type.

* Add bogus definitions for 100mbit transcievers, to be set in the
"conn" argument to ep_config(). Should really use the same bits
as in EP_W0_CONFIG_CTRL bits, but I don't know what bits the 3c515
&c use for 100mbit media.

* Define bitflags for 100Mbit transceiver options in ep_connectors.

* Add definitions of powerup/powerdown commands. for interfaces with
power management. Should send a powerup after APM resume?

* Add definition of fragment-busmaster (vortex) START_DMA command.

* Add definition of PCI configuration-space media-present bits.
(really just EP_W3_RESET_OPTIONS remapped into pci config space.)

* Add comments describing what the #define's above are used for.
 1.9  29-Dec-1996  jonathan Define the contents of window 3's InternalConfig register.
 1.8  07-Dec-1996  cjs Add definition for internal config register.
 1.7  22-Nov-1996  jonathan * 3c509s drop the low-oder bits of EP_THRESH_DISABLE (2047) on a write,
and the result reads back as zero. Mask probe code accordingly.
 1.6  17-Nov-1996  jonathan Fix for hanging 3com ``large packet'' (100Mbit) Etherlink-III devices:
* Add a slot in the softc, ep_pktlenshift, to indicate that
a board implements ``large packets'' (FDDI-sized frames) and
therefore implicitly shifts the argument to packet-length commands
by two bits to fit a 13-bit length in an 11-bit command argument field.

* Change the reset of station-mask filterto be independent of bus-type
(e.g.,. for 3c515)

* Replace the "2044" constant used to disable TX threshold interrupts
on 3c509-generation cards with a #define. Use 2047 instead,
since that works on the large-packet cards (Vortex, Demon, Boomerang)
and 2044 doesn't.

* Add code to epconfing to probe for large-packet support,
set the softc appropriately, and shift packet sizes in commands
by ep_pktlenshift to compensate for the implicit shift.

* Tweak the epconfig() code to avoid hanging on startup.
Set the Tx threshold to interrupt when there's space for
a maximal-sized ether frame, then do epinit() then epstop(),
instead of just the Tx and Rx reset. Required on at least a 3c595.

Tested on a 3c595, but not on 3c509-generation hardware.
 1.5  21-Oct-1996  thorpej New bus.h implementation/interface:
- No more distinction between i/o-mapped and memory-mapped
devices. It's all "bus space" now, and space tags
differentiate the space with finer grain than the
bus chipset tag.
- Add memory barrier methods.
- Implement space alloc/free methods.
- Implement region read/write methods (like memcpy to/from
bus space).
This interface provides a better abstraction for dealing with
machine-independent chipset drivers.
 1.4  29-Sep-1996  christos Apply PR/2661 [from Jonathan Stone]
 1.3  10-May-1996  thorpej branches: 1.3.4;
Update Herb's e-mail address; beer.org feels a lot more friendly.
 1.2  30-Apr-1996  thorpej Convert the Etherlink III (ep) driver to use <machine/bus.h>.
 1.1  25-Apr-1996  thorpej Break up the ep driver into isa, eisa, and pci front-ends and a
bus-independent core driver. Tested on all three bus types, including
an isa 3c509 masquerading as an eisa device (use ep* at eisa? slot ? in
your kernel config file to catch this one).
XXX Driver still needs to be converted to <machine/bus.h>
 1.3.4.1  19-Mar-1997  mycroft Pull up fix for `sniper bug', which can cause packets to be accepted erroneously.
 1.19.6.2  06-Feb-2000  he Pull up revision 1.21 (requested by enami):
Add support for the 3Com 3c574. Partially based on PR#8331.
 1.19.6.1  28-Apr-1999  perry branches: 1.19.6.1.2;
pullup 1.19->1.20 (jonathan)
 1.19.6.1.2.1  21-Jun-1999  thorpej Sync w/ -current.
 1.20.2.1  27-Dec-1999  wrstuden Pull up to last week's -current.
 1.21.2.1  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.22.8.2  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.22.8.1  03-Aug-2001  lukem update to -current
 1.22.6.3  08-Jan-2002  nathanw Catch up to -current.
 1.22.6.2  14-Nov-2001  nathanw Catch up to -current.
 1.22.6.1  24-Aug-2001  nathanw Catch up with -current.
 1.23.4.1  12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.25.16.5  04-Mar-2005  skrll Sync with HEAD.

Hi Perry!
 1.25.16.4  21-Sep-2004  skrll Fix the sync with head I botched.
 1.25.16.3  18-Sep-2004  skrll Sync with HEAD.
 1.25.16.2  12-Aug-2004  skrll Sync with HEAD.
 1.25.16.1  03-Aug-2004  skrll Sync with HEAD
 1.27.6.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.27.4.1  29-Apr-2005  kent sync with -current
 1.28.4.2  30-Dec-2006  yamt sync with head.
 1.28.4.1  21-Jun-2006  yamt sync with head.
 1.29.6.1  22-Apr-2006  simonb Sync with head.
 1.29.4.1  09-Sep-2006  rpaulo sync with head
 1.29.2.1  01-Mar-2006  yamt sync with head.
 1.30.16.1  10-Dec-2006  yamt sync with head.
 1.30.14.1  18-Nov-2006  ad Sync with head.

RSS XML Feed