History log of /openbsd-current/sys/dev/pci/if_devar.h
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.41 11-Mar-2022 mpi

Constify struct cfattach.


# 1.40 09-Jan-2022 jsg

spelling
feedback and ok tb@ jmc@ ok ratchov@


Revision tags: OPENBSD_6_5_BASE OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.39 25-Nov-2018 jmc

spelling; from miod


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE
# 1.38 14-Aug-2016 dlg

u_quad_t -> uint64_t

de is amazing(tm). it really should be cut back and simplified a bit.


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.37 04-Nov-2015 dlg

replace the ifqueues used for tulip_txq and _rxq with mbuf_lists.


# 1.36 11-Sep-2015 stsp

Make room for media types of the future. Extend the ifmedia word to 64 bits.
This changes numbers of the SIOCSIFMEDIA and SIOCGIFMEDIA ioctls and
grows struct ifmediareq.

Old ifconfig and dhclient binaries can still assign addresses, however
the 'media' subcommand stops working. Recompiling ifconfig and dhclient
with new headers before a reboot should not be necessary unless in very
special circumstances where non-default media settings must be used to
get link and console access is not available.

There may be some MD fallout but that will be cleared up later.

ok deraadt miod
with help and suggestions from several sharks attending l2k15


Revision tags: OPENBSD_5_8_BASE
# 1.35 26-Jun-2015 kettenis

There is no excuse for using dma_alloc(9) when a bus_dma_tag_t is available.

deraadt@ thinks this isn't worth it, but reyk@ and mlarkin@ tested it anyway


# 1.34 25-Jun-2015 deraadt

Ensure the setup block is DMA reachable.
tested by reyk, mlarkin, others


Revision tags: OPENBSD_5_7_BASE
# 1.33 10-Feb-2015 mpi

