aboutsummaryrefslogtreecommitdiff
path: root/sys/modules
Commit message (Collapse)AuthorAgeFilesLines
* Fix typo which has survived amazingly long!Ermal Luçi2009-10-141-1/+1
| | | | | | | | Reviewed by: mlaier(mentor) Approved by: re(kib) Notes: svn path=/stable/8/; revision=198083
* MFC: revision 197730Yoshihiro Takahashi2009-10-071-6/+0
| | | | | | | | | | | | | | unifdef NFSCLIENT because the nlm depends on the nfsclient even if NFSCLIENT is not defined. Now the nfslockd module works with the nfsclient module. Reviewed by: kib Approved by: re (kensmith) Notes: svn path=/stable/8/; revision=197836
* MFC: revision 197535Yoshihiro Takahashi2009-10-011-0/+7
| | | | | | | | | | | | | | Add '#define NFSCLIENT' into opt_nfs.h if the NFSCLIENT variable is 1 (the default is 1). This makes the nfslockd module works for NFS client. Reviewed by: dfr Approved by: re (kib) Notes: svn path=/stable/8/; revision=197669
* MFC r196295:Pawel Jakub Dawidek2009-08-171-1/+1
| | | | | | | | | | | | Remove OpenSolaris taskq port (it performs very poorly in our kernel) and replace it with wrappers around our taskqueue(9). To make it possible implement taskqueue_member() function which returns 1 if the given thread was created by the given taskqueue. Approved by: re (kib) Notes: svn path=/stable/8/; revision=196296
* Add 8Gb card firmware. Update some 2Gb and 4Gb f/w sets.Matt Jacob2009-08-014-0/+109
| | | | | | | | | | | Split 4Gb and 8Gb into pieces that can be either multi_id capable or not. Reviewed by: scottl, ken Approved by: re Notes: svn path=/head/; revision=196007
* Update epair(4) to the new netisr implementation and polishBjoern A. Zeeb2009-07-262-0/+9
| | | | | | | | | | | | | | | | | | | things a bit: - use dpcpu data to track the ifps with packets queued up, - per-cpu locking and driver flags - along with .nh_drainedcpu and NETISR_POLICY_CPU. - Put the mbufs in flight reference count, preventing interfaces from going away, under INVARIANTS as this is a general problem of the stack and should be solved in if.c/netisr but still good to verify the internal queuing logic. - Permit changing the MTU to virtually everythinkg like we do for loopback. Hook epair(4) up to the build. Approved by: re (kib) Notes: svn path=/head/; revision=195892
* correct setup of opt_ddb.hSam Leffler2009-07-211-1/+1
| | | | | | | | Submitted by: jkim Approved by: re (kib) Notes: svn path=/head/; revision=195810
* Enable mesh support.Rui Paulo2009-07-211-5/+6
| | | | | | | | Submitted by: jkim Approved by: re (kib) Notes: svn path=/head/; revision=195804
* Add `siis` CAM driver for SiliconImage SiI3124/3132/3531 SATA2 controllers.Alexander Motin2009-07-212-0/+9
| | | | | | | | | | | | | Driver supports Serial ATA and ATAPI devices, Port Multipliers (including FIS-based switching), hardware command queues (31 command per port) and Native Command Queuing. This is probably the second on popularity, after AHCI, type of SATA2 controllers, that benefits from using CAM, because of hardware command queuing support. Approved by: re (kib) Notes: svn path=/head/; revision=195801
* Separate the parallel scsi knowledge out of the core of the XPT, andScott Long2009-07-103-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | modularize it so that new transports can be created. Add a transport for SATA Add a periph+protocol layer for ATA Add a driver for AHCI-compliant hardware. Add a maxio field to CAM so that drivers can advertise their max I/O capability. Modify various drivers so that they are insulated from the value of MAXPHYS. The new ATA/SATA code supports AHCI-compliant hardware, and will override the classic ATA driver if it is loaded as a module at boot time or compiled into the kernel. The stack now support NCQ (tagged queueing) for increased performance on modern SATA drives. It also supports port multipliers. ATA drives are accessed via 'ada' device nodes. ATAPI drives are accessed via 'cd' device nodes. They can all be enumerated and manipulated via camcontrol, just like SCSI drives. SCSI commands are not translated to their ATA equivalents; ATA native commands are used throughout the entire stack, including camcontrol. See the camcontrol manpage for further details. Testing this code may require that you update your fstab, and possibly modify your BIOS to enable AHCI functionality, if available. This code is very experimental at the moment. The userland ABI/API has changed, so applications will need to be recompiled. It may change further in the near future. The 'ada' device name may also change as more infrastructure is completed in this project. The goal is to eventually put all CAM busses and devices until newbus, allowing for interesting topology and management options. Few functional changes will be seen with existing SCSI/SAS/FC drivers, though the userland ABI has still changed. In the future, transports specific modules for SAS and FC may appear in order to better support the topologies and capabilities of these technologies. The modularization of CAM and the addition of the ATA/SATA modules is meant to break CAM out of the mold of being specific to SCSI, letting it grow to be a framework for arbitrary transports and protocols. It also allows drivers to be written to support discrete hardware without jeopardizing the stability of non-related hardware. While only an AHCI driver is provided now, a Silicon Image driver is also in the works. Drivers for ICH1-4, ICH5-6, PIIX, classic IDE, and any other hardware is possible and encouraged. Help with new transports is also encouraged. Submitted by: scottl, mav Approved by: re Notes: svn path=/head/; revision=195534
* catchup with action+ageq additionsSam Leffler2009-07-051-1/+2
| | | | | | | | Submitted by: "Paul B. Mahol" <onemda@gmail.com> Approved by: re (implicit) Notes: svn path=/head/; revision=195383
* When the kernel is configured without "options FFS", build UFS as a moduleEdward Tomasz Napierala2009-07-051-5/+1
| | | | | | | | | without requiring any special build flags. Approved by: re (kib) Notes: svn path=/head/; revision=195374
* Add missing reference to GPT support.Ivan Voras2009-07-051-0/+1
| | | | | | | | Submitted by: Paul B. Mahol onemda at gmail.com Approved by: re (kib) Notes: svn path=/head/; revision=195362
* Remove the old kernel RPC implementation and the NFS_LEGACYRPC option.Doug Rabson2009-06-302-3/+3
| | | | | | | Approved by: re Notes: svn path=/head/; revision=195202
* Update for the Intel 10G driver, this adds support forJack F Vogel2009-06-241-1/+1
| | | | | | | | | newest hardware, adds multiqueue tx interface, infrastructure cleanup to allow up to 32 MSIX vectors on newer Nehalem systems. Bug fixes, etc. Notes: svn path=/head/; revision=194875
* Updates for both the em and igb drivers, add supportJack F Vogel2009-06-241-1/+1
| | | | | | | | for multiqueue tx, shared code updates, new device support, and some bug fixes. Notes: svn path=/head/; revision=194865
* - Initialize the ifnet structure, especially if_dname, before probingMarius Strobl2009-06-231-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the PHYs as some PHY drivers use it (but probably shouldn't). How gem(4) has worked with brgphy(4) on powerpc without this so far is unclear to me. - Introduce a dying flag which is set during detach and checked in gem_ioctl() in order to prevent active BPF listeners to clear promiscuous mode which may lead to the tick callout being restarted which will trigger a panic once it's actually gone. - In gem_stop() reset rather than just disable the transmitter and receiver in order to ensure we're not unloading DMA maps still in use by the hardware. [1] - The blanking time is specified in PCI clocks so we should use twice the value when operating at 66MHz. - Spell some 2 as ETHER_ALIGN and a 19 as GEM_STATUS_TX_COMPLETION_SHFT to make the actual intentions clear. - As we don't unload the peak attempts counter ignore its overflow interrupts. - Remove a stale setting of a variable to GEM_TD_INTERRUPT_ME which isn't used afterwards. - For optimum performance increment the TX kick register in multiples of 4 if possible as suggested by the documentation. - Partially revert r164931; drivers should only clear the watchdog timer if all outstanding TX descriptors are done. - Fix some debugging strings. - Add a missing BUS_DMASYNC_POSTWRITE in gem_rint(). - As the error paths in the interrupt handler are generally unlikely predict them as false. - Add support for the SBus version of the GEM controller. [2] - Add some lock assertions. - Improve some comments. - Fix some more or less cosmetic issues in the code of the PCI front-end. - Change some softc members to be unsigned where more appropriate and remove unused ones. Approved by: re (kib) Obtained from: NetBSD (partially) [2], OpenBSD [1] MFC after: 2 weeks Notes: svn path=/head/; revision=194763
* Implement minimal set of changes suggested by bz to makeAndrew Gallatin2009-06-231-1/+1
| | | | | | | mxge no longer depend on INET. Notes: svn path=/head/; revision=194743
* * Driver for ACPI WMI (Windows Management Instrumentation)Rui Paulo2009-06-233-2/+20
| | | | | | | | | | | | * Driver for ACPI HP extra functionations, which required ACPI WMI driver. Submitted by: Michael <freebsdusb at bindone.de> Approved by: re MFC after: 2 weeks Notes: svn path=/head/; revision=194701
* Connect ng_pipe to the default build.Marko Zec2009-06-232-0/+7
| | | | | | | Approved by: julian (mentor) Notes: svn path=/head/; revision=194683
* Greatly simplify cxgb by removing almost all of the custom mbuf management logicKip Macy2009-06-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - remove mbuf iovec - useful, but adds too much complexity when isolated to the driver - remove driver private caching - insufficient benefit over UMA to justify the added complexity and maintenance overhead - remove separate logic for managing multiple transmit queues, with the new drbr routines the control flow can be made to much more closely resemble legacy drivers - remove dedicated service threads, with per-cpu callouts one can get the same benefit much more simply by registering a callout 1 tick in the future if there are still buffered packets - remove embedded mbuf usage - Jeffr's changes will (I hope) soon be integrated greatly reducing the overhead of using kernel APIs for reference counting clusters - add hysteresis to descriptor coalescing logic - add coalesce threshold sysctls to allow users to decide at run-time between optimizing for forwarding / UDP or optimizing for TCP - add once per second watchdog to effectively close the very rare races occurring from coalescing - incorporate Navdeep's changes to the initialization path required to convert port and adapter locks back to ordinary mutexes (silencing BPF LOR complaints) - enable prefetches in get_packet and tx cleaning Reviewed by: navdeep@ MFC after: 2 weeks Notes: svn path=/head/; revision=194521
* adds opt_inet6.h to fix a error during compiling wlan as a module.Weongyo Jeong2009-06-171-1/+2
| | | | | | | Reviewed by: sam Notes: svn path=/head/; revision=194330
* Fix a typo from the previous commit.Jung-uk Kim2009-06-161-1/+1
| | | | Notes: svn path=/head/; revision=194313
* Sync acpi(4) kld module Makefile with conf/options.Jung-uk Kim2009-06-161-3/+3
| | | | Notes: svn path=/head/; revision=194312
* Add cas(4), a driver for Sun Cassini/Cassini+ and National SemiconductorMarius Strobl2009-06-152-0/+9
| | | | | | | | | | | | | | | DP83065 Saturn Gigabit Ethernet controllers. These are the successors of the Sun GEM controllers and still have a similar but extended transmit logic. As such this driver is based on gem(4). Thanks to marcel@ for providing a Sun Quad GigaSwift Ethernet UTP (QGE) card which was vital for getting this driver to work on architectures not using Open Firmware. Approved by: re (kib) MFC after: 2 weeks Notes: svn path=/head/; revision=194246
* Ed forgot this in r190751.Dag-Erling Smørgrav2009-06-141-13/+0
| | | | Notes: svn path=/head/; revision=194225
* Ed forgot this in r190751.Dag-Erling Smørgrav2009-06-141-56/+0
| | | | Notes: svn path=/head/; revision=194220
* Last (hopefully) attempt to fix both parallel build andAriff Abdullah2009-06-121-9/+15
| | | | | | | | | cyclic dependencies, in a simmilar fashion to kmod.mk. Discussed with: bde, bz Notes: svn path=/head/; revision=194047
* Attempt to fix parallel build.Ariff Abdullah2009-06-101-3/+9
| | | | Notes: svn path=/head/; revision=193902
* Move all sound related scripts to its own 'sound' subdir.Ariff Abdullah2009-06-101-6/+6
| | | | | | | Suggested by: jmallett Notes: svn path=/head/; revision=193889
* Add alc(4), a driver for Atheros AR8131/AR8132 PCIe ethernetPyun YongHyeon2009-06-102-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | controller. These controllers are also known as L1C(AR8131) and L2C(AR8132) respectively. These controllers resembles the first generation controller L1 but usage of different descriptor format and new register mappings over L1 register space requires a new driver. There are a couple of registers I still don't understand but the driver seems to have no critical issues for performance and stability. Currently alc(4) supports the following hardware features. o MSI o TCP Segmentation offload o Hardware VLAN tag insertion/stripping o Tx/Rx interrupt moderation o Hardware statistics counters(dev.alc.%d.stats) o Jumbo frame o WOL AR8131/AR8132 also supports Tx checksum offloading but I disabled it due to stability issues. I'm not sure this comes from broken sample boards or hardware bugs. If you know your controller works without problems you can still enable it. The controller has a silicon bug for Rx checksum offloading, so the feature was not implemented. I'd like to say big thanks to Atheros. Atheros kindly sent sample boards to me and answered several questions I had. HW donated by: Atheros Communications, Inc. Notes: svn path=/head/; revision=193880
* Each generated file should depend its own generator as well.Ariff Abdullah2009-06-091-3/+3
| | | | Notes: svn path=/head/; revision=193821
* Depend on @ machine (_ILINKS) as we do with other modules so that @Bjoern A. Zeeb2009-06-091-3/+3
| | | | | | | | is there for parallel (-jN) builds. Ideally beforedepends in kmod.mk should do the right thing but it seems it does not. Notes: svn path=/head/; revision=193818
* After r193232 rt_tables in vnet.h are no longer indirectly dependent onBjoern A. Zeeb2009-06-0815-17/+15
| | | | | | | | | | | | the ROUTETABLES kernel option thus there is no need to include opt_route.h anymore in all consumers of vnet.h and no longer depend on it for module builds. Remove the hidden include in flowtable.h as well and leave the two explicit #includes in ip_input.c and ip_output.c. Notes: svn path=/head/; revision=193744
* Sound Mega-commit. Expect further cleanup until code freeze.Ariff Abdullah2009-06-071-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For a slightly thorough explaination, please refer to [1] http://people.freebsd.org/~ariff/SOUND_4.TXT.html . Summary of changes includes: 1 Volume Per-Channel (vpc). Provides private / standalone volume control unique per-stream pcm channel without touching master volume / pcm. Applications can directly use SNDCTL_DSP_[GET|SET][PLAY|REC]VOL, or for backwards compatibility, SOUND_MIXER_PCM through the opened dsp device instead of /dev/mixer. Special "bypass" mode is enabled through /dev/mixer which will automatically detect if the adjustment is made through /dev/mixer and forward its request to this private volume controller. Changes to this volume object will not interfere with other channels. Requirements: - SNDCTL_DSP_[GET|SET][PLAY|REC]_VOL are newer ioctls (OSSv4) which require specific application modifications (preferred). - No modifications required for using bypass mode, so applications like mplayer or xmms should work out of the box. Kernel hints: - hint.pcm.%d.vpc (0 = disable vpc). Kernel sysctls: - hw.snd.vpc_mixer_bypass (default: 1). Enable or disable /dev/mixer bypass mode. - hw.snd.vpc_autoreset (default: 1). By default, closing/opening /dev/dsp will reset the volume back to 0 db gain/attenuation. Setting this to 0 will preserve its settings across device closing/opening. - hw.snd.vpc_reset (default: 0). Panic/reset button to reset all volume settings back to 0 db. - hw.snd.vpc_0db (default: 45). 0 db relative to linear mixer value. 2 High quality fixed-point Bandlimited SINC sampling rate converter, based on Julius O'Smith's Digital Audio Resampling - http://ccrma.stanford.edu/~jos/resample/. It includes a filter design script written in awk (the clumsiest joke I've ever written) - 100% 32bit fixed-point, 64bit accumulator. - Possibly among the fastest (if not fastest) of its kind. - Resampling quality is tunable, either runtime or during kernel compilation (FEEDER_RATE_PRESETS). - Quality can be further customized during kernel compilation by defining FEEDER_RATE_PRESETS in /etc/make.conf. Kernel sysctls: - hw.snd.feeder_rate_quality. 0 - Zero-order Hold (ZOH). Fastest, bad quality. 1 - Linear Interpolation (LINEAR). Slightly slower than ZOH, better quality but still does not eliminate aliasing. 2 - (and above) - Sinc Interpolation(SINC). Best quality. SINC quality always start from 2 and above. Rough quality comparisons: - http://people.freebsd.org/~ariff/z_comparison/ 3 Bit-perfect mode. Bypasses all feeder/dsp effects. Pure sound will be directly fed into the hardware. 4 Parametric (compile time) Software Equalizer (Bass/Treble mixer). Can be customized by defining FEEDER_EQ_PRESETS in /etc/make.conf. 5 Transparent/Adaptive Virtual Channel. Now you don't have to disable vchans in order to make digital format pass through. It also makes vchans more dynamic by choosing a better format/rate among all the concurrent streams, which means that dev.pcm.X.play.vchanformat/rate becomes sort of optional. 6 Exclusive Stream, with special open() mode O_EXCL. This will "mute" other concurrent vchan streams and only allow a single channel with O_EXCL set to keep producing sound. Other Changes: * most feeder_* stuffs are compilable in userland. Let's not speculate whether we should go all out for it (save that for FreeBSD 16.0-RELEASE). * kobj signature fixups, thanks to Andriy Gapon <avg@freebsd.org> * pull out channel mixing logic out of vchan.c and create its own feeder_mixer for world justice. * various refactoring here and there, for good or bad. * activation of few more OSSv4 ioctls() (see [1] above). * opt_snd.h for possible compile time configuration: (mostly for debugging purposes, don't try these at home) SND_DEBUG SND_DIAGNOSTIC SND_FEEDER_MULTIFORMAT SND_FEEDER_FULL_MULTIFORMAT SND_FEEDER_RATE_HP SND_PCM_64 SND_OLDSTEREO Manual page updates are on the way. Tested by: joel, Olivier SMEDTS <olivier at gid0 d org>, too many unsung / unnamed heroes. Notes: svn path=/head/; revision=193640
* Remove opt_mac.h generation for various kernel modules that no longerRobert Watson2009-06-0621-23/+19
| | | | | | | | | require it. Submitted by: pjd Notes: svn path=/head/; revision=193588
* move kernel ipfw-related sources to a separate directory,Luigi Rizzo2009-06-053-3/+3
| | | | | | | | | | | | adjust conf/files and modules' Makefiles accordingly. No code or ABI changes so this and most of previous related changes can be easily MFC'ed MFC after: 5 days Notes: svn path=/head/; revision=193532
* Import ACPICA 20090521.Jung-uk Kim2009-06-0512-23/+21
| | | | Notes: svn path=/head/; revision=193530
* add two prerequisites; if_zydreg.h and if_zydfw for dependency check.Weongyo Jeong2009-06-041-1/+1
| | | | Notes: svn path=/head/; revision=193422
* driver for Marvell 88W8363 Wireless LAN controllerSam Leffler2009-06-013-0/+56
| | | | Notes: svn path=/head/; revision=193240
* connect urtw(4) to the amd64/i386 build that it's not tested on the bigWeongyo Jeong2009-06-011-1/+9
| | | | | | | endian machines yet. Notes: svn path=/head/; revision=193195
* Introduce support for cpufreq on PowerPC with the dynamic frequencyNathan Whitehorn2009-05-312-0/+6
| | | | | | | switching capabilities of the MPC7447A and MPC7448. Notes: svn path=/head/; revision=193156
* fix xdrmem_control to be safe in an if statementKip Macy2009-05-301-5/+0
| | | | | | | | | | fix zfs to depend on krpc remove xdr from zfs makefile Submitted by: dchagin@freebsd.org Notes: svn path=/head/; revision=193128
* g_part_ebr.c includes opt_geom.hMarcel Moolenaar2009-05-301-0/+1
| | | | Notes: svn path=/head/; revision=193123
* Add the kernel build glue for the experimental NFS subsystem thatRick Macklem2009-05-284-0/+62
| | | | | | | | | | | | | | | | includes support for NFSv4. The subsystem can optionally be linked into the kernel using the two options: NFSCL - the client NFSD - the server It is also built as three modules: nfscl - the client nfsd - the server nfscommon - functions shared by the client and server Approved by: kib (mentor) Notes: svn path=/head/; revision=192991
* MFdevbranch 192944Kip Macy2009-05-281-4/+4
| | | | | | | | | - add FreeBSD implementation of xdrmem_control needed by zfs - have zfs define xdr_ops using FreeBSD's definition - remove solaris xdr files from zfs compile Notes: svn path=/head/; revision=192971
* Hook ubt and ubtbcmfw back up to the build.Andrew Thompson2009-05-273-11/+12
| | | | Notes: svn path=/head/; revision=192909
* ports urtw(4) for USB2. Additionally it supports a 8187B chipset weaklyWeongyo Jeong2009-05-271-0/+10
| | | | | | | that it needs more stabilization. Notes: svn path=/head/; revision=192873
* Add the ksyms(4) pseudo driver. The ksyms driver allows a process toStacey Son2009-05-262-0/+11
| | | | | | | | | | | | | | | | | get a quick snapshot of the kernel's symbol table including the symbols from any loaded modules (the symbols are all merged into one symbol table). Unlike like other implementations, this ksyms driver maps memory in the process memory space to store the snapshot at the time /dev/ksyms is opened. It also checks to see if the process has already a snapshot open and won't allow it to open /dev/ksyms it again until it closes first. This prevents kernel and process memory from being exhausted. Note that /dev/ksyms is used by the lockstat(1) command. Reviewed by: gallatin kib (freebsd-arch) Approved by: gnn (mentor) Notes: svn path=/head/; revision=192859
* Move opt_apic.h closer to the "XXX: for assym.s" comment.Dag-Erling Smørgrav2009-05-261-1/+4
| | | | | | | | Suggested by: jhb MFC after: 1 week Notes: svn path=/head/; revision=192855