aboutsummaryrefslogtreecommitdiff
path: root/sys/modules/em/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Remove residual blank line at start of MakefileWarner Losh2024-07-151-1/+0
| | | | | | | This is a residual of the $FreeBSD$ removal. MFC After: 3 days (though I'll just run the command on the branches) Sponsored by: Netflix
* sys: Remove $FreeBSD$: one-line sh patternWarner Losh2023-08-161-2/+0
| | | | Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
* e1000: remove duplicated phy codesGuinan Sun2021-09-171-3/+3
| | | | | | | | | | | | | | | | | Add two files base.c and base.h to reduce the redundancy in the silicon family code. Remove the code duplication from e1000_82575 files. Clean family specific functions from base. Fix up a stray and duplicate function declaration. Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: Sasha Neftin <sasha.neftin@intel.com> Signed-off-by: Guinan Sun <guinanx.sun@intel.com> Reviewed-by: Wei Zhao <wei.zhao1@intel.com> Approved by: imp Obtained from: DPDK (44dddd14059f151f39f7e075b887decfc9a10f11) MFC after: 1 week
* if_em.ko: fix module build outside of kernel build environmentEugene Grosbein2020-12-061-1/+1
| | | | | | | MFC after: 3 days Notes: svn path=/head/; revision=368391
* Use symlinks for kernel modules rather than hardlinksAlan Somers2019-04-201-1/+1
| | | | | | | | | | | | | | When aliasing a kernel module to a different name (ie if_igb for if_em), it's better to use symlinks than hard links. kldxref will omit entries for the links, ensuring that the loaded module has the correct name. Reviewed by: imp MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19979 Notes: svn path=/head/; revision=346441
* Hard link if_igb.ko to if_em.ko. Use a LINK directive to ensure thatSean Bruno2017-10-101-2/+1
| | | | | | | | | | | | this is more friendly to the tree. Tested this with loader.conf:if_igb_load="YES" and it does the right thing. Submitted by: Ian Lepore <ian@freebsd.org> Notes: svn path=/head/; revision=324500
* Fix symlink if_igb.ko in -current such that its relative and doesn'tSean Bruno2017-10-071-1/+1
| | | | | | | | | | end up with non-standard DESTDIR information in its symlink. This can happen very trivially if the release scripts are used. Sponsored by: Limelight Networks Notes: svn path=/head/; revision=324406
* sys/modules: normalize .CURDIR-relative paths to SRCTOPEnji Cooper2017-03-041-2/+2
| | | | | | | | | | | This simplifies make output/logic Tested with: `cd sys/modules; make ALL_MODULES=` on amd64 MFC after: 1 month Sponsored by: Dell EMC Isilon Notes: svn path=/head/; revision=314651
* Deprecate kernel configuration option EM_MULTIQUEUE now that the em(4)Sean Bruno2017-01-121-1/+1
| | | | | | | driver conforms to iflib. Notes: svn path=/head/; revision=311980
* Set CFLAGS correctly for sys/modules/emSean Bruno2017-01-101-1/+1
| | | | | | | | | Unbreak gcc sparc64 builds (or any gcc build that uses em(4)). Reported by: lidl@freebsd.org Notes: svn path=/head/; revision=311900
* Migrate e1000 to the IFLIB framework:Sean Bruno2017-01-101-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - em(4) igb(4) and lem(4) - deprecate the igb device from kernel configurations - create a symbolic link in /boot/kernel from if_em.ko to if_igb.ko Devices tested: - 82574L - I218-LM - 82546GB - 82579LM - I350 - I217 Please report problems to freebsd-net@freebsd.org Partial review from jhb and suggestions on how to *not* brick folks who originally would have lost their igbX device. Submitted by: mmacy@nextbsd.org MFC after: 2 weeks Relnotes: yes Sponsored by: Limelight Networks and Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D8299 Notes: svn path=/head/; revision=311849
* Include opt_em.h now that there are actual kernel compile options for em(4).Sean Bruno2015-06-091-1/+2
| | | | | | | | | Submitted by: jfv MFC after: 2 week Sponsored by: Limelight Networks Notes: svn path=/head/; revision=284179
* Change EM_MULTIQUEUE to a real kernconf entry and enable support forSean Bruno2015-06-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | up to 2 rx/tx queues for the 82574. Program the 82574 to enable 5 msix vectors, assign 1 to each rx queue, 1 to each tx queue and 1 to the link handler. Inspired by DragonFlyBSD, enable some RSS logic for handling tx queue handling/processing. Move multiqueue handler functions so that they line up better in a diff review to if_igb.c Always enqueue tx work to be done in em_mq_start, if unable to acquire the TX lock, then this will be processed in the background later by the taskqueue. Remove mbuf argument from em_start_mq_locked() as the work is always enqueued. (stolen from igb) Setup TARC, TXDCTL and RXDCTL registers for better performance and stability in multiqueue and singlequeue implementations. Handle Intel errata 3 and generic multiqueue behavior with the initialization of TARC(0) and TARC(1) Bind interrupt threads to cpus in order. (stolen from igb) Add 2 new DDB functions, one to display the queue(s) and their settings and one to reset the adapter. Primarily used for debugging. In the multiqueue configuration, bump RXD and TXD ring size to max for the adapter (4096). Setup an RDTR of 64 and an RADV of 128 in multiqueue configuration to cut down on the number of interrupts. RADV was arbitrarily set to 2x RDTR and can be adjusted as needed. Cleanup the display in top a bit to make it clearer where the taskqueue threads are running and what they should be doing. Ensure that both queues are processed by em_local_timer() by writing them both to the IMS register to generate soft interrupts. Ensure that an soft interrupt is generated when em_msix_link() is run so that any races between assertion of the link/status interrupt and a rx/tx interrupt are handled. Document existing tuneables: hw.em.eee_setting, hw.em.msix, hw.em.smart_pwr_down, hw.em.sbp Document use of hw.em.num_queues and the new kernel option EM_MULTIQUEUE Thanks to Intel for their continued support of FreeBSD. Reviewed by: erj jfv hiren gnn wblock Obtained from: Intel Corporation MFC after: 2 weeks Relnotes: Yes Sponsored by: Limelight Networks Differential Revision: https://reviews.freebsd.org/D1994 Notes: svn path=/head/; revision=283959
* Move most of the 15 variations on generating opt_inet.h andWarner Losh2014-08-041-14/+0
| | | | | | | | | opt_inet6.h into kmod.mk by forcing almost everybody to eat the same dogfood. While at it, consolidate the opt_bpf.h and opt_mroute.h targets here too. Notes: svn path=/head/; revision=269540
* Use src.opts.mk in preference to bsd.own.mk except where we need stuffWarner Losh2014-05-061-1/+1
| | | | | | | from the latter. Notes: svn path=/head/; revision=265420
* Change the E1000 driver option header handling to match theJack F Vogel2013-07-121-1/+16
| | | | | | | | | | | | | ixgbe driver. As it was, when building them as a module INET and INET6 are not defined. In these drivers it does not cause a panic, however it does result in different behavior in the ioctl routine when you are using a module vs static, and I think the behavior should be the same. MFC after: 3 days Notes: svn path=/head/; revision=253303
* Add a source file needed for module linking.Konstantin Belousov2012-07-061-1/+1
| | | | | | | MFC after: 4 days Notes: svn path=/head/; revision=238181
* Remove unnecessary clean target in em(4), igb(4) and ixgbe(4).Pyun YongHyeon2010-08-161-6/+0
| | | | | | | | | While here also remove man target in igb(4). Reviewed by: jfv Notes: svn path=/head/; revision=211400
* Add new source to the loadable em build, thoughtJack F Vogel2010-07-011-1/+2
| | | | | | | it wasnt needed but it is. Notes: svn path=/head/; revision=209637
* Update to igb and em:Jack F Vogel2010-03-291-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | em revision 7.0.0: - Using driver devclass, seperate legacy (pre-pcie) code into a seperate source file. This will at least help protect against regression issues. It compiles along with em, and is transparent to end use, devices in each appear to be 'emX'. When using em in a modular form this also allows the legacy stuff to be defined out. - Add tx and rx rings as in igb, in the 82574 this becomes actual multiqueue for the first time (2 queues) while in other PCIE adapters its just make code cleaner. - Add RX mbuf handling logic that matches igb, this will eliminate packet drops due to temporary mbuf shortage. igb revision 1.9.3: - Following the ixgbe code, use a new approach in what was called 'get_buf', the routine now has been made independent of rxeof, it now does the update to the engine TDT register, this design allows temporary mbuf resources to become non-critical, not requiring a packet to be discarded, instead it just returns and does not increment the tail pointer. - With the above change it was also unnecessary to keep 'spare' maps around, since we do not have the discard issue. - Performance tweaks and improvements to the code also. MFC in a week Notes: svn path=/head/; revision=205869
* Add opt_inet.h which has been needed since r184717 introducingBjoern A. Zeeb2008-11-121-1/+1
| | | | | | | | | checks for #ifdef INET. MFC after: 54 days Notes: svn path=/head/; revision=184894
* Change to build module with new directory treeJack F Vogel2008-07-301-10/+4
| | | | | | | MFC after:ASAP Notes: svn path=/head/; revision=181029
* This delta has a few important items:Jack F Vogel2008-04-251-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | PR 122839 is fixed in both em and in igb Second, the issue on building modules since the static kernel build changes is now resolved. I was not able to get the fancier directory hierarchy working, but this works, both em and igb build as modules now. Third, there is now support in em for two new NICs, Hartwell (or 82574) is a low cost PCIE dual port adapter that has MSIX, for this release it uses 3 vectors only, RX, TX, and LINK. In the next release I will add a second TX and RX queue. Also, there is support here for ICH10, the followon to ICH9. Both of these are early releases, general availability will follow soon. Fourth: On Hartwell and ICH10 we now have IEEE 1588 PTP support, I have implemented this in a provisional way so that early adopters may try and comment on the functionality. The IOCTL structure may change. This feature is off by default, you need to edit the Makefile and add the EM_TIMESYNC define to get the code. Enjoy all!! Notes: svn path=/head/; revision=178523
* This update primarily addresses the ability to have both the emJack F Vogel2008-04-021-1/+1
| | | | | | | | | and the igb driver static in the kernel. But it also reflects some other bug fixes in my development stream at Intel. PR 122373 is also fixed in this code. Notes: svn path=/head/; revision=177867
* Remove option headers that do not exist and are not usedAntoine Brodin2008-03-271-2/+2
| | | | | | | | | | from the Makefiles in sys/modules. (opt_devfs.h, opt_bdg.h, opt_emu10kx.h and opt_uslcom.h) Approved by: rwatson (mentor) Notes: svn path=/head/; revision=177671
* This change introduces a split to the Intel E1000 driver, now rather thanJack F Vogel2008-02-291-1/+1
| | | | | | | | | | | | | | | | | just em, there is an igb driver (this follows behavior with our Linux drivers). All adapters up to the 82575 are supported in em, and new client/desktop support will continue to be in that adapter. The igb driver is for new server NICs like the 82575 and its followons. Advanced features for virtualization and performance will be in this driver. Also, both drivers now have shared code that is up to the latest we have released. Some stylistic changes as well. Enjoy :) Notes: svn path=/head/; revision=176667
* Fix kldloading if_em by compiling missing source file.Lukas Ertl2007-05-071-1/+1
| | | | Notes: svn path=/head/; revision=169341
* Place a '#' at the front of the line holding a $FreeBSD$ ID tag. WhileRobert Watson2007-05-041-1/+1
| | | | | | | it actually compiles without this, it's still a good idea. Notes: svn path=/head/; revision=169249
* Absolute pathname in the Makefile was broken, thisJack F Vogel2007-05-041-3/+1
| | | | | | | version should work correctly. Notes: svn path=/head/; revision=169243
* Merge in the new driver (6.5.0) of Intel. This has a newJack F Vogel2007-05-041-5/+19
| | | | | | | | | | | | | | | | | | | shared code infrastructure that is family specific and modular. There is also support for our latest gigabit nic, the 82575 that is MSI/X and multiqueue capable. The new shared code changes some interfaces to the core code but testing at Intel has been going on for months, it is fairly stable. I have attempted to be careful in retaining any fixes that CURRENT had and we did not, I apologize in advance if any thing gets clobbered, I'm sure I'll hear about it :) Approved by pdeuskar Notes: svn path=/head/; revision=169240
* Remove bridge(4) from the tree. if_bridge(4) is a full functionalMax Laier2005-09-271-1/+1
| | | | | | | | | | | replacement and has additional features which make it superior. Discussed on: -arch Reviewed by: thompsa X-MFC-after: never (RELENG_6 as transition period) Notes: svn path=/head/; revision=150636
* style.Makefile(5)David E. O'Brien2004-06-091-4/+6
| | | | Notes: svn path=/head/; revision=130258
* Don't roll our own clean target, the default oneMaxime Henrion2002-10-271-5/+0
| | | | | | | works better. Notes: svn path=/head/; revision=106048
* Added support for 82545EM and 82546EB based adapters.Prafulla Deuskar2002-06-031-6/+5
| | | | | | | | | Added Vlan support. MFC after: 1 week Notes: svn path=/head/; revision=97785
* This is the first commit of the Intel gigabit driver forPrafulla Deuskar2001-12-021-0/+13
PRO/1000 cards. Submitted by:Prafulla Deuskar Reviewed by: Paul Saab MFC after:1 week Notes: svn path=/head/; revision=87189