Do not abuse `rcvif'.

ok deraadt@


Revision tags: OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.32 03-Apr-2011 jasper

use nitems(); no binary change for drivers that are compiled on amd64.

ok claudio@


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE
# 1.31 02-May-2010 miod

Remove unused softc member.


Revision tags: OPENBSD_4_6_BASE OPENBSD_4_7_BASE
# 1.30 19-Jun-2009 naddy

Tidy up allocation of transmit DMA maps and generalize it to also
tidy up allocation of receive DMA maps. Previously the driver was
using DMA maps off the free list without fully allocating them, in
order to save two or three lines releasing them on error paths.
This was causing it to reuse a map already in use when under load.
From NetBSD.

Revert a workaround against a NULL pointer dereference on alpha
when invoking bus_dmaamp_sync.

All submitted by Brad.


Revision tags: OPENBSD_4_5_BASE
# 1.29 15-Aug-2008 naddy

Prefer unaligned accesses over copying the rx buffer on all archs that can
handle it, not only i386. ok brad@


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE
# 1.28 03-Sep-2007 krw

Typos from miod. 'intrrupt' -> 'interrupt' in some comments.


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.27 08-Jul-2006 brad

print the chipset revision too.


# 1.26 31-May-2006 brad

allow TULIP_TXTIMER to fit in the softc field tulip_txtimer.

From NetBSD


# 1.25 06-May-2006 brad

restore ALTQ support which was lost with rev 1.87


Revision tags: OPENBSD_3_9_BASE
# 1.24 15-Nov-2005 mickey

all csr offsets are bus_size_t


# 1.23 07-Nov-2005 brad

add bus_dma support.

From NetBSD

tested on i386/alpha.

ok martin@ krw@


# 1.22 25-Sep-2005 brad

remove more indirection through typedef's and macros


# 1.21 08-Sep-2005 brad

remove some trailing whitespace


# 1.20 06-Sep-2005 brad

- fix up the ioctl handler and make it use ether_ioctl() too
- remove more unused code
- remove some of the macros to make this more readable

ok krw@


# 1.19 06-Sep-2005 brad

another round of removing ifdef crud from this driver.

ok krw@ martin@


Revision tags: OPENBSD_3_8_BASE
# 1.18 16-Jul-2005 brad

remove __BROKEN_INDIRECT_CONFIG cruft


# 1.17 16-Apr-2005 deraadt

remove lots of crud from this driver, makes it fit on the alpha media


# 1.16 29-Mar-2005 martin

pull over some minor fixes from NetBSD:

- use ETHER_ADDR_LEN where apropriate
- consistency fixes in mem-io vs io-io logic
- fixes for 21143 in full-duplex mode
- minor nits here and there

ok brad@


Revision tags: OPENBSD_3_7_BASE
# 1.15 08-Nov-2004 deraadt

put more debug stuff inside #ifdef, to make the driver a wee bit smaller
for the alpha


Revision tags: OPENBSD_3_2_BASE OPENBSD_3_3_BASE OPENBSD_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B UBC_SYNC_A UBC_SYNC_B
# 1.14 02-Jun-2002 deraadt

withough -> without


Revision tags: OPENBSD_3_0_BASE OPENBSD_3_1_BASE UBC_BASE
# 1.13 18-Jul-2001 mickey

branches: 1.13.4;
fix vtophys usage, mainly ppc-required; art@ ok and tried to bribe^H^H^H^H^Hmotivate me to bussydma 'em too (;


# 1.12 05-May-2001 art

Get rid of CLSIZE and all related stuff.
CLSIZE -> 1
CLBYTES -> PAGE_SIZE
OLOFSET -> PAGE_MASK
etc.
At the same time some archs needed some cleaning in vmparam.h so that
goes in at the same time.


Revision tags: OPENBSD_2_9_BASE
# 1.11 20-Feb-2001 mickey

for ethernet ifaces attach bpf from ether_ifattach; jason@, aaron@, itojun@ ok


# 1.10 03-Feb-2001 mickey

new timeout, space control


Revision tags: OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE SMP_BASE kame_19991208
# 1.9 11-Jan-1999 jason

branches: 1.9.6;
remove pnic stuff


Revision tags: OPENBSD_2_4_BASE
# 1.8 08-Oct-1998 jason

Support for the Lite-On PNIC found on Netgear FA310TX rev D1 and
several other boards.


# 1.7 28-Aug-1998 rahnds

Changes to make if_de driver work on big endian machines with a 21040 based
card. Tested on i386 and alpha. Could use some cleanup to swab constants
instead of variables, so that the compiler can do the work, not the processor.


# 1.6 07-Aug-1998 pefo

com.c needs to know about mem mapped ports in ppc systems.

ncr.c and if_de.c needs some hooks for systems with ncr and dec
ether chips on the motherboard that runs on odd clocks and doesn't
support a srom. srom is emulated in machine dependent code.

big endian support for ncr and dec ether finished. the 21040
have some more coding requirements if it is to run BE since
it does not have the descriptor endian swap configuration bit.


Revision tags: OPENBSD_2_3_BASE
# 1.5 16-Nov-1997 millert

pull #ifdef __alpha__ out from a #ifdef __NetBSD__


# 1.4 13-Nov-1997 rees

merge netbsd 1.22


Revision tags: OPENBSD_2_2_BASE
# 1.3 20-Oct-1997 pefo

Few minor changes to make if_de work big endian on 21140


# 1.2 29-Jul-1997 downsj

Support BSD/OS 2.1, add OpenBSD tags.


# 1.1 18-Jun-1997 dm

csapuntz@lcs.mit.edu: Port of NetBSD tulip driver. Works with new (21140-AC-based) SMC Etherpower cards.


# 1.40 09-Jan-2022 jsg

spelling
feedback and ok tb@ jmc@ ok ratchov@


Revision tags: OPENBSD_6_5_BASE OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.39 25-Nov-2018 jmc

spelling; from miod


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE
# 1.38 14-Aug-2016 dlg

u_quad_t -> uint64_t

de is amazing(tm). it really should be cut back and simplified a bit.


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.37 04-Nov-2015 dlg

replace the ifqueues used for tulip_txq and _rxq with mbuf_lists.


# 1.36 11-Sep-2015 stsp

Make room for media types of the future. Extend the ifmedia word to 64 bits.
This changes numbers of the SIOCSIFMEDIA and SIOCGIFMEDIA ioctls and
grows struct ifmediareq.

Old ifconfig and dhclient binaries can still assign addresses, however
the 'media' subcommand stops working. Recompiling ifconfig and dhclient
with new headers before a reboot should not be necessary unless in very
special circumstances where non-default media settings must be used to
get link and console access is not available.

There may be some MD fallout but that will be cleared up later.

ok deraadt miod
with help and suggestions from several sharks attending l2k15


Revision tags: OPENBSD_5_8_BASE
# 1.35 26-Jun-2015 kettenis

There is no excuse for using dma_alloc(9) when a bus_dma_tag_t is available.

deraadt@ thinks this isn't worth it, but reyk@ and mlarkin@ tested it anyway


# 1.34 25-Jun-2015 deraadt

Ensure the setup block is DMA reachable.
tested by reyk, mlarkin, others


Revision tags: OPENBSD_5_7_BASE
# 1.33 10-Feb-2015 mpi

Do not abuse `rcvif'.

