Home | History | Annotate | Download | only in ic
History log of /src/sys/dev/ic/ne2000var.h
RevisionDateAuthorComments
 1.28  15-Jul-2018  maxv Retire ipkdb entirely. The option was removed from the config files
yesterday.

ok kamil christos
 1.27  11-Aug-2013  rkujawa branches: 1.27.28; 1.27.30;
Add support for AX88796(B) variant.
 1.26  13-Mar-2010  tsutsui branches: 1.26.10; 1.26.20; 1.26.24;
u_int8_t -> uint8_t
 1.25  03-Mar-2010  tsutsui Put several fixes to ne(4) driver for better 8 bit mode support,
especially on RTL8019AS which is also used for non-ISA local bus of
embedded controllers and some m68k machines like atari and x68k.

* move RTL8019 probe and attach code from each bus attachment
to MI ne2000_detect() and ne2000_attach()
* change a method for backend and attachment to specify 8 bit mode
to use a new sc->sc_quirk member, instead of sc->sc_dmawidth
* handle more NE2000 8 bit mode specific settings, including
bus_space(9) access width and available size of buffer memory
* add a function to detect NE2000 8 bit mode
(disabled by default, but enalbed by options NE2000_DETECT_8BIT
to avoid possible regression on various ISA clones)
* fix ipkdb attachment accordingly (untested)

Tested on two NE2000 ISA variants (RTL8019AS and another clone named UL0001)
in both 8 bit and 16 bit mode on i386. "Looks good" from nonaka@.

See my post on tech-kern for details:
http://mail-index.NetBSD.org/tech-kern/2010/02/26/msg007423.html
 1.24  24-Feb-2010  dyoung A pointer typedef entails trading too much flexibility to declare const
and non-const types, and the kernel uses both const and non-const
PMF qualifiers and device suspensors, so change the pmf_qual_t and
device_suspensor_t typedefs from "pointers to const" to non-pointer,
non-const types.
 1.23  08-Jan-2010  dyoung branches: 1.23.2;
Expand PMF_FN_* macros.
 1.22  02-Jan-2010  christos nothing uses ne2000_power anymore.
 1.21  05-May-2009  nonaka Added NE2000 with 8bit bus width support.
reviewd by tsutsui@ at tech-kern ML.
 1.20  05-Apr-2009  uwe Provide pmf(9) hooks that do what dopowerhooks(9) hook does.

XXX: Do NOT call pmf_class_network_register() yet, b/c db8320.c
doesn't provide if_stop method!
 1.19  28-Apr-2008  martin branches: 1.19.8; 1.19.10; 1.19.14;
Remove clause 3 and 4 from TNF licenses
 1.18  11-Jul-2006  peter branches: 1.18.54; 1.18.56; 1.18.58;
Add power hooks for "ne* at pcmcia?".

ok christos@
 1.17  11-Dec-2005  christos branches: 1.17.4; 1.17.8; 1.17.16;
merge ktrace-lwp.
 1.16  04-Feb-2005  perry branches: 1.16.6;
de-__P
 1.15  17-Mar-2004  mycroft branches: 1.15.8; 1.15.10;
A random patch that's been in my source tree...
Figure out whether the shared memory region is word-accessible in the same
place we figure out its size, and store this in the softc, rather than using a
series of comparisons later.
 1.14  22-Oct-2003  christos support for NE2000_TYPE_AX88790 from
Yong-Jhen Hong yongjhen at alqualonde dot org
 1.13  12-Feb-2001  thorpej branches: 1.13.24;
Adjust the way that media is initialized on DP8390-compatible
chips. The dp8390_softc now has media_init and media_fini
function pointers that do the work.
 1.12  10-Feb-2001  thorpej Add a type for the DL10022.
 1.11  22-Mar-2000  ws Make IPKDB working again.
Add support for i386 debugging and pci-based ne2000 boards.
 1.10  09-Feb-2000  enami ASIX AX88190 support (Planex FNW-3700-T and Melco LPC3-TX) from FreeBSD/PAO3.
 1.9  09-Feb-2000  enami - Since all resources are mandatory, no need to manage individually.
