summaryrefslogtreecommitdiffstats
path: root/sys/dev/em
Commit message (Collapse)AuthorAgeFilesLines
* Add facilities for tuning the "em" driver's interrupt delays withoutjdp2003-08-013-44/+148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | recompiling the driver. See the comments near the top of "if_em.h" for descriptions of these delays. Four new loader tunables control the system-wide default values: hw.em.tx_int_delay hw.em.rx_int_delay hw.em.tx_abs_int_delay hw.em.rx_abs_int_delay The tunables are specified in microseconds. The valid range is 0-67108 usec., and 0 means that the timer is disabled. There are also four new sysctls (actually, a set of four for each "em" device in the system) to query and change the interrupt delays after the system is up: hw.em0.tx_int_delay hw.em0.rx_int_delay hw.em0.tx_abs_int_delay (not present for 82542/3/4 adapters) hw.em0.rx_abs_int_delay (not present for 82542/3/4 adapters) It seems to be OK to change these values even while the adapter is passing traffic. Approved by: Prafulla Deuskar <pdeuskar@FreeBSD.ORG> MFC after: 4 weeks
* Correct comments to indicate that the EM_RADV and EM_TADV parametersjdp2003-07-171-2/+2
| | | | are not applicable to the 82544.
* The em(4) driver has been converted to busdma and doesn't usemux2003-07-041-5/+0
| | | | | vtophys() anymore, so remove the alpha hack which defines vtophys() to alpha_XXX_dmamap().
* Mega busdma API commit.scottl2003-07-011-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | Add two new arguments to bus_dma_tag_create(): lockfunc and lockfuncarg. Lockfunc allows a driver to provide a function for managing its locking semantics while using busdma. At the moment, this is used for the asynchronous busdma_swi and callback mechanism. Two lockfunc implementations are provided: busdma_lock_mutex() performs standard mutex operations on the mutex that is specified from lockfuncarg. dftl_lock() is a panic implementation and is defaulted to when NULL, NULL are passed to bus_dma_tag_create(). The only time that NULL, NULL should ever be used is when the driver ensures that bus_dmamap_load() will not be deferred. Drivers that do not provide their own locking can pass busdma_lock_mutex,&Giant args in order to preserve the former behaviour. sparc64 and powerpc do not provide real busdma_swi functions, so this is largely a noop on those platforms. The busdma_swi on is64 is not properly locked yet, so warnings will be emitted on this platform when busdma callback deferrals happen. If anyone gets panics or warnings from dflt_lock() being called, please let me know right away. Reviewed by: tmm, gibbs
* Add support for Quad port adapterpdeuskar2003-06-055-374/+488
| | | | | | | | Add sysctl's to display statistics/debug_info Set WAIT_FOR_AUTONEG_DEFAULT to zero by default Increment packet in/out statistics inline instead of every two seconds. MFC after: 3 days
* Fix a printf() format error which broke the ia64 GENERIC build.des2003-05-061-1/+2
|
* - Fix breakage on PAE enabled kernelpdeuskar2003-05-032-8/+10
| | | | | | - Don't use vtophys when you can get physical address using bus_dma API Submitted by: jake (Jake Burkholder)
* - Bus DMA'fy the driverpdeuskar2003-05-022-237/+459
| | | | | | - Use htole* macros where appropriate so that the driver could work on non-x86 architectures - Use m_getcl() instead of MGETHDR/MCLGET macros Submitted by: sam (Sam Leffler)
* Tell the upper layer(s) that we support long frames.pdeuskar2003-04-181-0/+4
| | | | | | | Not doing this caused the vlan mtu to be reduced by 4 bytes. Submitted by: Doug Ambrisko (ambrisko) MFC after: 1 day
* - Express hard dependencies on bus (pci, isa, pccard) andmdodd2003-04-151-1/+3
| | | | | | | | network layer (ether). - Don't abuse module names to facilitate ifconfig module loading; such abuse isn't really needed. (And if we do need type information associated with a module then we should make it explicit and not use hacks.)
* Added support for 82541 and 82547 based adapters.pdeuskar2003-03-217-623/+1974
| | | | | | | - These have Intel gigabit PHY - 82547 uses CSA interface MFC after: 1 week
* Back out M_* changes, per decision of the TRB.imp2003-02-191-2/+2
| | | | Approved by: trb
* Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.alfred2003-01-211-2/+2
| | | | Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
* The README refers to a LICENSE file, so add that file too.pdeuskar2003-01-071-0/+29
| | | | | | BTW the license is also embedded in the source files. MFC after: 1 day
* Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,schweikh2003-01-011-1/+1
| | | | especially in troff files.
* - Move to array based indexing for TX/RX descriptor/buffer managementpdeuskar2002-12-233-545/+526
| | | | | | | | | - Added support for ITR (interrupt throttle register). This feature is available on adapters based on 82545 and above - Fixed problem with vlan support when traffic has priority bits set. (kern/45907) PR: kern/45907 MFC after: 1 week
* Fix IFF_ALLMULTI handling.luigi2002-11-251-7/+7
| | | | | Reviewed by: pdeuskar (maintainer) Approved by: re
* Add polling support to the "em" driver.luigi2002-11-251-4/+59
| | | | | Reviewed by: pdeuskar (maintainer) Approved by: re
* network interface driver changes:sam2002-11-142-22/+15
| | | | | | | | | | | | | | o don't strip the Ethernet header from inbound packets; pass packets up the stack intact (required significant changes to some drivers) o reference common definitions in net/ethernet.h (e.g. ETHER_ALIGN) o track ether_ifattach/ether_ifdetach API changes o track bpf changes (use BPF_TAP and BPF_MTAP) o track vlan changes (ifnet capabilities, revised processing scheme, etc.) o use if_input to pass packets "up" o call ether_ioctl for default handling of ioctls Reviewed by: many Approved by: re
* - Set RS (Report Status) bit on all descriptors of a packet instead of just ↵pdeuskar2002-11-086-515/+763
| | | | | | | | | | | the last one. - Set RDTR to zero by default instead of 28. - Fixed a problem with TX hangs with jumbo frames when number of fragments in the mbuf chain is large. - Added support for 82540EP based cards. MFC after: 3 days
* Corrected license in the source files. It should say "MUST" instead of "MAY".pdeuskar2002-09-245-104/+94
| | | | MFC after: 2 days
* Back out TX/RX descriptor/buffer management changes from earier commit.pdeuskar2002-08-262-216/+312
| | | | | | We are having panics with the driver under stress with jumbo frames. Unfortunately we didnot catch it during our regular test cycle. I am going to MFC the backout immediately.
* TX/RX descriptor/buffer management changes.pdeuskar2002-08-212-312/+216
| | | | | | | Use array based scheme instead of queueing macros. Submitted by: Luigi Rizzo (rizzo@icir.org) MFC after: 3 days
* - Use IO mode to reset the controller (82544 and beyond)pdeuskar2002-07-166-103/+429
| | | | | | | - Read the Mac address only once during attach. (This fixes the failover issue observed using the bonding driver) MFC after: 3 days
* Removed unneeded files.pdeuskar2002-06-184-5322/+0
| | | | | | | if_em_fxhw.[c,h] and if_em_phy.[c,h] have been merged into one [c,h] file. MFC after: 3 days
* Added support for 82545EM and 82546EB based adapters.pdeuskar2002-06-036-1751/+7198
| | | | | | Added Vlan support. MFC after: 1 week
* Fix new gcc-3.1 warnings. I think this gets GENERIC compiling cleanlypeter2002-05-241-1/+1
| | | | again.
* Make em driver compilable on IA64/alpha.pdeuskar2002-05-021-4/+4
| | | | | Submitted by: peter MFC after: 3 days
* Follow NetBSD and s/IFM_1000_TX/IFM_1000_T/phk2002-04-281-4/+4
|
* Added support for 82540EM based cards.pdeuskar2002-04-067-1011/+1107
| | | | | | Cosmetic changes to make code more unix-like. MFC after: 1 week
* Remove __P.alfred2002-03-201-43/+42
|
* - Added support for receive in multiplepdeuskar2002-02-137-4951/+5234
| | | | | | | | | descriptors. This simplifies code for jumbo frames. - Cleaned up coding conventions to make code more unix-like. - Cleaned up code in if_em_fxhw.c and if_em_phy.c. Added relevant comments. MFC after: 1 week
* -Remove unneeded include stddef.hpdeuskar2001-12-201-1/+0
| | | | | | | | -Modify modules Makefile so that em driver compiles only on i386 platform. (Alpha not supported yet) PR: kern/32993 MFC after: 1
* Fixed two problems:pdeuskar2001-12-062-9/+5
| | | | | | | | | | 1. Changed incorrect conditional in fxhw.c which would never evaluate to true. Thanks to John Polstra for pointing that out. 2. Write to PCI config space by default, enabling memory access and bus master enable. Submitted by:Prafulla Deuskar MFC after:3 days
* This is the first commit of the Intel gigabit driver forpdeuskar2001-12-027-0/+7573
PRO/1000 cards. Submitted by:Prafulla Deuskar Reviewed by: Paul Saab MFC after:1 week
OpenPOWER on IntegriCloud