ok deraadt@


Revision tags: OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.32 03-Apr-2011 jasper

use nitems(); no binary change for drivers that are compiled on amd64.

ok claudio@


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE
# 1.31 02-May-2010 miod

Remove unused softc member.


Revision tags: OPENBSD_4_6_BASE OPENBSD_4_7_BASE
# 1.30 19-Jun-2009 naddy

Tidy up allocation of transmit DMA maps and generalize it to also
tidy up allocation of receive DMA maps. Previously the driver was
using DMA maps off the free list without fully allocating them, in
order to save two or three lines releasing them on error paths.
This was causing it to reuse a map already in use when under load.
From NetBSD.

Revert a workaround against a NULL pointer dereference on alpha
when invoking bus_dmaamp_sync.

All submitted by Brad.


Revision tags: OPENBSD_4_5_BASE
# 1.29 15-Aug-2008 naddy

Prefer unaligned accesses over copying the rx buffer on all archs that can
handle it, not only i386. ok brad@


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE
# 1.28 03-Sep-2007 krw

Typos from miod. 'intrrupt' -> 'interrupt' in some comments.


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.27 08-Jul-2006 brad

print the chipset revision too.


# 1.26 31-May-2006 brad

allow TULIP_TXTIMER to fit in the softc field tulip_txtimer.

From NetBSD


# 1.25 06-May-2006 brad

restore ALTQ support which was lost with rev 1.87


Revision tags: OPENBSD_3_9_BASE
# 1.24 15-Nov-2005 mickey

all csr offsets are bus_size_t


# 1.23 07-Nov-2005 brad

add bus_dma support.

From NetBSD

tested on i386/alpha.

ok martin@ krw@


# 1.22 25-Sep-2005 brad

remove more indirection through typedef's and macros


# 1.21 08-Sep-2005 brad

remove some trailing whitespace


# 1.20 06-Sep-2005 brad

- fix up the ioctl handler and make it use ether_ioctl() too
- remove more unused code
- remove some of the macros to make this more readable

ok krw@


# 1.19 06-Sep-2005 brad

another round of removing ifdef crud from this driver.

ok krw@ martin@


Revision tags: OPENBSD_3_8_BASE
# 1.18 16-Jul-2005 brad

remove __BROKEN_INDIRECT_CONFIG cruft


# 1.17 16-Apr-2005 deraadt

remove lots of crud from this driver, makes it fit on the alpha media


# 1.16 29-Mar-2005 martin

pull over some minor fixes from NetBSD:

- use ETHER_ADDR_LEN where apropriate
- consistency fixes in mem-io vs io-io logic
- fixes for 21143 in full-duplex mode
- minor nits here and there

ok brad@


Revision tags: OPENBSD_3_7_BASE
# 1.15 08-Nov-2004 deraadt

put more debug stuff inside #ifdef, to make the driver a wee bit smaller
for the alpha


Revision tags: OPENBSD_3_2_BASE OPENBSD_3_3_BASE OPENBSD_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B UBC_SYNC_A UBC_SYNC_B
# 1.14 02-Jun-2002 deraadt

withough -> without


Revision tags: OPENBSD_3_0_BASE OPENBSD_3_1_BASE UBC_BASE
# 1.13 18-Jul-2001 mickey

branches: 1.13.4;
fix vtophys usage, mainly ppc-required; art@ ok and tried to bribe^H^H^H^H^Hmotivate me to bussydma 'em too (;


