aboutsummaryrefslogtreecommitdiff
path: root/sys/modules/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* New 1-Wire bus implementation. 1-Wire controller is abstracted, thoughWarner Losh2015-08-271-0/+1
| | | | | | | | | | | | | | | | | | | | | only gpiobus configured via FDT is supported. Bus enumeration is supported. Devices are created for each device found. 1-Wire temperature controllers are supported, but other drivers could be written. Temperatures are polled and reported via a sysctl. Errors are reported via sysctl counters. Mis-wired bus detection is included for more trouble shooting. See ow(4), owc(4) and ow_temp(4) for details of what's supported and known issues. This has been tested on Raspberry Pi-B, Pi2 and Beagle Bone Black with up to 7 devices. Differential Revision: https://reviews.freebsd.org/D2956 Relnotes: yes MFC after: 2 weeks Reviewed by: loos@ (with many insightful comments) Notes: svn path=/head/; revision=287225
* Import ioat(4) driverConrad Meyer2015-08-241-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I/OAT is also referred to as Crystal Beach DMA and is a Platform Storage Extension (PSE) on some Intel server platforms. This driver currently supports DMA descriptors only and is part of a larger effort to upstream an interconnect between multiple systems using the Non-Transparent Bridge (NTB) PSE. For now, this driver is only built on AMD64 platforms. It may be ported to work on i386 later, if that is desired. The hardware is exclusive to x86. Further documentation on ioat(4), including API documentation and usage, can be found in the new manual page. Bring in a test tool, ioatcontrol(8), in tools/tools/ioat. The test tool is not hooked up to the build and is not intended for end users. Submitted by: jimharris, Carl Delsey <carl.r.delsey@intel.com> Reviewed by: jimharris (reviewed my changes) Approved by: markj (mentor) Relnotes: yes Sponsored by: Intel Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D3456 Notes: svn path=/head/; revision=287117
* Add DEV_RANDOM pseudo-option and use it to "include out" random(4)Mark Murray2015-08-171-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | if desired. Retire randomdev_none.c and introduce random_infra.c for resident infrastructure. Completely stub out random(4) calls in the "without DEV_RANDOM" case. Add RANDOM_LOADABLE option to allow loadable Yarrow/Fortuna/LocallyWritten algorithm. Add a skeleton "other" algorithm framework for folks to add their own processing code. NIST, anyone? Retire the RANDOM_DUMMY option. Build modules for Yarrow, Fortuna and "other". Use atomics for the live entropy rate-tracking. Convert ints to bools for the 'seeded' logic. Move _write() function from the algorithm-specific areas to randomdev.c Get rid of reseed() function - it is unused. Tidy up the opt_*.h includes. Update documentation for random(4) modules. Fix test program (reviewers, please leave this). Differential Revision: https://reviews.freebsd.org/D3354 Reviewed by: wblock,delphij,jmg,bjk Approved by: so (/dev/random blanket) Notes: svn path=/head/; revision=286839
* Build the iwm and iwmfw modules by default on x86.Rui Paulo2015-08-081-8/+8
| | | | Notes: svn path=/head/; revision=286476
* Build if_stf(4) module only when both INET and INET6 support are enabled.Andrey V. Elsukov2015-07-301-1/+6
| | | | Notes: svn path=/head/; revision=286069
* Add Makefiles for CloudABI kernel modules.Ed Schouten2015-07-221-0/+3
| | | | | | | | | | Place all of the machine/pointer size independent code in a kernel module called 'cloudabi'. All of the 64-bit specific code goes in a separate module called 'cloudabi64'. The latter is only enabled on amd64, as it is the only architecture supported. Notes: svn path=/head/; revision=285786
* Enable pms module on amd64 for now.Benno Rice2015-07-171-0/+2
| | | | Notes: svn path=/projects/pms/; revision=285660
* Huge cleanup of random(4) code.Mark Murray2015-06-301-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * GENERAL - Update copyright. - Make kernel options for RANDOM_YARROW and RANDOM_DUMMY. Set neither to ON, which means we want Fortuna - If there is no 'device random' in the kernel, there will be NO random(4) device in the kernel, and the KERN_ARND sysctl will return nothing. With RANDOM_DUMMY there will be a random(4) that always blocks. - Repair kern.arandom (KERN_ARND sysctl). The old version went through arc4random(9) and was a bit weird. - Adjust arc4random stirring a bit - the existing code looks a little suspect. - Fix the nasty pre- and post-read overloading by providing explictit functions to do these tasks. - Redo read_random(9) so as to duplicate random(4)'s read internals. This makes it a first-class citizen rather than a hack. - Move stuff out of locked regions when it does not need to be there. - Trim RANDOM_DEBUG printfs. Some are excess to requirement, some behind boot verbose. - Use SYSINIT to sequence the startup. - Fix init/deinit sysctl stuff. - Make relevant sysctls also tunables. - Add different harvesting "styles" to allow for different requirements (direct, queue, fast). - Add harvesting of FFS atime events. This needs to be checked for weighing down the FS code. - Add harvesting of slab allocator events. This needs to be checked for weighing down the allocator code. - Fix the random(9) manpage. - Loadable modules are not present for now. These will be re-engineered when the dust settles. - Use macros for locks. - Fix comments. * src/share/man/... - Update the man pages. * src/etc/... - The startup/shutdown work is done in D2924. * src/UPDATING - Add UPDATING announcement. * src/sys/dev/random/build.sh - Add copyright. - Add libz for unit tests. * src/sys/dev/random/dummy.c - Remove; no longer needed. Functionality incorporated into randomdev.*. * live_entropy_sources.c live_entropy_sources.h - Remove; content moved. - move content to randomdev.[ch] and optimise. * src/sys/dev/random/random_adaptors.c src/sys/dev/random/random_adaptors.h - Remove; plugability is no longer used. Compile-time algorithm selection is the way to go. * src/sys/dev/random/random_harvestq.c src/sys/dev/random/random_harvestq.h - Add early (re)boot-time randomness caching. * src/sys/dev/random/randomdev_soft.c src/sys/dev/random/randomdev_soft.h - Remove; no longer needed. * src/sys/dev/random/uint128.h - Provide a fake uint128_t; if a real one ever arrived, we can use that instead. All that is needed here is N=0, N++, N==0, and some localised trickery is used to manufacture a 128-bit 0ULLL. * src/sys/dev/random/unit_test.c src/sys/dev/random/unit_test.h - Improve unit tests; previously the testing human needed clairvoyance; now the test will do a basic check of compressibility. Clairvoyant talent is still a good idea. - This is still a long way off a proper unit test. * src/sys/dev/random/fortuna.c src/sys/dev/random/fortuna.h - Improve messy union to just uint128_t. - Remove unneeded 'static struct fortuna_start_cache'. - Tighten up up arithmetic. - Provide a method to allow eternal junk to be introduced; harden it against blatant by compress/hashing. - Assert that locks are held correctly. - Fix the nasty pre- and post-read overloading by providing explictit functions to do these tasks. - Turn into self-sufficient module (no longer requires randomdev_soft.[ch]) * src/sys/dev/random/yarrow.c src/sys/dev/random/yarrow.h - Improve messy union to just uint128_t. - Remove unneeded 'staic struct start_cache'. - Tighten up up arithmetic. - Provide a method to allow eternal junk to be introduced; harden it against blatant by compress/hashing. - Assert that locks are held correctly. - Fix the nasty pre- and post-read overloading by providing explictit functions to do these tasks. - Turn into self-sufficient module (no longer requires randomdev_soft.[ch]) - Fix some magic numbers elsewhere used as FAST and SLOW. Differential Revision: https://reviews.freebsd.org/D2025 Reviewed by: vsevolod,delphij,rwatson,trasz,jmg Approved by: so (delphij) Notes: svn path=/head/; revision=284959
* Several build changes for ix and ixv:Eric Joyner2015-06-241-1/+2
| | | | | | | | | | | - Allow ix and ixv to be built seperately. - Re-enable building ix for i386 and amd64 archs - Fix ixv Makefile. Approved by: jfv (mentor) Notes: svn path=/head/; revision=284767
* Turns out amd64 is hit too by ix. When it works, turn it back on.Warner Losh2015-06-061-1/+0
| | | | Notes: svn path=/head/; revision=284087
* ix module doesn't compile on i386, so remove it from the build.Warner Losh2015-06-061-1/+1
| | | | | | | It can be restored when it builds again. Notes: svn path=/head/; revision=284084
* The linux_common module only for 64bit Linuxulators.Dmitry Chagin2015-05-291-1/+1
| | | | | | | Its my fault. Notes: svn path=/head/; revision=283681
* Move linux64 and linux_common to it's right place and make them notDmitry Chagin2015-05-291-2/+2
| | | | | | | | | depend on bhyve. Submitted by: Oliver Pinter <oliver.pinter from hardenedbsd.org> Notes: svn path=/head/; revision=283680
* Connect linux64 module to the build.Dmitry Chagin2015-05-241-0/+2
| | | | | | | | Differential Revision: https://reviews.freebsd.org/D1097 Reviewed by: emaste Notes: svn path=/head/; revision=283448
* Introduce a new module linux_common.ko which is intended for theDmitry Chagin2015-05-241-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | following primary purposes: 1. Remove the dependency of linsysfs and linprocfs modules from linux.ko, which will be architecture specific on amd64. 2. Incorporate into linux_common.ko general code for platforms on which we'll support two Linuxulator modules (for both instruction set - 32 & 64 bit). 3. Move malloc(9) declaration to linux_common.ko, to enable getting memory usage statistics properly. Currently linux_common.ko incorporates a code from linux_mib.c and linux_util.c and linprocfs, linsysfs and linux kernel modules depend on linux_common.ko. Temporarily remove dtrace garbage from linux_mib.c and linux_util.c Differential Revision: https://reviews.freebsd.org/D1072 In collaboration with: Vassilis Laganakos. Reviewed by: trasz Notes: svn path=/head/; revision=283421
* Avoid trying to build cxbge on 32-bit MIPSEd Maste2015-05-201-0/+1
| | | | | | | | | | | It lacks required 64-bit atomics. Reviewed by: imp (earlier version) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D2585 Notes: svn path=/head/; revision=283149
* sym and cxgb build on arm, add them to the build.Warner Losh2015-03-271-1/+1
| | | | | | | Differential Revision: https://reviews.freebsd.org/D514 Notes: svn path=/head/; revision=280729
* Make several modules unconditionally built, there's no need for them to beJustin Hibbits2015-03-261-15/+4
| | | | | | | | | | | hidden. These modules pass a tinderbox build. Discussed with: ian and others MFC after: 1 month Notes: svn path=/head/; revision=280692
* Correct the ixgbe entries in mips and powerpc, and add the moduleJack F Vogel2015-03-181-0/+2
| | | | | | | entries in i386/amd64 in the Makefile Notes: svn path=/head/; revision=280226
* Resolve a few build issues, add module directories back into Makefile,Jack F Vogel2015-03-171-0/+2
| | | | | | | | then correct a NETMAP problem resulting from the split, and finally temporarily disable the X550 functionality. Notes: svn path=/head/; revision=280197
* Fix build after r280182.Gleb Smirnoff2015-03-171-2/+0
| | | | Notes: svn path=/head/; revision=280185
* drm: Update the device-independent code to match Linux 3.8.13Jean-Sébastien Pédron2015-03-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | This update brings few features: o Support for the setmaster/dropmaster ioctls. For instance, they are used to run multiple X servers simultaneously. o Support for minor devices. The only user-visible change is a new entry in /dev/dri but it is useless at the moment. This is a first step to support render nodes [1]. The main benefit is to greatly reduce the diff with Linux (at the expense of an unreadable commit diff). Hopefully, next upgrades will be easier. No updates were made to the drivers, beside adapting them to API changes. [1] https://en.wikipedia.org/wiki/Direct_Rendering_Manager#Render_nodes Tested by: Many people MFC after: 1 month Relnotes: yes Notes: svn path=/head/; revision=280183
* Revert accidentally commited file from r279824. We're not quite ready toIan Lepore2015-03-091-6/+0
| | | | | | | enable dtrace module building on all arm platforms yet. Notes: svn path=/head/; revision=279827
* Add a dtb module for AM335x systems (just Beaglebone right now).Ian Lepore2015-03-091-0/+6
| | | | Notes: svn path=/head/; revision=279824
* Build the videomode kernel module by default.Hans Petter Selasky2015-03-081-0/+1
| | | | Notes: svn path=/head/; revision=279774
* Populate new KERN_OPTS from all the opt_*.h files inWarner Losh2015-02-181-0/+4
| | | | | | | | | | | | | | KERNBUILDDIR. Come up with some sensible defaults (though listing them in kmod.mk may be unwise -- we have no easy way to know what are the best sensible defaults for everything so we just catch the big stuff). Append SRCS.${opt} for each option in KERN_OPTS to SRCS to allow easy conditional compilation. Append any notion of KERN_OPTS_EXTRA to the list of kernel opts. Differential Revision: https://reviews.freebsd.org/D1530 Notes: svn path=/head/; revision=278958
* Pull in the rpi.dts -> rpi.dtb module (dtb/rpi) and have it installWarner Losh2015-02-071-0/+2
| | | | | | | rpi.dtb in /boot/dtb by default. Notes: svn path=/head/; revision=278340
* Add MK_AUTOFS knob for building and installing autofs(4), et alEnji Cooper2015-01-261-1/+5
| | | | | | | | MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=277728
* Add MK_BHYVE knob for building and installing bhyve(4), et alEnji Cooper2015-01-261-0/+3
| | | | | | | | MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=277727
* Build cuse(4) if MK_CUSE != noEnji Cooper2015-01-251-1/+4
| | | | | | | | MFC after: 1 week Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=277681
* Add MK_ISCSI knob for building the iscsi initiator, iscsi daemon, kernelEnji Cooper2015-01-251-2/+5
| | | | | | | | | | modules, etc MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=277675
* Make the linuxapi module only build when WITH_OFED=YES is specified.Hans Petter Selasky2015-01-181-0/+2
| | | | | | | | | | | | There needs to be some more testing done before it is ready for all platforms and architectures. MFC after: 1 month Sponsored by: Mellanox Technologies Reported by: bz@ Notes: svn path=/head/; revision=277319
* Start importing the basic OFED linux compatibility layer changes madeHans Petter Selasky2015-01-171-0/+2
| | | | | | | | | | | | by dumbbell@ to be able to compile this layer as a dependency module. Clean up some Makefiles and remove the no longer used OFED define. Currently only i386 and amd64 targets are supported. MFC after: 1 month Sponsored by: Mellanox Technologies Notes: svn path=/head/; revision=277302
* The sn driver isn't UCODE sourceless. While it is true there's anWarner Losh2015-01-171-2/+1
| | | | | | | | | | | | binary FPGA image that's in an include file in this directory, that include file isn't actually used. It is only for certain Trump Cards that we don't yet support. When support was anticipated for them, we got permission to include the required FPGA image in our sources under the BSDL, but didn't start actually including the file. This was done to provide a public paper trail for this file. Notes: svn path=/head/; revision=277283
* Add back a couple PC Card devices to amd64. There's only a couple ofWarner Losh2015-01-161-4/+4
| | | | | | | | them that were popular enough, so this doesn't adversly affect build times. Notes: svn path=/head/; revision=277231
* Build cxgbe(4) on powerpc64 too.Navdeep Parhar2015-01-161-1/+1
| | | | Notes: svn path=/head/; revision=277230
* Plug cxgbe(4) back into !powerpc && !arm builds, instead of building itNavdeep Parhar2015-01-161-1/+2
| | | | | | | on amd64 only. Notes: svn path=/head/; revision=277227
* Garbage collect the asr driver. Hardware for it has not been produced inScott Long2015-01-021-2/+0
| | | | | | | | | | | | roughly 10 years, and the driver has not enjoyed any significant maintenance since long before that. Despite well-meaning efforts from a number of people, myself included, it never made the jump to 64-bit and was relegated to the back-corners of i386. Now its frailty is hampering forward progress with Clang. Any renewed engineering efforts are of course welcome and can happen outside of the tree. No MFC of this is planned. Notes: svn path=/head/; revision=276526
* Temporarily unplug cxgbe(4) from !amd64 builds.Navdeep Parhar2014-12-311-1/+3
| | | | Notes: svn path=/head/; revision=276480
* Remove the old NFS client and server from head,Rick Macklem2014-12-231-3/+0
| | | | | | | | | | | | | | | which means that the NFSCLIENT and NFSSERVER kernel options will no longer work. This commit only removes the kernel components. Removal of unused code in the user utilities will be done later. This commit does not include an addition to UPDATING, but that will be committed in a few minutes. Discussed on: freebsd-fs Notes: svn path=/head/; revision=276096
* remove opensolaris cyclic code, replace with high-precision calloutsAndriy Gapon2014-12-071-7/+0
| | | | | | | | | | | | | | In the old days callout(9) had 1 tick precision and that was inadequate for some uses, e.g. DTrace profile module, so we had to emulate cyclic API and behavior. Now we can directly use callout(9) in the very few places where cyclic was used. Differential Revision: https://reviews.freebsd.org/D1161 Reviewed by: gnn, jhb, markj MFC after: 2 weeks Notes: svn path=/head/; revision=275576
* Renove faith(4) and faithd(8) from base. It looks like industryAlexander V. Chernikov2014-11-091-1/+0
| | | | | | | | | | | | have chosen different (and more traditional) stateless/statuful NAT64 as translation mechanism. Last non-trivial commits to both faith(4) and faithd(8) happened more than 12 years ago, so I assume it is time to drop RFC3142 in FreeBSD. No objections from: net@ Notes: svn path=/head/; revision=274331
* Overhaul if_gre(4).Andrey V. Elsukov2014-11-071-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Split it into two modules: if_gre(4) for GRE encapsulation and if_me(4) for minimal encapsulation within IP. gre(4) changes: * convert to if_transmit; * rework locking: protect access to softc with rmlock, protect from concurrent ioctls with sx lock; * correct interface accounting for outgoing datagramms (count only payload size); * implement generic support for using IPv6 as delivery header; * make implementation conform to the RFC 2784 and partially to RFC 2890; * add support for GRE checksums - calculate for outgoing datagramms and check for inconming datagramms; * add support for sending sequence number in GRE header; * remove support of cached routes. This fixes problem, when gre(4) doesn't work at system startup. But this also removes support for having tunnels with the same addresses for inner and outer header. * deprecate support for various GREXXX ioctls, that doesn't used in FreeBSD. Use our standard ioctls for tunnels. me(4): * implementation conform to RFC 2004; * use if_transmit; * use the same locking model as gre(4); PR: 164475 Differential Revision: D1023 No objections from: net@ Relnotes: yes Sponsored by: Yandex LLC Notes: svn path=/head/; revision=274246
* Remove duplicate macro settings (probably due to an SVN merge /faux pas/ on ↵Mark Murray2014-11-011-11/+0
| | | | | | | | | | my part. Spotted by: DES Approved by: DES(implicit) Notes: svn path=/head/; revision=273939
* This is the much-discussed major upgrade to the random(4) device, known to ↵Mark Murray2014-10-301-0/+15
| | | | | | | | | | | | | | | | | | | | | | you all as /dev/random. This code has had an extensive rewrite and a good series of reviews, both by the author and other parties. This means a lot of code has been simplified. Pluggable structures for high-rate entropy generators are available, and it is most definitely not the case that /dev/random can be driven by only a hardware souce any more. This has been designed out of the device. Hardware sources are stirred into the CSPRNG (Yarrow, Fortuna) like any other entropy source. Pluggable modules may be written by third parties for additional sources. The harvesting structures and consequently the locking have been simplified. Entropy harvesting is done in a more general way (the documentation for this will follow). There is some GREAT entropy to be had in the UMA allocator, but it is disabled for now as messing with that is likely to annoy many people. The venerable (but effective) Yarrow algorithm, which is no longer supported by its authors now has an alternative, Fortuna. For now, Yarrow is retained as the default algorithm, but this may be changed using a kernel option. It is intended to make Fortuna the default algorithm for 11.0. Interested parties are encouraged to read ISBN 978-0-470-47424-2 "Cryptography Engineering" By Ferguson, Schneier and Kohno for Fortuna's gory details. Heck, read it anyway. Many thanks to Arthur Mesh who did early grunt work, and who got caught in the crossfire rather more than he deserved to. My thanks also to folks who helped me thresh this out on whiteboards and in the odd "Hallway track", or otherwise. My Nomex pants are on. Let the feedback commence! Reviewed by: trasz,des(partial),imp(partial?),rwatson(partial?) Approved by: so(des) Notes: svn path=/head/; revision=273872
* Add vxlan interfaceBryan Venteicher2014-10-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | vxlan creates a virtual LAN by encapsulating the inner Ethernet frame in a UDP packet. This implementation is based on RFC7348. Currently, the IPv6 support is not fully compliant with the specification: we should be able to receive UPDv6 packets with a zero checksum, but we need to support RFC6935 first. Patches for this should come soon. Encapsulation protocols such as vxlan emphasize the need for the FreeBSD network stack to support batching, GRO, and GSO. Each frame has to make two trips through the network stack, and each frame will be at most MTU sized. Performance suffers accordingly. Some latest generation NICs have begun to support vxlan HW offloads that we should also take advantage of. VIMAGE support should also be added soon. Differential Revision: https://reviews.freebsd.org/D384 Reviewed by: gnn Relnotes: yes Notes: svn path=/head/; revision=273331
* - Refactor defining variables.Yoshihiro Takahashi2014-10-051-225/+98
| | | | | | | | | - Merge common modules both i386 and amd64 into one if-endif. - Sort. - There are no functional changes. Notes: svn path=/head/; revision=272561
* As per [1] Intel only supports this driver on 64bit platforms.Bjoern A. Zeeb2014-09-231-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | For now restrict it to amd64. Other architectures might be re-added later once tested. Remove the drivers from the global NOTES and files files and move them to the amd64 specifics. Remove the drivers from the i386 modules build and only leave the amd64 version. Rather than depending on "inet" depend on "pci" and make sure that ixl(4) and ixlv(4) can be compiled independently [2]. This also allows the drivers to build properly on IPv4-only or IPv6-only kernels. PR: 193824 [2] Reviewed by: eric.joyner intel.com MFC after: 3 days References: [1] http://lists.freebsd.org/pipermail/svn-src-all/2014-August/090470.html Notes: svn path=/head/; revision=272022
* Move pci/ncr to dev/ncr.Rui Paulo2014-09-231-1/+2
| | | | Notes: svn path=/head/; revision=272015
* Add XL710 device entries to NOTES, and directories to the moduleJack F Vogel2014-08-281-0/+6
| | | | | | | | | Makefile so they will be built. MFC after: 1 day Notes: svn path=/head/; revision=270755