- KNF some code.
- Factor out some code into function.
- Disestablish an interrupt handler when failed to enable card power.
 1.8  02-Feb-2000  itojun use a bit more standard (sys/device.h) prototype for {dp8390,ne2000}_detach().
 1.7  02-Feb-2000  itojun implement if_detach code for ne/pcmcia.
XXX still incomplete, ne_pcmcia_detach() commented out for safery - please test
 1.6  27-Sep-1999  enami branches: 1.6.2;
Support Planex Communications Inc, FNW-3600-T.
 1.5  27-Sep-1999  enami Change NE2000_USE_WORD to take pointer to softc rather than type.
 1.4  27-Sep-1999  enami Define new macro NE2000_USE_WORD() and use it where appropriate.
 1.3  28-Oct-1998  thorpej Add media list, media list count, and default media arguments to
ne2000_attach().
 1.2  14-Oct-1997  thorpej Pull down from marc-pcmcia branch: Common code used by NE2000 and compatible
ethernet cards.
 1.1  14-Oct-1997  thorpej branches: 1.1.2;
file ne2000var.h was initially added on branch marc-pcmcia.
 1.1.2.1  14-Oct-1997  thorpej Split off NE2000 support from the ISA "ed" driver, and create a new "ne"
driver that deals with NE2000s and compatibles on ISA, PCI, and PCMCIA
busses.