# 1.12 05-May-2001 art

Get rid of CLSIZE and all related stuff.
CLSIZE -> 1
CLBYTES -> PAGE_SIZE
OLOFSET -> PAGE_MASK
etc.
At the same time some archs needed some cleaning in vmparam.h so that
goes in at the same time.


Revision tags: OPENBSD_2_9_BASE
# 1.11 20-Feb-2001 mickey

for ethernet ifaces attach bpf from ether_ifattach; jason@, aaron@, itojun@ ok


# 1.10 03-Feb-2001 mickey

new timeout, space control


Revision tags: OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE SMP_BASE kame_19991208
# 1.9 11-Jan-1999 jason

branches: 1.9.6;
remove pnic stuff


Revision tags: OPENBSD_2_4_BASE
# 1.8 08-Oct-1998 jason

Support for the Lite-On PNIC found on Netgear FA310TX rev D1 and
several other boards.


# 1.7 28-Aug-1998 rahnds

Changes to make if_de driver work on big endian machines with a 21040 based
card. Tested on i386 and alpha. Could use some cleanup to swab constants
instead of variables, so that the compiler can do the work, not the processor.


# 1.6 07-Aug-1998 pefo

com.c needs to know about mem mapped ports in ppc systems.

ncr.c and if_de.c needs some hooks for systems with ncr and dec
ether chips on the motherboard that runs on odd clocks and doesn't
support a srom. srom is emulated in machine dependent code.

big endian support for ncr and dec ether finished. the 21040
have some more coding requirements if it is to run BE since
it does not have the descriptor endian swap configuration bit.


Revision tags: OPENBSD_2_3_BASE
# 1.5 16-Nov-1997 millert

pull #ifdef __alpha__ out from a #ifdef __NetBSD__


# 1.4 13-Nov-1997 rees

merge netbsd 1.22


Revision tags: OPENBSD_2_2_BASE
# 1.3 20-Oct-1997 pefo

Few minor changes to make if_de work big endian on 21140


# 1.2 29-Jul-1997 downsj

Support BSD/OS 2.1, add OpenBSD tags.


# 1.1 18-Jun-1997 dm

csapuntz@lcs.mit.edu: Port of NetBSD tulip driver. Works with new (21140-AC-based) SMC Etherpower cards.


# 1.39 25-Nov-2018 jmc

spelling; from miod


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE
# 1.38 14-Aug-2016 dlg

u_quad_t -> uint64_t

de is amazing(tm). it really should be cut back and simplified a bit.


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.37 04-Nov-2015 dlg

replace the ifqueues used for tulip_txq and _rxq with mbuf_lists.


# 1.36 11-Sep-2015 stsp

Make room for media types of the future. Extend the ifmedia word to 64 bits.
This changes numbers of the SIOCSIFMEDIA and SIOCGIFMEDIA ioctls and
grows struct ifmediareq.

Old ifconfig and dhclient binaries can still assign addresses, however
the 'media' subcommand stops working. Recompiling ifconfig and dhclient
with new headers before a reboot should not be necessary unless in very
special circumstances where non-default media settings must be used to
get link and console access is not available.

There may be some MD fallout but that will be cleared up later.

ok deraadt miod
with help and suggestions from several sharks attending l2k15


Revision tags: OPENBSD_5_8_BASE
# 1.35 26-Jun-2015 kettenis

There is no excuse for using dma_alloc(9) when a bus_dma_tag_t is available.

deraadt@ thinks this isn't worth it, but reyk@ and mlarkin@ tested it anyway


# 1.34 25-Jun-2015 deraadt

Ensure the setup block is DMA reachable.
tested by reyk, mlarkin, others


Revision tags: OPENBSD_5_7_BASE
# 1.33 10-Feb-2015 mpi

