summaryrefslogtreecommitdiffstats
path: root/sys/conf
Commit message (Collapse)AuthorAgeFilesLines
* Rename option USBVERBOSE to USB_VERBOSE for 2 reasons:marcel2009-07-121-1/+1
| | | | | | | | | | | | 1. USB_VERBOSE is more consistent with USB_DEBUG, 2. sys/dev/usb/usb_device.c uses option USB_VERBOSE and not USBVERBOSE. POLA with the USBVERBOSE option as it's found in 7-STABLE has been considered but found insignificant in the face of the USB stack overhaul. Approved by: re (kensmith)
* Implementation of the upcoming Wireless Mesh standard, 802.11s, on therpaulo2009-07-113-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | net80211 wireless stack. This work is based on the March 2009 D3.0 draft standard. This standard is expected to become final next year. This includes two main net80211 modules, ieee80211_mesh.c which deals with peer link management, link metric calculation, routing table control and mesh configuration and ieee80211_hwmp.c which deals with the actually routing process on the mesh network. HWMP is the mandatory routing protocol on by the mesh standard, but others, such as RA-OLSR, can be implemented. Authentication and encryption are not implemented. There are several scripts under tools/tools/net80211/scripts that can be used to test different mesh network topologies and they also teach you how to setup a mesh vap (for the impatient: ifconfig wlan0 create wlandev ... wlanmode mesh). A new build option is available: IEEE80211_SUPPORT_MESH and it's enabled by default on GENERIC kernels for i386, amd64, sparc64 and pc98. Drivers that support mesh networks right now are: ath, ral and mwl. More information at: http://wiki.freebsd.org/WifiMesh Please note that this work is experimental. Also, please note that bridging a mesh vap with another network interface is not yet supported. Many thanks to the FreeBSD Foundation for sponsoring this project and to Sam Leffler for his support. Also, I would like to thank Gateworks Corporation for sending me a Cambria board which was used during the development of this project. Reviewed by: sam Approved by: re (kensmith) Obtained from: projects/mesh11s
* Separate the parallel scsi knowledge out of the core of the XPT, andscottl2009-07-101-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Bump for BETA1.kensmith2009-07-071-1/+1
| | | | Approved by: re (implicit)
* add missing bit of r195379sam2009-07-051-0/+1
| | | | Approved by: re (kensmith)
* Revamp 802.11 action frame handling:sam2009-07-051-0/+1
| | | | | | | | | | | | | | o add a new facility for components to register send+recv handlers o ieee80211_send_action and ieee80211_recv_action now use the registered handlers to dispatch operations o rev ieee80211_send_action api to enable passing arbitrary data o rev ieee80211_recv_action api to pass the 802.11 frame header as it may be difficult to locate o update existing IEEE80211_ACTION_CAT_BA and IEEE80211_ACTION_CAT_HT handling o update mwl for api rev Reviewed by: rpaulo Approved by: re (kensmith)
* Mark atanvidia depending on ataahci since rev.188846.mav2009-07-051-1/+2
| | | | Approved by: re (kib)
* Remove the old kernel RPC implementation and the NFS_LEGACYRPC option.dfr2009-06-302-9/+0
| | | | Approved by: re
* Note that as a result of the SYSV IPC changes, COMPAT_FREEBSD[456] nowjhb2009-06-261-0/+3
| | | | | | | | | | require COMPAT_FREEBSD7. Also, explicitly note in NOTES that any version of COMPAT_FREEBSD<n> effectively requires for newer binaries (i.e. COMPAT_FREEBSD<n+1>, etc.). While this has been true in practice previously, it used to compile ok before the commit earlier this week. Discussed with: peter Approved by: re (kensmith)
* Make ata-{dma,sata}.c dependent on atacore build option.raj2009-06-251-2/+2
| | | | Discussed with: mav
* Move non-PCI prototypes from ata-pci.h -> ata-all.h.raj2009-06-241-2/+2
| | | | | | | | This removes unnecessary PCI #includes dependency for systems with ATA controllers living at non-PCI buses. Submitted by: Piotr Ziecik Obtained from: Semihalf
* - Initialize the ifnet structure, especially if_dname, before probingmarius2009-06-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Implement minimal set of changes suggested by bz to makegallatin2009-06-231-6/+6
| | | | mxge no longer depend on INET.
* * Driver for ACPI WMI (Windows Management Instrumentation)rpaulo2009-06-234-1/+6
| | | | | | | | | * 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
* Connect ng_pipe to the default build.zec2009-06-233-0/+3
| | | | Approved by: julian (mentor)
* Add cpufreq support on the PowerPC G5, along with a skeleton SMU drivernwhitehorn2009-06-231-4/+6
| | | | | in order to slew CPU voltage during frequency changes. The OpenBSD SMU driver was an extremely helpful reference for this.
* Keep file list sorted.raj2009-06-221-1/+1
|
* DS1553 RTC module driver. On the MPC8555CDS system it hangs off of the LBC bus.raj2009-06-221-0/+2
| | | | Obtained from: Semihalf
* Integrated I2C controller driver (found in MPC85xx and other SOC parts).raj2009-06-221-0/+1
| | | | Obtained from: Freescale, Semihalf
* Greatly simplify cxgb by removing almost all of the custom mbuf management logickmacy2009-06-191-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* Introduce support for adaptive spinning in lockmgr.attilio2009-06-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Actually, as it did receive few tuning, the support is disabled by default, but it can opt-in with the option ADAPTIVE_LOCKMGRS. Due to the nature of lockmgrs, adaptive spinning needs to be selectively enabled for any interested lockmgr. The support is bi-directional, or, in other ways, it will work in both cases if the lock is held in read or write way. In particular, the read path is passible of further tunning using the sysctls debug.lockmgr.retries and debug.lockmgr.loops . Ideally, such sysctls should be axed or compiled out before release. Addictionally note that adaptive spinning doesn't cope well with LK_SLEEPFAIL. The reason is that many (and probabilly all) consumers of LK_SLEEPFAIL are mainly interested in knowing if the interlock was dropped or not in order to reacquire it and re-test initial conditions. This directly interacts with adaptive spinning because lockmgr needs to drop the interlock while spinning in order to avoid a deadlock (further details in the comments inside the patch). Final note: finding someone willing to help on tuning this with relevant workloads would be either very important and appreciated. Tested by: jeff, pho Requested by: many
* Add cas(4), a driver for Sun Cassini/Cassini+ and National Semiconductormarius2009-06-152-0/+3
| | | | | | | | | | | | 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
* Add support for labels derived from GPT metadata.ivoras2009-06-131-0/+1
| | | | | | | Approved by: gnn (mentor) Reviewed by: pjd PR: 128398 Submitted by: Marius Nuennerich < marius at nuenneri.ch >
* Added support for NAT-Traversal (RFC 3948) in IPsec stack.vanhu2009-06-122-0/+6
| | | | | | | | | | | | | | Thanks to (no special order) Emmanuel Dreyfus (manu@netbsd.org), Larry Baird (lab@gta.com), gnn, bz, and other FreeBSD devs, Julien Vanherzeele (julien.vanherzeele@netasq.com, for years of bug reporting), the PFSense team, and all people who used / tried the NAT-T patch for years and reported bugs, patches, etc... X-MFC: never Reviewed by: bz Approved by: gnn(mentor) Obtained from: NETASQ
* All these Ethernet NICs depend on INET, mostly for unconditionalbz2009-06-111-15/+15
| | | | | | | | cksum related function calls, sometimes related to offload features from what I could see.xi It would be good if the offload functionality would be properly #ifdefed but the other calls to cksum related functions are a more general problem also elswhere in the network stack.
* if_igb.c as well as ixgbe.c uncondtionally depend on INET specificbz2009-06-111-7/+7
| | | | functions, especially but not solely tcp_lro_*.
* As sys/kern/uipc_accf.c depends on inet, all three accf_*bz2009-06-111-3/+3
| | | | | implementations do as well for accept_filt_generic_mod_event(). In addition accf_http also needs inet for the sysctl mib path.
* ng_ipfw depends on inet and ipfirewall as well.bz2009-06-111-7/+7
| | | | | | ng_nat depends on inet and libalias and most of libalias depends on inet. Update dependencies to porperly reflect this.
* ip_dummynet.c depends on INET.bz2009-06-111-1/+1
| | | | Note: this may be more because of improper #ifdefs these days.
* netinet/if_ether.c (doing ARP) depends on INET as well.bz2009-06-111-1/+1
|
* if_enc(4) is only useful with ipsec and either inet or inet6.bz2009-06-111-1/+1
|
* stf(4) supports `6to4' IPv6 in IPv4 encapsulation accroding to RFC3056.bz2009-06-111-1/+1
| | | | It thus needs both INET and INET6 to do its duty.
* if_bridge(4) unfortunately is missing a lot of #ifdef INETs andbz2009-06-111-1/+1
| | | | thus INET is a mandatory dependency at the moment.
* carp(4) allows people to share a set of IP addresses and can onlybz2009-06-111-1/+1
| | | | | | | | | | | use IPv4/v6 for inter-node communication (according to my reading). Properly wrap the carp callouts in INET || INET6 and refelect this in sys/conf/files as well. While in theory this should be ok, it might be a bit optimistic to think that carp could build with inet6 only[1]. Discussed with: mlaier [1]
* Catch up with r193750 (OsdSynch.c locking changes):jkim2009-06-101-0/+1
| | | | | | | | | | - Preallocate some memory for ACPI tasks early enough. We cannot use malloc(9) any more because spin mutex may be held here. The reserved memory can be tuned via debug.acpi.max_tasks tunable or ACPI_MAX_TASKS in kernel configuration. The default is 32 tasks. - Implement a custom taskqueue_fast to wrap the new memory allocation. This implementation is not the fastest in the world but we are being conservative here.
* pflog, pfsync depend on pf and pf depends on inet.bz2009-06-101-10/+10
| | | | | Actually it could/should be inet|inet6 but the code is not there and as long as our inet6 depends on inet this is fine.
* Unfortunately fs/nfsserver depends on INET at the moment. It seems tobz2009-06-101-7/+7
| | | | | | | | | | be nfs_nfsdport.c and nfs_nfsdcache.c are the problem only but we need to mark all or we will run into problems at link time. One is because of calling an INET specific function, the other is because of VIMAGE putting all tcp* into struct vnet_inet. Both are general problems throughout the entire stack and not a fault of the NFS implementation and will need to be addressed in the future.
* if_gre.c insists on INET:bz2009-06-101-1/+1
| | | | | | #error "Huh? if_gre without inet?" According to my reading we still only support encapsulating datagrams into IPv4 and not IPv6 so there is no optional | gre inet6 yet.
* ipfirewall insists on INET:bz2009-06-101-3/+3
| | | | | #error IPFIREWALL requires INET. Track it here to not build ipfirewall with no INET in the kernel.
* ip_divert.c requires both INET and IPFIREWALL to be present:bz2009-06-101-1/+1
| | | | | | #error "IPDIVERT requires INET." #error "IPDIVERT requires IPFIREWALL" so properly track those depencies here.
* IPsec depends on either IPv4 (inet) or IPv6 (inet6) so properlybz2009-06-101-13/+14
| | | | | track dependencies and automatically disable building ipsec if neither of the two is in the kernel config.
* Move all sound related scripts to its own 'sound' subdir.ariff2009-06-101-12/+12
| | | | Suggested by: jmallett
* Oops, fix directory name.yongari2009-06-101-1/+1
|
* Add alc(4), a driver for Atheros AR8131/AR8132 PCIe ethernetyongari2009-06-102-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* revert to opt-in flowtablekmacy2009-06-092-2/+2
|
* make flowtable opt-outkmacy2009-06-092-2/+2
|
* For now only compile flowtable.c if both options FLOWTABLE and INETbz2009-06-091-1/+1
| | | | | are given. This will also work when we add IPv6 support as for now INET6 depends on INET.
* Rewrite OsdSynch.c to reflect the latest ACPICA more closely:jkim2009-06-081-1/+0
| | | | | | - Implement ACPI semaphore (ACPI_SEMAPHORE) with condvar(9) and mutex(9). - Implement ACPI mutex (ACPI_MUTEX) with mutex(9). - Implement ACPI lock (ACPI_SPINLOCK) with spin mutex(9).
* Code using COMPAT_ROUTE_FLAGS option, introduced with r187094,bz2009-06-081-1/+0
| | | | | was changed again in r187328, removing any use of the option from the kernel. The option was never in NOTES. Garbage collect.
* Add notes on various SND_* options.ariff2009-06-081-0/+36
|
OpenPOWER on IntegriCloud