Revision tags: release/5.3.0_cvs, release/5.3.0 |
|
#
2756272a |
| 29-Jun-2004 |
Warner Losh <imp@FreeBSD.org> |
Remove saved_* from dc_softc. They are now no longer needed.
Submitted by: Marius Strobl
|
Revision tags: release/4.10.0_cvs, release/4.10.0, release/5.2.1_cvs, release/5.2.1, release/5.2.0_cvs, release/5.2.0 |
|
#
4ff4a9be |
| 08-Jan-2004 |
Don Lewis <truckman@FreeBSD.org> |
The transmit frame status is stored in the last transmit descriptor for the frame, not the first. It is probably also not safe to free the mbuf chain as soon as the OWN bit is cleared on the first d
The transmit frame status is stored in the last transmit descriptor for the frame, not the first. It is probably also not safe to free the mbuf chain as soon as the OWN bit is cleared on the first descriptor since the chip may not be done copying the frame into the transmit FIFO. Revert the part of of busdma conversion (if_dc.c rev 1.115) which changed dc_txeof() to look for the status in the first descriptor and free the mbuf chain when processing the first descriptor for the frame, and revert the matching changes elsewhere in the driver. This part of the busdma change caused the driver to report spurious collisions and output errors, even when running in full-duplex mode. Reverting the mbuf chain handling slightly complicates dc_dma_map_txbuf(), since it is responsible for setting the OWN bits on the descriptors, but does not normally have direct access to the mbuf chain.
Tested by: Dejan Lesjak <dejan.lesjak at ijs.si> alpha/<Intel 21143 10/100BaseTX> "Xin LI" <delphij at frontfree.net> i386/<Macronix 98713 10/100BaseTX> Wiktor Niesiobedzki <bsd at w.evip.pl> i386/<3Com OfficeConnect 10/100B>
Reviewed by: mux
show more ...
|
#
773c505f |
| 06-Dec-2003 |
MIHIRA Sanpei Yoshiro <sanpei@FreeBSD.org> |
Add support for ELECOM/Laneed CardBus FastEtherner Card(LD-CBL/TXA)
Submitted by: Masahiro Yamagishi <night@pluto.dti.ne.jp> Approved by: re (scottl)
|
#
5120abbf |
| 14-Nov-2003 |
Sam Leffler <sam@FreeBSD.org> |
Drop the driver lock around calls to if_input to avoid a LOR when the packets are immediately returned for sending (e.g. when bridging or packet forwarding). There are more efficient ways to do thi
Drop the driver lock around calls to if_input to avoid a LOR when the packets are immediately returned for sending (e.g. when bridging or packet forwarding). There are more efficient ways to do this but for now use the least intrusive approach.
Reviewed by: imp, rwatson
show more ...
|
Revision tags: release/4.9.0_cvs, release/4.9.0 |
|
#
87f4fa15 |
| 05-Oct-2003 |
Martin Blapp <mbr@FreeBSD.org> |
Ignore CSR13, CSR14, CSR15 'Media Specific Data' registers for 21143 based cards which use SIA mode.
This fixes 10mbit mode for ZNYX ZX346Q cards and other 21143 based cards.
PR: 32118 Submitted b
Ignore CSR13, CSR14, CSR15 'Media Specific Data' registers for 21143 based cards which use SIA mode.
This fixes 10mbit mode for ZNYX ZX346Q cards and other 21143 based cards.
PR: 32118 Submitted by: Rene de Vries <rene@tunix.nl> Geert Jan de Groot <GeertJan.deGroot@tunix.nl>
Obtained from: BSDI
MFC after: 2 weeks
show more ...
|
#
4c16d09e |
| 19-Jul-2003 |
Warner Losh <imp@FreeBSD.org> |
Add support for FA-511; Submitted by: Kenneth P. Stox; Pr 42858
|
#
e7b9ab3a |
| 10-Jul-2003 |
Bill Paul <wpaul@FreeBSD.org> |
Add support for a bunch of Microsoft networking products:
- MN-110 10/100 USB ethernet (ADMtek Pegasus II, if_aue) - MN-120 10/100 cardbus (ADMtek Centaur-C, if_dc) - MN-130 10/100 PCI (ADMtek Centa
Add support for a bunch of Microsoft networking products:
- MN-110 10/100 USB ethernet (ADMtek Pegasus II, if_aue) - MN-120 10/100 cardbus (ADMtek Centaur-C, if_dc) - MN-130 10/100 PCI (ADMtek Centaur-P, if_dc)
Also update dc(4) man page to mention support for MN-120 and MN-130.
show more ...
|
#
af4358c7 |
| 09-Jul-2003 |
Maxime Henrion <mux@FreeBSD.org> |
Make the dc(4) driver endian-clean, so to that it works on sparc64. There are such cards in Netra X1 boxes, which should thus be fully supported now.
Tested by: jake
|
#
56e5e7ae |
| 06-Jul-2003 |
Maxime Henrion <mux@FreeBSD.org> |
Convert the dc(4) driver to the busdma API. This is a necessary step to have this driver working on sparc64. It still needs to be made endian-clean before it can work there.
Special thanks to drag
Convert the dc(4) driver to the busdma API. This is a necessary step to have this driver working on sparc64. It still needs to be made endian-clean before it can work there.
Special thanks to dragonk@evilcode.net for sending me a dc(4) card so that I was able to do this work.
Many cheers to all the people that tested this change, thanks to them, this change shouldn't break anything :-).
Tested by: marcel (i386 and ia64), ru (i386), wilko (alpha), mbr (i386), wpaul (i386) and Will Saxon <WillS@housing.ufl.edu> (i386)
show more ...
|
#
e351d778 |
| 08-Jun-2003 |
Martin Blapp <mbr@FreeBSD.org> |
Add ADMtek ADM9511 and ADM9513 device ID's.
PR: PR51823 Submitted by: Kaho Toshikazu <kaho@elam.kais.kyoto-u.ac.jp> Reviewed by: phk MFC after: 2 days
|
Revision tags: release/5.1.0_cvs, release/5.1.0 |
|
#
7eac366b |
| 12-May-2003 |
Martin Blapp <mbr@FreeBSD.org> |
Add support for 3Com OfficeConnect 10/100B.
PR: 49059, 50747 Submitted by: Dax Eckenberg <daxbert@dweebsoft.com> Reviewed by: imp, jhb Approved by: jhb MFC after: 2 weeks
|
#
97f91728 |
| 18-Apr-2003 |
MIHIRA Sanpei Yoshiro <sanpei@FreeBSD.org> |
Add support for Planex FNW-3602-T(CardBus 100M/10M).
Submitted by: kazz <kazz@v001.vaio.ne.jp> Obtained from: [bsd-nomads:16637]
|
Revision tags: release/4.8.0_cvs, release/4.8.0, release/5.0.0_cvs, release/5.0.0 |
|
#
948c244d |
| 10-Jan-2003 |
Warner Losh <imp@FreeBSD.org> |
Add preliminary support for the Hawking PN672TX CardBus cards.
# Preliminary because there are some subtle things the NetBSD driver does # that we don't do yet. My card works for me w/o them.
|
#
38deb45f |
| 09-Jan-2003 |
Tom Rhodes <trhodes@FreeBSD.org> |
Add support for the Davicom DM9009 chipset.
PR: 46859 Submitted by: Boaz Haberman <boaz@ool-182f8b09.dyn.optonline.net> Approved by: rwatson
|
#
0f953c65 |
| 18-Dec-2002 |
Semen Ustimenko <semenu@FreeBSD.org> |
Fix the missspelt letter in DC_CTYPE_PUP_AUTOSENSe define.
Submitted by: marius@alchemy.franken.de MFC after: 3 days
|
Revision tags: release/4.7.0_cvs |
|
#
3097aa70 |
| 07-Oct-2002 |
Warner Losh <imp@FreeBSD.org> |
Dynamically configure the width of the srom. This code comes from OpenBSD who got the code (or the idea) from the NetBSD tlp driver.
This gets some cardbus dc cards working (either completely or ne
Dynamically configure the width of the srom. This code comes from OpenBSD who got the code (or the idea) from the NetBSD tlp driver.
This gets some cardbus dc cards working (either completely or nearly so). It also appears to get additional pci cards working, without breaking working ones.
# Maybe some additional work is needed here. Also, the cardbus attachment # might need to match on the CIS rather than on the vendor/device so we have # a finer level of detail as to what the card is. Technically, the # vendor/device fields are undefined for CardBus (even though most cards are # using common silicon with pci models).
show more ...
|
#
7e346229 |
| 20-Sep-2002 |
Martin Blapp <mbr@FreeBSD.org> |
Enable the automatic TX underrun recovery for the ADMtek chips. This solves cvsup update on my laptop which aborts after a while without this patch.
PR: 34236 Reviewed by: phk MFC after: 2 weeks
|
Revision tags: release/4.6.2_cvs, release/4.6.2, release/4.6.1, release/4.6.0_cvs |
|
#
e8388e14 |
| 06-May-2002 |
Mitsuru IWASAKI <iwasaki@FreeBSD.org> |
Add suspend/resume code mostly merged from fxp/rl driver. This is temporary hack, better and generalized solution probably should be implemented at lower layer(MII or PCI?). Tested by: shoko.araki@so
Add suspend/resume code mostly merged from fxp/rl driver. This is temporary hack, better and generalized solution probably should be implemented at lower layer(MII or PCI?). Tested by: shoko.araki@soliton.co.jp MFC after: 1 week
show more ...
|
Revision tags: release/4.5.0_cvs, release/4.4.0_cvs |
|
#
45fe21a0 |
| 16-Jan-2002 |
Doug Ambrisko <ambrisko@FreeBSD.org> |
Forgot one part of the VLAN support for the dc(4) driver.
Pointed out by: Shin-ichi YOSHIMOTO <yosimoto@waishi.jp>
|
#
e4fc250c |
| 14-Dec-2001 |
Luigi Rizzo <luigi@FreeBSD.org> |
Device Polling code for -current.
Non-SMP, i386-only, no polling in the idle loop at the moment.
To use this code you must compile a kernel with
options DEVICE_POLLING
and at runtime enab
Device Polling code for -current.
Non-SMP, i386-only, no polling in the idle loop at the moment.
To use this code you must compile a kernel with
options DEVICE_POLLING
and at runtime enable polling with
sysctl kern.polling.enable=1
The percentage of CPU reserved to userland can be set with
sysctl kern.polling.user_frac=NN (default is 50)
while the remainder is used by polling device drivers and netisr's. These are the only two variables that you should need to touch. There are a few more parameters in kern.polling but the default values are adequate for all purposes. See the code in kern_poll.c for more details on them.
Polling in the idle loop will be implemented shortly by introducing a kernel thread which does the job. Until then, the amount of CPU dedicated to polling will never exceed (100-user_frac). The equivalent (actually, better) code for -stable is at
http://info.iet.unipi.it/~luigi/polling/
and also supports polling in the idle loop.
NOTE to Alpha developers: There is really nothing in this code that is i386-specific. If you move the 2 lines supporting the new option from sys/conf/{files,options}.i386 to sys/conf/{files,options} I am pretty sure that this should work on the Alpha as well, just that I do not have a suitable test box to try it. If someone feels like trying it, I would appreciate it.
NOTE to other developers: sure some things could be done better, and as always I am open to constructive criticism, which a few of you have already given and I greatly appreciated. However, before proposing radical architectural changes, please take some time to possibly try out this code, or at the very least read the comments in kern_poll.c, especially re. the reason why I am using a soft netisr and cannot (I believe) replace it with a simple timeout.
Quick description of files touched by this commit:
sys/conf/files.i386 new file kern/kern_poll.c sys/conf/options.i386 new option sys/i386/i386/trap.c poll in trap (disabled by default) sys/kern/kern_clock.c initialization and hardclock hooks. sys/kern/kern_intr.c minor swi_net changes sys/kern/kern_poll.c the bulk of the code. sys/net/if.h new flag sys/net/if_var.h declaration for functions used in device drivers. sys/net/netisr.h NETISR_POLL sys/dev/fxp/if_fxp.c sys/dev/fxp/if_fxpvar.h sys/pci/if_dc.c sys/pci/if_dcreg.h sys/pci/if_sis.c sys/pci/if_sisreg.h device driver modifications
show more ...
|
#
2dfc960a |
| 11-Dec-2001 |
Luigi Rizzo <luigi@FreeBSD.org> |
Avoid an unnecessary copy of a packet if it is already in a single mbuf. Introduce an additional device flag for those NICs which require the transmit buffers to be aligned to 32-bit boundaries.
(th
Avoid an unnecessary copy of a packet if it is already in a single mbuf. Introduce an additional device flag for those NICs which require the transmit buffers to be aligned to 32-bit boundaries.
(the equivalen fix for STABLE is slightly simpler because there are no supported chips which require this alignment there.)
show more ...
|
#
617b3dd7 |
| 25-Oct-2001 |
Luigi Rizzo <luigi@FreeBSD.org> |
Defs for three (unused so far) bits in PCI command/status register were off by one bit.
|
#
1af8bec7 |
| 04-Sep-2001 |
Bill Paul <wpaul@FreeBSD.org> |
Add support for Conexant LANfinity miniPCI controllers. People who have laptops with this chip should test this and report back as I don't have access to this hardware myself. People with -stable sys
Add support for Conexant LANfinity miniPCI controllers. People who have laptops with this chip should test this and report back as I don't have access to this hardware myself. People with -stable systems should try the patch at:
http://www.freebsd.org/~wpaul/conexant.patch.gz
Submitted by: Phil Kernick <Phil@Kernick.org>
show more ...
|
Revision tags: release/4.3.0_cvs, release/4.3.0 |
|
#
d467c136 |
| 22-Feb-2001 |
Bill Paul <wpaul@FreeBSD.org> |
Apply patch to allow TX underrun handling without issuing a complete chip reset. Just temporarily turn off the transmitter instead.
Submitted by: Stephen McKay <mckay@freebsd.org>
|
#
9ed346ba |
| 09-Feb-2001 |
Bosko Milekic <bmilekic@FreeBSD.org> |
Change and clean the mutex lock interface.
mtx_enter(lock, type) becomes:
mtx_lock(lock) for sleep locks (MTX_DEF-initialized locks) mtx_lock_spin(lock) for spin locks (MTX_SPIN-initialized)
simil
Change and clean the mutex lock interface.
mtx_enter(lock, type) becomes:
mtx_lock(lock) for sleep locks (MTX_DEF-initialized locks) mtx_lock_spin(lock) for spin locks (MTX_SPIN-initialized)
similarily, for releasing a lock, we now have:
mtx_unlock(lock) for MTX_DEF and mtx_unlock_spin(lock) for MTX_SPIN. We change the caller interface for the two different types of locks because the semantics are entirely different for each case, and this makes it explicitly clear and, at the same time, it rids us of the extra `type' argument.
The enter->lock and exit->unlock change has been made with the idea that we're "locking data" and not "entering locked code" in mind.
Further, remove all additional "flags" previously passed to the lock acquire/release routines with the exception of two:
MTX_QUIET and MTX_NOSWITCH
The functionality of these flags is preserved and they can be passed to the lock/unlock routines by calling the corresponding wrappers:
mtx_{lock, unlock}_flags(lock, flag(s)) and mtx_{lock, unlock}_spin_flags(lock, flag(s)) for MTX_DEF and MTX_SPIN locks, respectively.
Re-inline some lock acq/rel code; in the sleep lock case, we only inline the _obtain_lock()s in order to ensure that the inlined code fits into a cache line. In the spin lock case, we inline recursion and actually only perform a function call if we need to spin. This change has been made with the idea that we generally tend to avoid spin locks and that also the spin locks that we do have and are heavily used (i.e. sched_lock) do recurse, and therefore in an effort to reduce function call overhead for some architectures (such as alpha), we inline recursion for this case.
Create a new malloc type for the witness code and retire from using the M_DEV type. The new type is called M_WITNESS and is only declared if WITNESS is enabled.
Begin cleaning up some machdep/mutex.h code - specifically updated the "optimized" inlined code in alpha/mutex.h and wrote MTX_LOCK_SPIN and MTX_UNLOCK_SPIN asm macros for the i386/mutex.h as we presently need those.
Finally, caught up to the interface changes in all sys code.
Contributors: jake, jhb, jasone (in no particular order)
show more ...
|