Do not abuse `rcvif'.

ok deraadt@


Revision tags: OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.32 03-Apr-2011 jasper

use nitems(); no binary change for drivers that are compiled on amd64.

ok claudio@


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE
# 1.31 02-May-2010 miod

Remove unused softc member.


Revision tags: OPENBSD_4_6_BASE OPENBSD_4_7_BASE
# 1.30 19-Jun-2009 naddy

Tidy up allocation of transmit DMA maps and generalize it to also
tidy up allocation of receive DMA maps. Previously the driver was
using DMA maps off the free list without fully allocating them, in
order to save two or three lines releasing them on error paths.
This was causing it to reuse a map already in use when under load.
From NetBSD.

Revert a workaround against a NULL pointer dereference on alpha
when invoking bus_dmaamp_sync.

All submitted by Brad.


Revision tags: OPENBSD_4_5_BASE
# 1.29 15-Aug-2008 naddy

Prefer unaligned accesses over copying the rx buffer on all archs that can
handle it, not only i386. ok brad@


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE
# 1.28 03-Sep-2007 krw

Typos from miod. 'intrrupt' -> 'interrupt' in some comments.


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.27 08-Jul-2006 brad

print the chipset revision too.


# 1.26 31-May-2006 brad

allow TULIP_TXTIMER to fit in the softc field tulip_txtimer.

From NetBSD


# 1.25 06-May-2006 brad

restore ALTQ support which was lost with rev 1.87


Revision tags: OPENBSD_3_9_BASE
# 1.24 15-Nov-2005 mickey

all csr offsets are bus_size_t


# 1.23 07-Nov-2005 brad

add bus_dma support.

From NetBSD

tested on i386/alpha.

ok martin@ krw@


# 1.22 25-Sep-2005 brad

remove more indirection through typedef's and macros


# 1.21 08-Sep-2005 brad

remove some trailing whitespace


# 1.20 06-Sep-2005 brad

- fix up the ioctl handler and make it use ether_ioctl() too
- remove more unused code
- remove some of the macros to make this more readable

ok krw@


# 1.19 06-Sep-2005 brad

another round of removing ifdef crud from this driver.

ok krw@ martin@


Revision tags: OPENBSD_3_8_BASE
# 1.18 16-Jul-2005 brad

remove __BROKEN_INDIRECT_CONFIG cruft


# 1.17 16-Apr-2005 deraadt

remove lots of crud from this driver, makes it fit on the alpha media


# 1.16 29-Mar-2005 martin

pull over some minor fixes from NetBSD:

- use ETHER_ADDR_LEN where apropriate
- consistency fixes in mem-io vs io-io logic
- fixes for 21143 in full-duplex mode
- minor nits here and there

ok brad@


Revision tags: OPENBSD_3_7_BASE
# 1.15 08-Nov-2004 deraadt

put more debug stuff inside #ifdef, to make the driver a wee bit smaller
for the alpha


Revision tags: OPENBSD_3_2_BASE OPENBSD_3_3_BASE OPENBSD_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B UBC_SYNC_A UBC_SYNC_B
# 1.14 02-Jun-2002 deraadt

withough -> without


Revision tags: OPENBSD_3_0_BASE OPENBSD_3_1_BASE UBC_BASE
# 1.13 18-Jul-2001 mickey

branches: 1.13.4;
fix vtophys usage, mainly ppc-required; art@ ok and tried to bribe^H^H^H^H^Hmotivate me to bussydma 'em too (;


# 1.12 05-May-2001 art

Get rid of CLSIZE and all related stuff.
CLSIZE -> 1
CLBYTES -> PAGE_SIZE
OLOFSET -> PAGE_MASK
etc.
At the same time some archs needed some cleaning in vmparam.h so that
goes in at the same time.


Revision tags: OPENBSD_2_9_BASE
# 1.11 20-Feb-2001 mickey

for ethernet ifaces attach bpf from ether_ifattach; jason@, aaron@, itojun@ ok


# 1.10 03-Feb-2001 mickey

new timeout, space control


Revision tags: OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE SMP_BASE kame_19991208
# 1.9 11-Jan-1999 jason

branches: 1.9.6;
remove pnic stuff


Revision tags: OPENBSD_2_4_BASE
# 1.8 08-Oct-1998 jason

Support for the Lite-On PNIC found on Netgear FA310TX rev D1 and
several other boards.


# 1.7 28-Aug-1998 rahnds

Changes to make if_de driver work on big endian machines with a 21040 based
card. Tested on i386 and alpha. Could use some cleanup to swab constants
instead of variables, so that the compiler can do the work, not the processor.


# 1.6 07-Aug-1998 pefo

com.c needs to know about mem mapped ports in ppc systems.

ncr.c and if_de.c needs some hooks for systems with ncr and dec
ether chips on the motherboard that runs on odd clocks and doesn't
support a srom. srom is emulated in machine dependent code.

big endian support for ncr and dec ether finished. the 21040
have some more coding requirements if it is to run BE since
it does not have the descriptor endian swap configuration bit.


Revision tags: OPENBSD_2_3_BASE
# 1.5 16-Nov-1997 millert

pull #ifdef __alpha__ out from a #ifdef __NetBSD__


# 1.4 13-Nov-1997 rees

merge netbsd 1.22


Revision tags: OPENBSD_2_2_BASE
# 1.3 20-Oct-1997 pefo

Few minor changes to make if_de work big endian on 21140


# 1.2 29-Jul-1997 downsj

Support BSD/OS 2.1, add OpenBSD tags.


# 1.1 18-Jun-1997 dm

csapuntz@lcs.mit.edu: Port of NetBSD tulip driver. Works with new (21140-AC-based) SMC Etherpower cards.


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.38 14-Aug-2016 dlg

u_quad_t -> uint64_t

de is amazing(tm). it really should be cut back and simplified a bit.


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.37 04-Nov-2015 dlg

replace the ifqueues used for tulip_txq and _rxq with mbuf_lists.


# 1.36 11-Sep-2015 stsp

Make room for media types of the future. Extend the ifmedia word to 64 bits.
This changes numbers of the SIOCSIFMEDIA and SIOCGIFMEDIA ioctls and
grows struct ifmediareq.

Old ifconfig and dhclient binaries can still assign addresses, however
the 'media' subcommand stops working. Recompiling ifconfig and dhclient
with new headers before a reboot should not be necessary unless in very
special circumstances where non-default media settings must be used to
get link and console access is not available.

There may be some MD fallout but that will be cleared up later.

ok deraadt miod
with help and suggestions from several sharks attending l2k15


Revision tags: OPENBSD_5_8_BASE
# 1.35 26-Jun-2015 kettenis

There is no excuse for using dma_alloc(9) when a bus_dma_tag_t is available.

deraadt@ thinks this isn't worth it, but reyk@ and mlarkin@ tested it anyway


# 1.34 25-Jun-2015 deraadt

Ensure the setup block is DMA reachable.
tested by reyk, mlarkin, others


Revision tags: OPENBSD_5_7_BASE
# 1.33 10-Feb-2015 mpi

Do not abuse `rcvif'.