This driver uses the generic DP8390 core chipset back-end.
 1.6.2.3  12-Mar-2001  bouyer Sync with HEAD.
 1.6.2.2  11-Feb-2001  bouyer Sync with HEAD.
 1.6.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.13.24.4  04-Feb-2005  skrll Sync with HEAD.
 1.13.24.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.13.24.2  18-Sep-2004  skrll Sync with HEAD.
 1.13.24.1  03-Aug-2004  skrll Sync with HEAD
 1.15.10.1  12-Feb-2005  yamt sync with head.
 1.15.8.1  29-Apr-2005  kent sync with -current
 1.16.6.1  30-Dec-2006  yamt sync with head.
 1.17.16.1  13-Jul-2006  gdamore Merge from HEAD.
 1.17.8.1  11-Aug-2006  yamt sync with head
 1.17.4.1  09-Sep-2006  rpaulo sync with head
 1.18.58.5  11-Aug-2010  yamt sync with head.
 1.18.58.4  11-Mar-2010  yamt sync with head
 1.18.58.3  16-May-2009  yamt sync with head
 1.18.58.2  04-May-2009  yamt sync with head.
 1.18.58.1  16-May-2008  yamt sync with head.
 1.18.56.1  18-May-2008  yamt sync with head.
 1.18.54.1  02-Jun-2008  mjf Sync with HEAD.
 1.19.14.1  13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.19.10.1  20-Nov-2010  riz Pull up following revision(s) (requested by tsutsui in ticket #1367):
sys/dev/ic/ne2000var.h: revision 1.25
sys/arch/atari/conf/MILAN.in: revision 1.24
sys/arch/atari/conf/MILAN.in: revision 1.25
sys/dev/ic/ne2000.c: revision 1.71
sys/dev/ic/ne2000.c: revision 1.72
sys/arch/atari/dev/if_ne_mb.c: revision 1.1
sys/arch/atari/dev/if_ne_mb.c: revision 1.2
sys/arch/atari/conf/MILAN-PCIIDE: revision 1.69
sys/arch/atari/conf/HADES.in: revision 1.10
sys/arch/atari/conf/HADES.in: revision 1.11
sys/arch/x68k/dev/if_ne_neptune.c: revision 1.20
sys/dev/isa/if_ne_isa.c: revision 1.27
sys/arch/atari/atari/autoconf.c: revision 1.57
sys/dev/ic/ne2000.c: revision 1.62
sys/dev/isapnp/if_ne_isapnp.c: revision 1.27
sys/arch/atari/conf/files.atari: revision 1.117
sys/arch/atari/conf/HADES: revision 1.88
sys/arch/atari/conf/GENERIC.in: revision 1.85
sys/dev/ic/ne2000.c: revision 1.65
sys/dev/ic/ne2000.c: revision 1.66
sys/dev/ic/ne2000.c: revision 1.68
sys/arch/atari/conf/MILAN-ISAIDE: revision 1.65
distrib/notes/atari/hardware: revision 1.24
sys/conf/files: revision 1.980
sys/dev/ic/ne2000var.h: revision 1.21
sys/arch/x68k/dev/if_ne_intio.c: revision 1.16
sys/dev/ic/dp8390.c: revision 1.74
sys/dev/ic/dp8390.c: revision 1.75
Added NE2000 with 8bit bus width support.
reviewd by tsutsui@ at tech-kern ML.
Fix a wrong calculation bug around RX ring buffer memory address
slipped in about sixteen years ago. Fortunately, it had been working
for ages because some devices used address zero and other devices
ignored wrong higher bits.
Tested on we(4) (SMC Elite Ultra) and ne(4) (NE2000 compatible
named UL0001) on ISA.
Note FreeBSD also uses the same correct value in their ed(4) driver.
Now dp8390_config() calculates mem_ring correctly so
no longer need to override it in ne2000_attach().
Use roundup2() in <sys/param.h> rather than a conditional.
Also fix a wrong mem_ring calculation in dp8390_ipkdb_attach().
Put several fixes to ne(4) driver for better 8 bit mode support,
especially on RTL8019AS which is also used for non-ISA local bus of
embedded controllers and some m68k machines like atari and x68k.
* move RTL8019 probe and attach code from each bus attachment
to MI ne2000_detect() and ne2000_attach()
* change a method for backend and attachment to specify 8 bit mode
to use a new sc->sc_quirk member, instead of sc->sc_dmawidth
* handle more NE2000 8 bit mode specific settings, including
bus_space(9) access width and available size of buffer memory
* add a function to detect NE2000 8 bit mode
(disabled by default, but enalbed by options NE2000_DETECT_8BIT
to avoid possible regression on various ISA clones)
* fix ipkdb attachment accordingly (untested)
Tested on two NE2000 ISA variants (RTL8019AS and another clone named UL0001)
in both 8 bit and 16 bit mode on i386. "Looks good" from nonaka@.
See my post on tech-kern for details:
http://mail-index.NetBSD.org/tech-kern/2010/02/26/msg007423.html
No need to override mem_ring value in ne2000_ipkdb_attach()
since a wrong calculation in dp8390_ipkdb_attach() was fixed.
Don't warn about DMA timeout during probe.
Add support for the EtherNEC.
The EtherNEC is yet another user designed device for Atari machines,
an NE2000 based ISA board connected to Atari's ROM cartridge slot with
simple but ingenious interface and cartridge port adapter, and
it's the most available network solution for the old Atari machines.
See following pages for more details about EtherNEC:
http://hardware.atari.org/ether/
http://home.arcor.de/thomas.redelberger/prj/atari/etherne/
http://www.freemint.org/ethernec/ethernec.html
Also note EtherNEC.
Use callout_schedule(9) rather than callout_reset(9) on polling
as callout(9) man says.
Remove EtherNEC from HADES and MILAN.
They have ISA so no one will bother to connect ISA NE2000 via EtherNEC.
Regen from HADES.in rev 1.11 and MILAN.in rev 1.25:
Remove EtherNEC from HADES and MILAN.
They have ISA so no one will bother to connect ISA NE2000 via EtherNEC.
 1.19.8.1  28-Apr-2009  skrll Sync with HEAD.
 1.23.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.26.24.1  28-Aug-2013  rmind sync with head
 1.26.20.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.26.10.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.27.30.1  10-Jun-2019  christos Sync with HEAD
 1.27.28.1  28-Jul-2018  pgoyette Sync with HEAD

RSS XML Feed