ok deraadt@


Revision tags: OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.32 03-Apr-2011 jasper

use nitems(); no binary change for drivers that are compiled on amd64.

ok claudio@


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE
# 1.31 02-May-2010 miod

Remove unused softc member.


Revision tags: OPENBSD_4_6_BASE OPENBSD_4_7_BASE
# 1.30 19-Jun-2009 naddy

Tidy up allocation of transmit DMA maps and generalize it to also
tidy up allocation of receive DMA maps. Previously the driver was
using DMA maps off the free list without fully allocating them, in
order to save two or three lines releasing them on error paths.
This was causing it to reuse a map already in use when under load.
From NetBSD.

Revert a workaround against a NULL pointer dereference on alpha
when invoking bus_dmaamp_sync.

All submitted by Brad.


Revision tags: OPENBSD_4_5_BASE
# 1.29 15-Aug-2008 naddy

Prefer unaligned accesses over copying the rx buffer on all archs that can
handle it, not only i386. ok brad@


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE
# 1.28 03-Sep-2007 krw

Typos from miod. 'intrrupt' -> 'interrupt' in some comments.


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.27 08-Jul-2006 brad

print the chipset revision too.


# 1.26 31-May-2006 brad

allow TULIP_TXTIMER to fit in the softc field tulip_txtimer.

From NetBSD


# 1.25 06-May-2006 brad

restore ALTQ support which was lost with rev 1.87


Revision tags: OPENBSD_3_9_BASE
# 1.24 15-Nov-2005 mickey

all csr offsets are bus_size_t


# 1.23 07-Nov-2005 brad

add bus_dma support.

From NetBSD

tested on i386/alpha.

ok martin@ krw@


# 1.22 25-Sep-2005 brad

remove more indirection through typedef's and macros


# 1.21 08-Sep-2005 brad

remove some trailing whitespace


# 1.20 06-Sep-2005 brad

- fix up the ioctl handler and make it use ether_ioctl() too
- remove more unused code
- remove some of the macros to make this more readable

ok krw@


# 1.19 06-Sep-2005 brad

another round of removing ifdef crud from this driver.

ok krw@ martin@


Revision tags: OPENBSD_3_8_BASE
# 1.18 16-Jul-2005 brad

remove __BROKEN_INDIRECT_CONFIG cruft


# 1.17 16-Apr-2005 deraadt

remove lots of crud from this driver, makes it fit on the alpha media


# 1.16 29-Mar-2005 martin

pull over some minor fixes from NetBSD:

- use ETHER_ADDR_LEN where apropriate
- consistency fixes in mem-io vs io-io logic
- fixes for 21143 in full-duplex mode
- minor nits here and there

ok brad@


Revision tags: OPENBSD_3_7_BASE
# 1.15 08-Nov-2004 deraadt

put more debug stuff inside #ifdef, to make the driver a wee bit smaller
for the alpha


Revision tags: OPENBSD_3_2_BASE OPENBSD_3_3_BASE OPENBSD_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE SMP_SYNC_A SMP_SYNC_B UBC_SYNC_A UBC_SYNC_B
# 1.14 02-Jun-2002 deraadt

withough -> without


Revision tags: OPENBSD_3_0_BASE OPENBSD_3_1_BASE UBC_BASE
# 1.13 18-Jul-2001 mickey

branches: 1.13.4;
fix vtophys usage, mainly ppc-required; art@ ok and tried to bribe^H^H^H^H^Hmotivate me to bussydma 'em too (;


# 1.12 05-May-2001 art

Get rid of CLSIZE and all related stuff.
CLSIZE -> 1
CLBYTES -> PAGE_SIZE
OLOFSET -> PAGE_MASK
etc.
At the same time some archs needed some cleaning in vmparam.h so that
goes in at the same time.


Revision tags: OPENBSD_2_9_BASE
# 1.11 20-Feb-2001 mickey

for ethernet ifaces attach bpf from ether_ifattach; jason@, aaron@, itojun@ ok


# 1.10 03-Feb-2001 mickey

new timeout, space control


Revision tags: OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE SMP_BASE kame_19991208
# 1.9 11-Jan-1999 jason

branches: 1.9.6;
remove pnic stuff


Revision tags: OPENBSD_2_4_BASE
# 1.8 08-Oct-1998 jason

Support for the Lite-On PNIC found on Netgear FA310TX rev D1 and
several other boards.


# 1.7 28-Aug-1998 rahnds

Changes to make if_de driver work on big endian machines with a 21040 based
card. Tested on i386 and alpha. Could use some cleanup to swab constants
instead of variables, so that the compiler can do the work, not the processor.


# 1.6 07-Aug-1998 pefo

com.c needs to know about mem mapped ports in ppc systems.

ncr.c and if_de.c needs some hooks for systems with ncr and dec
ether chips on the motherboard that runs on odd clocks and doesn't
support a srom. srom is emulated in machine dependent code.

big endian support for ncr and dec ether finished. the 21040
have some more coding requirements if it is to run BE since
it does not have the descriptor endian swap configuration bit.


Revision tags: OPENBSD_2_3_BASE
# 1.5 16-Nov-1997 millert

pull #ifdef __alpha__ out from a #ifdef __NetBSD__


# 1.4 13-Nov-1997 rees

merge netbsd 1.22


Revision tags: OPENBSD_2_2_BASE
# 1.3 20-Oct-1997 pefo

Few minor changes to make if_de work big endian on 21140


# 1.2 29-Jul-1997 downsj

Support BSD/OS 2.1, add OpenBSD tags.


# 1.1 18-Jun-1997 dm

csapuntz@lcs.mit.edu: Port of NetBSD tulip driver. Works with new (21140-AC-based) SMC Etherpower cards.