#
267654 |
|
19-Jun-2014 |
gjb |
Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
265729 |
|
09-May-2014 |
ken |
MFC the mpr(4) driver for LSI's 12Gb SAS cards.
This includes r265236, r265237, r265241, r265261, r265386, r265424, and r265473.
------------------------------------------------------------------------ r265236 | ken | 2014-05-02 14:25:09 -0600 (Fri, 02 May 2014) | 51 lines
Bring in the mpr(4) driver for LSI's MPT3 12Gb SAS controllers.
This is derived from the mps(4) driver, but it supports only the 12Gb IT and IR hardware including the SAS 3004, SAS 3008 and SAS 3108.
Some notes about this driver: o The 12Gb hardware can do "FastPath" I/O, and that capability is included in this driver.
o WarpDrive functionality has been removed, since it isn't supported in the 12Gb driver interface.
o The Scatter/Gather list handling code is significantly different between the 6Gb and 12Gb hardware. The 12Gb boards support IEEE Scatter/Gather lists.
Thanks to LSI for developing and testing this driver for FreeBSD.
share/man/man4/mpr.4: mpr(4) man page.
sys/dev/mpr/*: mpr(4) driver files.
sys/modules/Makefile, sys/modules/mpr/Makefile: Add a module Makefile for the mpr(4) driver.
sys/conf/files: Add the mpr(4) driver.
sys/amd64/conf/GENERIC, sys/i386/conf/GENERIC, sys/mips/conf/OCTEON1, sys/sparc64/conf/GENERIC: Add the mpr(4) driver to all config files that currently have the mps(4) driver.
sys/ia64/conf/GENERIC: Add the mps(4) and mpr(4) drivers to the ia64 GENERIC config file.
sys/i386/conf/XEN: Exclude the mpr module from building here.
Submitted by: Steve McConnell <Stephen.McConnell@avagotech.com> Tested by: Chris Reeves <chrisr@spectralogic.com> Sponsored by: LSI, Spectra Logic Relnotes: LSI 12Gb SAS driver mpr(4) added
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265237 | ken | 2014-05-02 14:36:20 -0600 (Fri, 02 May 2014) | 8 lines
Add the mpr(4) man page to the man4 Makefile.
This should have been included in r265236.
Submitted by: Steve McConnell <Stephen.McConnell@avagotech.com> Sponsored by: LSI, Spectra Logic
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265241 | brueffer | 2014-05-02 15:14:28 -0600 (Fri, 02 May 2014) | 2 lines
Use our standard SYNOPSIS wording; perform some cleanup while here.
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265261 | brueffer | 2014-05-03 05:15:28 -0600 (Sat, 03 May 2014) | 2 lines
Add a missing colon.
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265386 | ken | 2014-05-05 13:53:03 -0600 (Mon, 05 May 2014) | 15 lines
Adjust #if statements inside mprsas_send_smpcmd() to more accurately reflect when unmapped I/O support was added.
For FreeBSD 10, it arrived just prior to __FreeBSD_version 1000028. For FreeBSD 9, it arrived just prior to __FreeBSD_version 902001.
Also, fix compiler warnings in mprsas_send_smpcmd() that happen in the i386 PAE build for non-unmapped I/O builds. These were fixed in mps(4) in revision 241145, but didn't make it into the mpr(4) driver. This change should only affect FreeBSD versions outside the above revisions, and thus doesn't affect head.
Sponsored by: Spectra Logic Corporation
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265424 | ken | 2014-05-06 00:18:43 -0600 (Tue, 06 May 2014) | 33 lines
Fix a problem with async notifications in the mpr(4) driver.
This problem only occurs on versions of FreeBSD prior to the recent CAM locking changes. (i.e. stable/9 and older versions of stable/10) This change should be a no-op for head and stable/10.
If a path isn't specified, xpt_register_async() will create a fully wildcarded path and acquire a lock (the XPT lock in older versions, and via xpt_path_lock() in newer versions) to call xpt_action() for the XPT_SASYNC_CB CCB. It will then drop the lock and if the requested event includes AC_FOUND_DEVICE or AC_PATH_REGISTERED, it will get the caller up to date with any device arrivals or path registrations.
The issue is that before the locking changes, each SIM lock would get acquired in turn during the EDT tree traversal process. If a path is specified for xpt_register_async(), it won't acquire and drop its own lock, but instead expects the caller to hold its own SIM lock. That works for the first part of xpt_register_async(), but causes a recursive lock acquisition once the EDT traversal happens and it comes to the SIM in question. And it isn't possible to call xpt_action() without holding a SIM lock.
The locking changes fix this by using the XPT topology lock for EDT traversal, so it is no longer an issue to hold the SIM lock while calling xpt_register_async().
The solution for FreeBSD versions before the locking changes is to request notification of all device arrivals (so we pass a NULL path into xpt_register_async()) and then filter out the arrivals that are not ours.
Sponsored by: Spectra Logic Corporation
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265473 | ken | 2014-05-06 16:13:38 -0600 (Tue, 06 May 2014) | 7 lines
Change the device name for mpr(4) from /dev/mpr_N to /dev/mprN.
This is more consistent with the existing mps(4) behavior.
Reviewed by: Steve McConnell <stephen.mcconnell@avagotech.com>
------------------------------------------------------------------------
Submitted by: Steve McConnell <Stephen.McConnell@avagotech.com> Tested by: Chris Reeves <chrisr@spectralogic.com> Sponsored by: LSI, Spectra Logic Relnotes: LSI 12Gb SAS driver mpr(4) added
|
#
263764 |
|
26-Mar-2014 |
dim |
MFC r262613:
Merge the projects/clang-sparc64 branch back to head. This brings in several updates from the llvm and clang trunks to make the sparc64 backend fully functional.
Apart from one patch to sys/sparc64/include/pcpu.h which is still under discussion, this makes it possible to let clang fully build world and kernel for sparc64.
Any assistance with testing this on actual sparc64 hardware is greatly appreciated, as there will unavoidably be bugs left.
Many thanks go to Roman Divacky for his upstream work on getting the sparc64 backend into shape.
MFC r262985:
Repair a few minor mismerges from r262261 in the clang-sparc64 project branch. This is also to minimize differences with upstream.
|
#
253860 |
|
01-Aug-2013 |
marius |
MFC: r249410 (partial)
Remove ctl(4) from GENERIC.
With ctl(4) being built as a module and automatically loaded by ctladm(8), this makes CTL work out of the box.
Note that unlike the original r249410, this commit does not remove the kern.cam.ctl.disable tunable for POLA reasons.
PR: 174671, 175694, 179112 Reviewed by: ken (original version) Sponsored by: FreeBSD Foundation (original version) Approved by: re (hrs)
|
#
246321 |
|
04-Feb-2013 |
des |
MFH (r244992): remove firewire from GENERIC
|
#
245992 |
|
27-Jan-2013 |
marius |
Revert r237842 (MFC'ed to stable/9 in r238012) and switch back to SCHED_ULE. All problems I encountered with the latter have been fixed with r241780 (MFC'ed to stable/9 in r245981).
|
#
245587 |
|
18-Jan-2013 |
kib |
MFC r245003: Enable the UFS quotas for big-iron GENERIC kernels.
|
#
239841 |
|
29-Aug-2012 |
gjb |
MFC r239699:
- Grammar fix: s/NIC's/NICs/
|
#
238012 |
|
02-Jul-2012 |
marius |
MFC: r237842
Switch back to the 4BSD scheduler for now. There is some more or less recent regression with ULE, causing processes to get stuck in getblk as well as interrupt handler execution delays to rise above the command timeout of mpt(4).
|
#
237943 |
|
02-Jul-2012 |
ken |
MFC 237730:
r237730 | ken | 2012-06-28 14:48:24 -0600 (Thu, 28 Jun 2012) | 5 lines
Now that the mps(4) driver is endian-safe, add it to the powerpc and sparc64 GENERIC config files.
|
#
235992 |
|
25-May-2012 |
marius |
MFC: r234348
Turn on PREEMPTION by default. After fixing several bugs over time, the last show-stopper keeping PREEMPTION from being usable on sparc64 should have been dealt with in r230662 (MFC'ed to stable/9 in r230662). At least on 2-way systems, PREEMPTION causes a little bit of a degradation in worldstone performance. However, FreeBSD seems to have started building up regressions in !PREEMPTION cases so sparc64 better should not be an oddball in this regard.
|
#
231772 |
|
15-Feb-2012 |
ken |
MFC r229997, r230033, and r230334
Bring the CAM Target Layer into stable/9.
r230334 | ken | 2012-01-19 11:42:03 -0700 (Thu, 19 Jan 2012) | 19 lines
Quiet some clang warnings when compiling CTL.
ctl_error.c, ctl_error.h: Take out the ctl_sense_format enumeration, and use scsi_sense_data_type instead.
Remove ctl_get_sense_format() and switch ctl_build_ua() over to using scsi_sense_data_type.
ctl_backend_ramdisk.c, ctl_backend_block.c: Use C99 structure initializers instead of GNU initializers.
ctl.c: Switch over to using the SCSI sense format enumeration instead of the CTL-specific enumeration.
Submitted by: dim (partially) MFC after: 1 month
r230033 | ken | 2012-01-12 15:08:33 -0700 (Thu, 12 Jan 2012) | 5 lines
Silence some unnecessary verbosity.
Reported by: mav MFC after: 1 month
r229997 | ken | 2012-01-11 17:34:33 -0700 (Wed, 11 Jan 2012) | 170 lines
Add the CAM Target Layer (CTL).
CTL is a disk and processor device emulation subsystem originally written for Copan Systems under Linux starting in 2003. It has been shipping in Copan (now SGI) products since 2005.
It was ported to FreeBSD in 2008, and thanks to an agreement between SGI (who acquired Copan's assets in 2010) and Spectra Logic in 2010, CTL is available under a BSD-style license. The intent behind the agreement was that Spectra would work to get CTL into the FreeBSD tree.
Some CTL features:
- Disk and processor device emulation. - Tagged queueing - SCSI task attribute support (ordered, head of queue, simple tags) - SCSI implicit command ordering support. (e.g. if a read follows a mode select, the read will be blocked until the mode select completes.) - Full task management support (abort, LUN reset, target reset, etc.) - Support for multiple ports - Support for multiple simultaneous initiators - Support for multiple simultaneous backing stores - Persistent reservation support - Mode sense/select support - Error injection support - High Availability support (1) - All I/O handled in-kernel, no userland context switch overhead.
(1) HA Support is just an API stub, and needs much more to be fully functional.
ctl.c: The core of CTL. Command handlers and processing, character driver, and HA support are here.
ctl.h: Basic function declarations and data structures.
ctl_backend.c, ctl_backend.h: The basic CTL backend API.
ctl_backend_block.c, ctl_backend_block.h: The block and file backend. This allows for using a disk or a file as the backing store for a LUN. Multiple threads are started to do I/O to the backing device, primarily because the VFS API requires that to get any concurrency.
ctl_backend_ramdisk.c: A "fake" ramdisk backend. It only allocates a small amount of memory to act as a source and sink for reads and writes from an initiator. Therefore it cannot be used for any real data, but it can be used to test for throughput. It can also be used to test initiators' support for extremely large LUNs.
ctl_cmd_table.c: This is a table with all 256 possible SCSI opcodes, and command handler functions defined for supported opcodes.
ctl_debug.h: Debugging support.
ctl_error.c, ctl_error.h: CTL-specific wrappers around the CAM sense building functions.
ctl_frontend.c, ctl_frontend.h: These files define the basic CTL frontend port API.
ctl_frontend_cam_sim.c: This is a CTL frontend port that is also a CAM SIM. This frontend allows for using CTL without any target-capable hardware. So any LUNs you create in CTL are visible in CAM via this port.
ctl_frontend_internal.c, ctl_frontend_internal.h: This is a frontend port written for Copan to do some system-specific tasks that required sending commands into CTL from inside the kernel. This isn't entirely relevant to FreeBSD in general, but can perhaps be repurposed.
ctl_ha.h: This is a stubbed-out High Availability API. Much more is needed for full HA support. See the comments in the header and the description of what is needed in the README.ctl.txt file for more details.
ctl_io.h: This defines most of the core CTL I/O structures. union ctl_io is conceptually very similar to CAM's union ccb.
ctl_ioctl.h: This defines all ioctls available through the CTL character device, and the data structures needed for those ioctls.
ctl_mem_pool.c, ctl_mem_pool.h: Generic memory pool implementation used by the internal frontend.
ctl_private.h: Private data structres (e.g. CTL softc) and function prototypes. This also includes the SCSI vendor and product names used by CTL.
ctl_scsi_all.c, ctl_scsi_all.h: CTL wrappers around CAM sense printing functions.
ctl_ser_table.c: Command serialization table. This defines what happens when one type of command is followed by another type of command.
ctl_util.c, ctl_util.h: CTL utility functions, primarily designed to be used from userland. See ctladm for the primary consumer of these functions. These include CDB building functions.
scsi_ctl.c: CAM target peripheral driver and CTL frontend port. This is the path into CTL for commands from target-capable hardware/SIMs.
README.ctl.txt: CTL code features, roadmap, to-do list.
usr.sbin/Makefile: Add ctladm.
ctladm/Makefile, ctladm/ctladm.8, ctladm/ctladm.c, ctladm/ctladm.h, ctladm/util.c: ctladm(8) is the CTL management utility. It fills a role similar to camcontrol(8). It allow configuring LUNs, issuing commands, injecting errors and various other control functions.
usr.bin/Makefile: Add ctlstat.
ctlstat/Makefile ctlstat/ctlstat.8, ctlstat/ctlstat.c: ctlstat(8) fills a role similar to iostat(8). It reports I/O statistics for CTL.
sys/conf/files: Add CTL files.
sys/conf/NOTES: Add device ctl.
sys/cam/scsi_all.h: To conform to more recent specs, the inquiry CDB length field is now 2 bytes long.
Add several mode page definitions for CTL.
sys/cam/scsi_all.c: Handle the new 2 byte inquiry length.
sys/dev/ciss/ciss.c, sys/dev/ata/atapi-cam.c, sys/cam/scsi/scsi_targ_bh.c, scsi_target/scsi_cmds.c, mlxcontrol/interface.c: Update for 2 byte inquiry length field.
scsi_da.h: Add versions of the format and rigid disk pages that are in a more reasonable format for CTL.
amd64/conf/GENERIC, i386/conf/GENERIC, ia64/conf/GENERIC, sparc64/conf/GENERIC: Add device ctl.
i386/conf/PAE: The CTL frontend SIM at least does not compile cleanly on PAE.
Sponsored by: Copan Systems, SGI and Spectra Logic MFC after: 1 month
|
#
230896 |
|
01-Feb-2012 |
marius |
MFC: r227980
Move to SCHED_ULE by default. Since r226057 SCHED_ULE and sparc64 are compatible with each other and since r227539 the last issue seen when using SCHED_ULE is fixed (MFC'ed to stable/9 in r230691 and r227714 respectively). At least on UP and 2-way machines SCHED_4BSD still performs better than SCHED_ULE, however, the optimizations done in r225889 (MFC'ed to stable/9 in r230673) pretty much compensate that so there's at least no net regression. Thanks go to Peter Jeremy for extensive testing.
|
#
227305 |
|
07-Nov-2011 |
marius |
MFC: r227006, r227281, r227282
Add a PCI front-end to esp(4) allowing it to support AMD Am53C974 and replace amd(4) with the former in the amd64, i386 and pc98 GENERIC kernel configuration files. Besides duplicating functionality, amd(4), which previously also supported the AMD Am53C974, unlike esp(4) is no longer maintained and has accumulated enough bit rot over time to always cause a panic during boot as long as at least one target is attached to it (see PR 124667).
PR: 124667 Approved by: re (kib) Obtained from: NetBSD (based on)
|
#
226819 |
|
26-Oct-2011 |
kensmith |
Fix whitespace nit. "options<space><tab>", not "options<tab><tab>".
Submitted by: Matthew Fleming <mdf at freebsd dot org> Pointy hat: me Approved by: re (implicit)
|
#
226810 |
|
26-Oct-2011 |
kensmith |
I forgot we now leave KDB and KDB_TRACE options in stable kernel config files to help provide stack traces during a panic.
Submitted by: Sergey Kandaurov <pluknet at freebsd dot org> Approved by: re (implicit)
|
#
226809 |
|
26-Oct-2011 |
kensmith |
MFC r226510,r226547: Comment out sbp(4) because it appears to cause boot failure on some systems. Add comment explaining why sbp(4) is commented out.
It was a mistake on my part to omit powerpc's GENERIC for r226510. But when I noticed the mistake I checked with the powerpc maintainer to see if I should correct the mistake Marcel said he'd prefer it be left as-is.
Approved by: re (kib)
|
#
226405 |
|
15-Oct-2011 |
kensmith |
Remove extra debuggin gsupport that is turned on for head but turned off for stable branches:
- shift to MALLOC_PRODUCTION - turn off automatic crash dumps - remove kernel debuggers, INVARIANT*[1], WITNESS* from GENERIC kernel config files
[1] INVARIANT* left on for ia64 at least temporarily, marcel@ will test to see if they are still required as they had been for stable/8.
Approved by: re (implicit)
|
#
225736 |
|
22-Sep-2011 |
kensmith |
Copy head to stable/9 as part of 9.0-RELEASE release cycle.
Approved by: re (implicit)
|
#
225482 |
|
11-Sep-2011 |
brueffer |
Fix a zyd(4) comment typo that was copy+pasted into most kernel config files.
PR: 160276 Submitted by: MATSUMIYA Ryo <matsumiya@mma.club.uec.ac.jp> Approved by: re (kib) MFC after: 1 week
|
#
224699 |
|
07-Aug-2011 |
rmacklem |
Change all the sample kernel configurations to use NFSCL, NFSD instead of NFSCLIENT, NFSSERVER since NFSCL and NFSD are now the defaults. The client change is needed for diskless configurations, so that the root mount works for fstype nfs. Reported by seanbru at yahoo-inc.com for i386/XEN.
Approved by: re (hrs)
|
#
223044 |
|
13-Jun-2011 |
marius |
- Merge r222980 from x86: add sound(4) and common device drivers. - Fix whitespace.
|
#
221124 |
|
27-Apr-2011 |
rmacklem |
This patch changes head so that the default NFS client is now the new NFS client (which I guess is no longer experimental). The fstype "newnfs" is now "nfs" and the regular/old NFS client is now fstype "oldnfs". Although mounts via fstype "nfs" will usually work without userland changes, an updated mount_nfs(8) binary is needed for kernels built with "options NFSCL" but not "options NFSCLIENT". Updated mount_nfs(8) and mount(8) binaries are needed to do mounts for fstype "oldnfs". The GENERIC kernel configs have been changed to use options NFSCL and NFSD (the new client and server) instead of NFSCLIENT and NFSSERVER. For kernels being used on diskless NFS root systems, "options NFSCL" must be in the kernel config. Discussed on freebsd-fs@.
|
#
220982 |
|
24-Apr-2011 |
mav |
Switch the GENERIC kernels for all architectures to the new CAM-based ATA stack. It means that all legacy ATA drivers are disabled and replaced by respective CAM drivers. If you are using ATA device names in /etc/fstab or other places, make sure to update them respectively (adX -> adaY, acdX -> cdY, afdX -> daY, astX -> saY, where 'Y's are the sequential numbers for each type in order of detection, unless configured otherwise with tunables, see cam(4)).
ataraid(4) functionality is now supported by the RAID GEOM class. To use it you can load geom_raid kernel module and use graid(8) tool for management. Instead of /dev/arX device names, use /dev/raid/rX.
|
#
220185 |
|
31-Mar-2011 |
adrian |
Break out the ath PCI logic into a separate device/module.
Introduce the AHB glue for Atheros embedded systems. Right now it's hard-coded for the AR9130 chip whose support isn't yet in this HAL; it'll be added in a subsequent commit.
Kernel configuration files now need both 'ath' and 'ath_pci' devices; both modules need to be loaded for the ath device to work.
|
#
219435 |
|
09-Mar-2011 |
julian |
Add a small change to the comment in the GENRIC config files that include udbp
Submitted by: Chris Forgron, cforgeron at acsi dot ca MFC after: 1 week
|
#
213098 |
|
24-Sep-2010 |
davidxu |
Now userland POSIX semaphore is based on umtx. The kernel module is only used to support binary compatible, if want to run old binary, you need to kldload the module.
|
#
212158 |
|
02-Sep-2010 |
yongari |
Enable sis(4). sis(4) should work on all architectures.
|
#
210564 |
|
28-Jul-2010 |
mdf |
Add MALLOC_DEBUG_MAXZONES debug malloc(9) option to use multiple uma zones for each malloc bucket size. The purpose is to isolate different malloc types into hash classes, so that any buffer overruns or use-after-free will usually only affect memory from malloc types in that hash class. This is purely a debugging tool; by varying the hash function and tracking which hash class was corrupted, the intersection of the hash classes from each instance will point to a single malloc type that is being misused. At this point inspection or memguard(9) can be used to catch the offending code.
Add MALLOC_DEBUG_MAXZONES=8 to -current GENERIC configuration files. The suggestion to have this on by default came from Kostik Belousov on -arch.
This code is based on work by Ron Steinke at Isilon Systems.
Reviewed by: -arch (mostly silence) Reviewed by: zml Approved by: zml (mentor)
|
#
207077 |
|
22-Apr-2010 |
thompsa |
Change USB_DEBUG to #ifdef and allow it to be turned off. Previously this had the illusion of a tunable setting but was always turned on regardless.
MFC after: 1 week
|
#
206451 |
|
10-Apr-2010 |
marius |
Add sbbc(4), a driver for the BootBus controller found in Serengeti and StarCat systems which provides time-of-day services for both as well as console service for Serengeti, i.e. Sun Fire V1280. While the latter is described with a device type of serial in the OFW device tree, it isn't actually an UART. Nevertheless the console service is handled by uart(4) as this allowed to re-use quite a bit of MD and MI code. Actually, this idea is stolen from Linux which interfaces the sun4v hypervisor console with the Linux counterpart of uart(4).
|
#
205116 |
|
13-Mar-2010 |
ed |
Remove COMPAT_43TTY from stock kernel configuration files.
COMPAT_43TTY enables the sgtty interface. Even though its exposure has only been removed in FreeBSD 8.0, it wasn't used by anything in the base system in FreeBSD 5.x (possibly even 4.x?). On those releases, if your ports/packages are less than two years old, they will prefer termios over sgtty.
|
#
203758 |
|
10-Feb-2010 |
attilio |
Add the options DEADLKRES (introducing the deadlock resolver thread) in the 'debugging' section of any HEAD kernel and enable for the mainstream ones, excluding the embedded architectures. It may, of course, enabled on a case-by-case basis.
Sponsored by: Sandvine Incorporated Requested by: emaste Discussed with: kib
|
#
202634 |
|
19-Jan-2010 |
jhb |
Move the examples for the 'hints' and 'env' keywords from various GENERIC kernel configs into NOTES.
Reviewed by: imp
|
#
202019 |
|
10-Jan-2010 |
imp |
Add INCLUDE_CONFIG_FILE in GENERIC on all non-embedded platforms.
# This is the resolution of removing it from DEFAULTS...
MFC after: 5 days
|
#
202006 |
|
10-Jan-2010 |
marius |
Add epic(4), a driver for the front panel LEDs in Sun Fire V215/V245. It's named after the driver doing the same job in OpenSolaris.
|
#
201769 |
|
08-Jan-2010 |
yongari |
Enable ste(4). ste(4) should work on all architectures.
|
#
201443 |
|
03-Jan-2010 |
brooks |
Add vlan(4) to all GENERIC kernels.
MFC after: 1 week
|
#
198043 |
|
13-Oct-2009 |
jhb |
Move the USB wireless drivers down into their own section next to the USB ethernet drivers.
Submitted by: Glen Barber glen.j.barber @ gmail MFC after: 1 month
|
#
197490 |
|
25-Sep-2009 |
marius |
Merge r194204 from amd64/i386:
Enable PRINTF_BUFR_SIZE by default.
PR: 139134 MFC after: 3 days
|
#
195618 |
|
11-Jul-2009 |
rpaulo |
Implementation of the upcoming Wireless Mesh standard, 802.11s, on the 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
|
#
195295 |
|
02-Jul-2009 |
ed |
Enable POSIX semaphores on all non-embedded architectures by default.
More applications (including Firefox) seem to depend on this nowadays, so not having this enabled by default is a bad idea.
Proposed by: miwi Patch by: Florian Smeets <flo kasimir com> Approved by: re (kib)
|
#
194901 |
|
24-Jun-2009 |
marius |
o merge from amd64: - r187144: Add a reference to the config(5) manpage and to the "env" kernel config option. - Add/enable the default USB drivers. Originally the USB controller and keyboard drivers were disabled as these interacted badly with the Open Firmware console driver, i.e. caused the keyboard to not work with ofw_console(4). Even when switch to uart(4) and the frame buffer drivers most of the USB drivers still were kept disabled as several of them, amongst others all of the drivers for USB Ethernet controllers, weren't endian clean. With the new USB stack these problem should be gone now so there's no longer a reason to not include the same set of USB drivers amd64 does. o Remove the commented out device ofw_console; apart from it being currently broken by some TTY changes one really needs to know how to actually enable and make it work correctly.
|
#
194246 |
|
15-Jun-2009 |
marius |
Add cas(4), a driver for Sun Cassini/Cassini+ and National Semiconductor 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
|
#
193334 |
|
02-Jun-2009 |
rwatson |
Remove MAC kernel config files and add "options MAC" to GENERIC, with the goal of shipping 8.0 with MAC support in the default kernel. No policies will be compiled in or enabled by default, but it will now be possible to load them at boot or runtime without a kernel recompile.
While the framework is not believed to impose measurable overhead when no policies are loaded (a result of optimization over the past few months in HEAD), we'll continue to benchmark and optimize as the release approaches. Please keep an eye out for performance or functionality regressions that could be a result of this change.
Approved by: re (kensmith) Obtained from: TrustedBSD Project
|
#
192508 |
|
21-May-2009 |
yongari |
Add nge(4), nge(4) should work on all architectures.
|
#
191954 |
|
09-May-2009 |
kuriyama |
- Use "device\t" and "options \t" for consistency.
|
#
190100 |
|
19-Mar-2009 |
thompsa |
Remove the uscanner(4) driver, this follows the removal of the kernel scanner driver in Linux 2.6. uscanner was just a simple wrapper around a fifo and contained no logic, the default interface is now libusb (supported by sane).
Reviewed by: HPS
|
#
189715 |
|
11-Mar-2009 |
yongari |
Uncomment txp(4), txp(4) should work on all architectures.
|
#
188944 |
|
23-Feb-2009 |
thompsa |
Change over the usb kernel options to the new stack (retaining existing naming). The old usb stack can be compiled in my prefixing the name with 'o'.
|
#
188665 |
|
15-Feb-2009 |
thompsa |
Add uslcom to the build too.
Reminded by: Michael Butler
|
#
188660 |
|
15-Feb-2009 |
thompsa |
Switch over GENERIC kernels to USB2 by default.
Tested by: make universe
|
#
185567 |
|
02-Dec-2008 |
ed |
Remove "[KEEP THIS!]" from COMPAT_43TTY. It's not really that important.
Sgtty is a programming interface that has been replaced by termios over the years. In June we already removed <sgtty.h>, which exposes the ioctl()'s that are implemented by this interface. The importance of this flag is overrated right now.
|
#
185522 |
|
01-Dec-2008 |
sam |
Switch to ath hal source code. Note this removes the ath_hal module; the ath module now brings in the hal support. Kernel config files are almost backwards compatible; supplying
device ath_hal
gives you the same chip support that the binary hal did but you must also include
options AH_SUPPORT_AR5416
to enable the extended format descriptors used by 11n parts. It is now possible to control the chip support included in a build by specifying exactly which chips are to be supported in the config file; consult ath_hal(4) for information.
|
#
183762 |
|
11-Oct-2008 |
marius |
Enable mpt(4) as some later models have on-board Fusion-MPT controllers and it seems to work just fine with at least an add-on SAS3080X. While at it, remove the commented out ncr(4) as it doesn't even use bus_dma(9), which isn't worth fixing though as sym(4) already supports a superset of the controllers driven by ncr(4).
|
#
182693 |
|
02-Sep-2008 |
obrien |
ahc(4) work better in Sparc64 with AHC_ALLOW_MEMIO.
Submitted by: Nathan Whitehorn <nwhitehorn@freebsd.org>
|
#
182057 |
|
23-Aug-2008 |
marius |
Remove clkbrd(4) as a separate device and compile it solely based on the presence of fhc(4) instead; we by far don't support all of the functionality provide by the clock board but in general it's an integral part of FireHose-based systems which shouldn't be possible to omit.
|
#
182055 |
|
23-Aug-2008 |
marius |
- Add kbdmux(4); since sunkbd(4) was tought to emulate atkbd(4) like ukbd(4) does and that emulation was enabled by default, all three of them work together with kbdmux(4) out of the box just fine. - Fix some whitespace bugs.
MFC after: 3 days
|
#
181905 |
|
20-Aug-2008 |
ed |
Integrate the new MPSAFE TTY layer to the FreeBSD operating system.
The last half year I've been working on a replacement TTY layer for the FreeBSD kernel. The new TTY layer was designed to improve the following:
- Improved driver model:
The old TTY layer has a driver model that is not abstract enough to make it friendly to use. A good example is the output path, where the device drivers directly access the output buffers. This means that an in-kernel PPP implementation must always convert network buffers into TTY buffers.
If a PPP implementation would be built on top of the new TTY layer (still needs a hooks layer, though), it would allow the PPP implementation to directly hand the data to the TTY driver.
- Improved hotplugging:
With the old TTY layer, it isn't entirely safe to destroy TTY's from the system. This implementation has a two-step destructing design, where the driver first abandons the TTY. After all threads have left the TTY, the TTY layer calls a routine in the driver, which can be used to free resources (unit numbers, etc).
The pts(4) driver also implements this feature, which means posix_openpt() will now return PTY's that are created on the fly.
- Improved performance:
One of the major improvements is the per-TTY mutex, which is expected to improve scalability when compared to the old Giant locking. Another change is the unbuffered copying to userspace, which is both used on TTY device nodes and PTY masters.
Upgrading should be quite straightforward. Unlike previous versions, existing kernel configuration files do not need to be changed, except when they reference device drivers that are listed in UPDATING.
Obtained from: //depot/projects/mpsafetty/... Approved by: philip (ex-mentor) Discussed: on the lists, at BSDCan, at the DevSummit Sponsored by: Snow B.V., the Netherlands dcons(4) fixed by: kan
|
#
181233 |
|
03-Aug-2008 |
ed |
Disconnect drivers that haven't been ported to MPSAFE TTY yet.
As clearly mentioned on the mailing lists, there is a list of drivers that have not been ported to the MPSAFE TTY layer yet. Remove them from the kernel configuration files. This means people can now still use these drivers if they explicitly put them in their kernel configuration file, which is good.
People should keep in mind that after August 10, these drivers will not work anymore. Even though owners of the hardware are capable of getting these drivers working again, I will see if I can at least get them to a compilable state (if time permits).
|
#
180359 |
|
07-Jul-2008 |
delphij |
Add HWPMC_HOOKS to GENERIC kernels, this makes hwpmc.ko work out of the box.
|
#
179078 |
|
17-May-2008 |
remko |
Resort the if_ti driver to match the PCI Network cards instead of placing it under the mii devices list.
PR: kern/123147 Submitted by: gavin Approved by: imp (mentor, implicit) MFC after: 3 days
|
#
178742 |
|
03-May-2008 |
sam |
enable IEEE80211_DEBUG and IEEE80211_AMPDU_AGE by default
|
#
178372 |
|
21-Apr-2008 |
phk |
Make genclock standard on all platforms.
Thanks to: grehan & marcel for platform support on ia64 and ppc.
|
#
178354 |
|
20-Apr-2008 |
sam |
Multi-bss (aka vap) support for 802.11 devices.
Note this includes changes to all drivers and moves some device firmware loading to use firmware(9) and a separate module (e.g. ral). Also there no longer are separate wlan_scan* modules; this functionality is now bundled into the wlan module.
Supported by: Hobnob and Marvell Reviewed by: many Obtained from: Atheros (some bits)
|
#
177662 |
|
27-Mar-2008 |
dfr |
Add kernel module support for nfslockd and krpc. Use the module system to detect (or load) kernel NLM support in rpc.lockd. Remove the '-k' option to rpc.lockd and make kernel NLM the default. A user can still force the use of the old user NLM by building a kernel without NFSLOCKD and/or removing the nfslockd.ko module.
|
#
177052 |
|
11-Mar-2008 |
yongari |
Uncomment vr(4), vr(4) should work on all architectures.
|
#
175528 |
|
21-Jan-2008 |
yongari |
Uncomment sf(4), sf(4) should work on all architectures.
|
#
175147 |
|
07-Jan-2008 |
jhb |
Add COMPAT_FREEBSD7 and enable it in configs that have COMPAT_FREEBSD6.
|
#
174195 |
|
02-Dec-2007 |
rwatson |
Break out stack(9) from ddb(4):
- Introduce per-architecture stack_machdep.c to hold stack_save(9). - Introduce per-architecture machine/stack.h to capture any common definitions required between db_trace.c and stack_machdep.c. - Add new kernel option "options STACK"; we will build in stack(9) if it is defined, or also if "options DDB" is defined to provide compatibility with existing users of stack(9).
Add new stack_save_td(9) function, which allows the capture of a stacktrace of another thread rather than the current thread, which the existing stack_save(9) was limited to. It requires that the thread be neither swapped out nor running, which is the responsibility of the consumer to enforce.
Update stack(9) man page.
Build tested: amd64, arm, i386, ia64, powerpc, sparc64, sun4v Runtime tested: amd64 (rwatson), arm (cognet), i386 (rwatson)
|
#
174005 |
|
28-Nov-2007 |
attilio |
Make ADAPTIVE_GIANT as the default in the kernel and remove the option. Currently, Giant is not too much contented so that it is ok to treact it like any other mutexes.
Please don't forget to update your own custom config kernel files.
Approved by: cognet, marcel (maintainers of arches where option is not enabled at the moment)
|
#
172332 |
|
26-Sep-2007 |
brueffer |
Use the correct expanded name for SCTP.
PR: 116496 Submitted by: koitsu Reviewed by: rrs Approved by: re (kensmith)
|
#
170731 |
|
14-Jun-2007 |
delphij |
Enable SCTP by default for GENERIC kernels in order to give it more exposure. The current state of SCTP implementation is considered to be ready for 32-bit platforms, but still need some work/testing on 64-bit platforms.
Approved by: re (kensmith) Discussed with: rrs
|
#
170552 |
|
11-Jun-2007 |
thompsa |
Add wlan_scan_ap and wlan_scan_sta to platforms that include wlan.
|
#
170440 |
|
08-Jun-2007 |
rwatson |
Enable AUDIT by default in the GENERIC kernel, allowing security event auditing to be turned on without a kernel recompile, just an rc.conf option.
Approved by: re (kensmith) Obtained from: TrustedBSD Project
|
#
170061 |
|
28-May-2007 |
simokawa |
Enable fwip and dcons in GENERIC. They seem fairly stable.
Note on dcons: To enable dcons in kernel, put the following lines in /boot/loader.conf. You may also want to enable dcons in /etc/ttys.
boot_multicons="YES" #Force dcons to be the high-level console if a firewire bus presents. #hw.firewire.dcons_crom.force_console=1
FireWire/dcons support in loader will come shortly. (i386/amd64 only)
|
#
168603 |
|
10-Apr-2007 |
pjd |
Remove trailing '.' for consistency!
|
#
168594 |
|
10-Apr-2007 |
pjd |
Add UFS_GJOURNAL options to the GENERIC kernel.
Approved by: re (kensmith)
|
#
166604 |
|
09-Feb-2007 |
brooks |
Include GEOM_LABEL in GENERIC. It's very useful and not well publicized enough.
Approved by: pjd
|
#
166551 |
|
07-Feb-2007 |
marcel |
Evolve the ctlreq interface added to geom_gpt into a generic partitioning class that supports multiple schemes. Current schemes supported are APM (Apple Partition Map) and GPT. Change all GEOM_APPLE anf GEOM_GPT options into GEOM_PART_APM and GEOM_PART_GPT (resp).
The ctlreq interface supports verbs to create and destroy partitioning schemes on a disk; to add, delete and modify partitions; and to commit or undo changes made.
|
#
163711 |
|
26-Oct-2006 |
jb |
Remove the KSE option now that it's in DEFAULTS on these arches/machines.
The 'nooption' kernel config entry has to be used to turn KSE off now. This isn't my preferred way of dealing with this, but I'll defer to scottl's experience with the io/mem kernel option change and the grief experienced over that.
Submitted by: scottl@
|
#
163709 |
|
26-Oct-2006 |
jb |
Make KSE a kernel option, turned on by default in all GENERIC kernel configs except sun4v (which doesn't process signals properly with KSE).
Reviewed by: davidxu@
|
#
163041 |
|
05-Oct-2006 |
simon |
- Remove SCHED_ULE from GENERIC to better avoid foot-shooting by unsuspecting users. - Add a comment in NOTES about experimental status of SCHED_ULE. - Make warning about experimental status in sched_ule(4) a bit stronger.
Suggested and reviewed by: dougb Discussed on: developers MFC after: 3 days
|
#
162658 |
|
26-Sep-2006 |
ru |
Added COMPAT_FREEBSD6 option.
|
#
160654 |
|
24-Jul-2006 |
yongari |
Add stge(4) to the list of drivers supported by GENERIC kernel.
|
#
160210 |
|
09-Jul-2006 |
mjacob |
Make the firmware assist driver resident in preparation for isp using it.
|
#
159964 |
|
26-Jun-2006 |
babkin |
Backed out the change by request from rwatson.
PR: kern/14584
|
#
159927 |
|
25-Jun-2006 |
babkin |
The common UID/GID space implementation. It has been discussed on -arch in 1999, and there are changes to the sysctl names compared to PR, according to that discussion. The description is in sys/conf/NOTES. Lines in the GENERIC files are added in commented-out form. I'll attach the test script I've used to PR.
PR: kern/14584 Submitted by: babkin
|
#
159651 |
|
15-Jun-2006 |
netchild |
Remove COMPAT_43 from GENERIC (and other kernel configs). For amd64 there's an explicit comment that it's needed for the linuxolator. This is not the case anymore. For all other architectures there was only a "KEEP THIS". I'm (and other people too) running a COMPAT_43-less kernel since it's not necessary anymore for the linuxolator. Roman is running such a kernel for a for longer time. No problems so far. And I doubt other (newer than ia32 or alpha) architectures really depend on it.
This may result in a small performance increase for some workloads.
If the removal of COMPAT_43 results in a not working program, please recompile it and all dependencies and try again before reporting a problem.
The only place where COMPAT_43 is needed (as in: does not compile without it) is in the (outdated/not usable since too old) svr4 code.
Note: this does not remove the COMPAT_43TTY option.
Nagging by: rdivacky
|
#
159381 |
|
07-Jun-2006 |
sam |
add ath & co.
MFC after: 1 month
|
#
158071 |
|
27-Apr-2006 |
yongari |
Uncomment sk(4) as it's now working.
|
#
157994 |
|
24-Apr-2006 |
delphij |
Move AHC_REG_PRETTY_PRINT and AHD_REG_PRETTY_PRINT below their corresponding devices.
|
#
157302 |
|
30-Mar-2006 |
marcel |
Add scc(4).
|
#
155151 |
|
31-Jan-2006 |
marius |
Hook up le(4) to the build. For now it's only added to the sparc64 GENERIC in order to support the on-board LANCE in Ultra 1 and to the MI NOTES as it should work just fine with the AMD PCnet family of chips on all archs but is not yet meant to replace lnc(4). If a kernel includes all of le(4), lnc(4) and pcn(4) precedence is given to lnc(4)/pcn(4) for now.
|
#
154170 |
|
10-Jan-2006 |
phk |
Move the old BSD4.3 tty compatibility from (!BURN_BRIDGES && COMPAT_43) to COMPAT_43TTY.
Add COMPAT_43TTY to NOTES and */conf/GENERIC
Compile tty_compat.c only under the new option.
Spit out #warning "Old BSD tty API used, please upgrade." if ioctl_compat.h gets #included from userland.
|
#
153771 |
|
28-Dec-2005 |
yongari |
Uncomment ti(4) as it's now working.
|
#
153627 |
|
21-Dec-2005 |
yongari |
Uncomment bge(4) as it's now working.
|
#
152865 |
|
27-Nov-2005 |
ru |
- Allow duplicate "machine" directives with the same arguments. - Move existing "machine" directives to DEFAULTS.
|
#
152661 |
|
21-Nov-2005 |
jhb |
Create DEFAULTS files for alpha, ia64, powerpc, and sparc64 and move 'device mem' over from GENERIC to DEFAULTS to be consistent with i386 and amd64. Additionally, on ia64 enable ACPI by default since ia64 requires acpi.
|
#
152227 |
|
09-Nov-2005 |
yongari |
Uncomment em(4) as it's now working.
|
#
149112 |
|
15-Aug-2005 |
marius |
Now that at least some screen savers work on sparc64 sync with other archs and enable splash(4) by default (the non-working screen savers either don't compile or just have no effect when loaded, i.e. don't cause harm).
MFC after: 1 week
|
#
147991 |
|
14-Jul-2005 |
kensmith |
Add recently invented COMPAT_FREEBSD5 option.
MFC after: 3 days
|
#
147277 |
|
10-Jun-2005 |
marius |
Turn on atkbdc(4), atkbd(4), creator(4), machfb(4), syscons(4), ohci(4), psm(4), ukbd(4), ums(4) and usb(4) on by default. Modulo some nits with the most annoying one probably being USB keyboards no longer working at the OFW boot prompt after halting FreeBSD these drivers work fine on sparc64 including X and there's nothing left that I'd consider a show- stopper. I.e. graphical consoles on sun4u machines should either work out of the box or by plugging in a card that is supported by either creator(4) or machfb(4). The exception obviously are SBus-only machines without UPA slots like some Ultra 1 (but which also still lack support in other areas) and certain Exx0 (but which probably are mainly used with serial consoles anyway). I'll try to add a cgsix(4) for these later as Sun CG6 cards are probably the most common SBus framebuffer cards in sun4u machines. I however don't see much sense in adding drivers for the dozen of SBus framebuffers that were destined for sparc v8 machines. The rest of the USB drivers aren't enabled as I'm only aware of ukbd(4) and ums(4) as well as ohci(4) working with the on-board ALI M5237 and Sun PCIO-2 controllers. Aue(4) definitely doesn't work on sparc64, yet.
Thanks to: - Jake for the initial work on syscons(4) on sparc64 and creator(4). - Marcel for uart(4) and especially for its support for the SCCs which are only used on sparc64 so far. In various regards it wouldn't have been possible to enable syscons(4) by default on sparc64, yet, without uart(4). - All that tested patches.
Ok'ed by: scottl (RE hat), tmm
|
#
147272 |
|
10-Jun-2005 |
marius |
- Hook up atkbdc(4), atkbd(4) and psm(4) to the sparc64 build, not enabled in GENERIC by default, yet. - While here remove the exclusion of ukbd(4) from the sparc64 NOTES as ukbd(4) compiles and works on sparc64.
|
#
146483 |
|
21-May-2005 |
marius |
- Hook up machfb(4) to the sparc64 build, not enabled in GENERIC by default, yet. - Replace "graphics cards" with "framebuffers" in the description of creator(4) in order to make it uniform with the description of machfb(4) and the latter occur both on-board and as add-on cards.
|
#
143985 |
|
22-Mar-2005 |
sobomax |
Add USB Communication Device Class Ethernet driver. Originally written for FreeBSD based on aue(4) it was picked by OpenBSD, then from OpenBSD ported to NetBSD and finally NetBSD version merged with original one goes into FreeBSD.
Obtained from: http://www.gank.org/freebsd/cdce/ NetBSD OpenBSD
|
#
143827 |
|
18-Mar-2005 |
marius |
Add a driver for the 'clock-board' device (the clock board is an inevitable component in Sun Exx00 machines and provides serial ports, NVRAM and TOD amongst others which are handled by uart(4) and eeprom(4) respectively). This driver currently only prints out information about the chassis on attach and allows to blink the 'Cycling' LED (which is duplicated on the front panel) of the clock board just like fhc(4) does for the other boards. The device name for the LED is /dev/led/clockboard.
Obtained from: OpenBSD Tested by: joerg
|
#
143809 |
|
18-Mar-2005 |
murray |
Add a comment to note that pseudo-device bpf is required for DHCP. This is mentioned in the Handbook but it is not as obvious to new users why bpf is needed compared to the other largely self-explanatory items in GENERIC.
PR: conf/40855 MFC after: 1 week
|
#
143072 |
|
02-Mar-2005 |
marius |
Remove COMPAT_FREEBSD4 again. It was added in rev. 1.41 as a transition aid for ABI breakages caused by system call changes. These changes were done way before sparc64 switched to a 64-bit time_t so all binaries are expected to have been recompiled by now.
|
#
142656 |
|
27-Feb-2005 |
marius |
The zs(4) driver is superseded by uart(4) and broken in -CURRENT. Remove it from the sparc64 kernel config files and delete its fhc(4) and sbus(4) front-end.
Agreed with: marcel
|
#
141033 |
|
30-Jan-2005 |
marcel |
o Enable puc(4) and uart(4). o Disable ofw_console(4), sab(4) and zs(4).
sab(4) and zs(4) are disabled because the hardware controlled by them is handled by uart(4)+puc(4) and the latter combination is functionally complete and up to date.
ofw_console(4) is disabled because it doesn't claim the device it controls (through OFW) and thus interferes with puc(4)+uart(4), which has sufficient knowledge to extract the necessary information from OFW to setup the console. Put differently, ofw_console(4) is not a proper device driver and can only do harm. Its functionality is completely handled by uart(4).
This commit makes uart(4) the default driver for serial ports.
MFC after: 2 weeks
|
#
139446 |
|
30-Dec-2004 |
jhb |
Minor sync to alpha and i386: - Add ADAPTIVE_GIANT and AHC_REG_PRETTY_PRINT. - Indent SMP to match other options.
|
#
137822 |
|
17-Nov-2004 |
marius |
Add a front-end for the `rtc' device which is a MC146818 compatible clock found on the ISA bus (some USIIe, USIIi and USIIIi models) and EBus (USIII models) instead of a MK48Txx clock.
Testet by: Matthew T. Lager" <freebsd@trinetworks.com> on Sun Fire V100, Xavier Beaudouin <kiwi@oav.net> on Netra X1 (initial version)
|
#
137814 |
|
17-Nov-2004 |
marius |
Shorten the description of the mk48txx driver to just say that it supports MK48Txx clocks, there are now to many models supported to list them all here.
|
#
137812 |
|
17-Nov-2004 |
marius |
Catch up with version 600000 of config(8), quotes around device names containing digits are no longer required.
|
#
137137 |
|
02-Nov-2004 |
andre |
Reduce annoying SCSI probing delay from 15 to 5 seconds in all GENRIC kernels.
Discussed on: -current
|
#
136301 |
|
09-Oct-2004 |
yongari |
Port NetBSD auxio driver. The driver was modified to use led(4) and can be used to announce various system activity. The auxio device provides auxiliary I/O functions and is found on various SBus/EBus UltraSPARC models. At present, only front panel LED is controlled by this driver.
Approved by: jake (mentor) Reviewed by: joerg Tested by: joerg
|
#
134997 |
|
09-Sep-2004 |
scottl |
sparc64 is not ready for PREEMPTION, so turn it off for now.
|
#
134917 |
|
07-Sep-2004 |
scottl |
Switch the default scheduler to 4BSD to match what will go into RELENG_5 soon. It can be switched back once 5.3 is tested and released. Also turn on PREEMPTION as many of the stability problems with it have been fixed.
MT5: 3 days.
|
#
134383 |
|
27-Aug-2004 |
andre |
Always compile PFIL_HOOKS into the kernel and remove the associated kernel compile option. All FreeBSD packet filters now use the PFIL_HOOKS API and thus it becomes a standard part of the network stack.
If no hooks are connected the entire packet filter hooks section and related activities are jumped over. This removes any performance impact if no hooks are active.
Both OpenBSD and DragonFlyBSD have integrated PFIL_HOOKS permanently as well.
|
#
133910 |
|
16-Aug-2004 |
marius |
- Sync whitespace and comments with i386 GENERIC. - Add some commented out NICs from i386 GENERIC. Most of them look like they would work but I'm not sure if they are endian-clean and can't test. There was a report that sk(4) works on sparc64 but it doesn't look like it would because it doesn't use busdma. - Improve some of the descriptions of sparc64 specific devices.
There's no functional change, i.e. no added or deleted uncommented devices or options, in this commit.
|
#
133087 |
|
03-Aug-2004 |
markm |
Making a loadable null.ko for /dev/(null|zero) proved rather unpopular, so remove this (mis)feature.
Encouragement provided by: jhb (and others)
|
#
132956 |
|
01-Aug-2004 |
markm |
Break out the MI part of the /dev/[k]mem and /dev/io drivers into their own directory and module, leaving the MD parts in the MD area (the MD parts _are_ part of the modules). /dev/mem and /dev/io are now loadable modules, thus taking us one step further towards a kernel created entirely out of modules. Of course, there is nothing preventing the kernel from having these statically compiled.
|
#
132345 |
|
18-Jul-2004 |
maxim |
In -CURRENT pseudo devices are not statically assigned at compile time, remove a stale comment.
PR: kern/62285
|
#
131969 |
|
11-Jul-2004 |
marcel |
Add options KDB and GDB. KDB takes on the function of what DDB used to be. Both DDB and GDB specify which KDB backends to include.
|
#
130295 |
|
10-Jun-2004 |
scottl |
Add esp to the sparc64 GENERIC
|
#
129051 |
|
08-May-2004 |
marius |
- Remove the old sparc64 OFW PCI code (as opposed to the former "options OFW_NEWPCI"). This is a bit overdue, the new sparc64 OFW PCI code which is meant to replace the old one is in place for 10 months and enabled by default in GENERIC for 8 months. FreeBSD 5.2 and 5.2.1 also shipped with the new code enabled by default. - Some minor clean-up, e.g. remove functions that encapsulated the #ifdefs for OFW_NEWPCI, remove unused resp. no longer required includes, etc.
Approved by: tmm, no objections on freebsd-sparc64
|
#
128845 |
|
02-May-2004 |
marcel |
Add option GEOM_GPT. This brings the ability to have a large number of partitions on a single disk.
|
#
128838 |
|
02-May-2004 |
obrien |
Spell Ethernet correctly.
|
#
128758 |
|
30-Apr-2004 |
marius |
Remove the separate kernel option for Sun APB PCI-PCI bridges and make support for them conditional on the pci(4) kernel option instead.
OK'ed by: tmm
|
#
128757 |
|
30-Apr-2004 |
marius |
Enable _KPOSIX_PRIORITY_SCHEDULING by default, it works fine on sparc64.
OK'ed by: tmm
|
#
124935 |
|
24-Jan-2004 |
jeff |
- Recruit some new ULE users by making it the default scheduler in GENERIC. ULE will be in a probationary period to determine whether it will be left as the default in 5.3 which would likely mean the rest of the 5.x series.
|
#
124919 |
|
24-Jan-2004 |
nectar |
Add PFIL_HOOKS to the GENERIC kernel configuration, primarily so that one can load the IPFilter module (which requires PFIL_HOOKS).
Requested by: Many, for over a year
|
#
122696 |
|
14-Nov-2003 |
jake |
Fix more spammage with local changes. Didn't look at the diffs before committing.
Pointy hat to: jake
|
#
122641 |
|
14-Nov-2003 |
jake |
Rev 1.61 accidentily added makeoptions NO_MODULES=yes. Funny that I add this to all my kernel configs.
Submitted by: Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp>
|
#
122474 |
|
11-Nov-2003 |
jake |
Remove reference to sio (superseded by uart).
|
#
122473 |
|
11-Nov-2003 |
jake |
Add entries for creator, splash, uart and puc, commented out until they're made the default. These are needed to run X.
|
#
122472 |
|
11-Nov-2003 |
jake |
Remove references to atkbd, atkbdc, psm and vga.
|
#
119868 |
|
08-Sep-2003 |
wpaul |
Take the support for the 8139C+/8169/8169S/8110S chips out of the rl(4) driver and put it in a new re(4) driver. The re(4) driver shares the if_rlreg.h file with rl(4) but is a separate module. (Ultimately I may change this. For now, it's convenient.)
rl(4) has been modified so that it will never attach to an 8139C+ chip, leaving it to re(4) instead. Only re(4) has the PCI IDs to match the 8169/8169S/8110S gigE chips. if_re.c contains the same basic code that was originally bolted onto if_rl.c, with the following updates:
- Added support for jumbo frames. Currently, there seems to be a limit of approximately 6200 bytes for jumbo frames on transmit. (This was determined via experimentation.) The 8169S/8110S chips apparently are limited to 7.5K frames on transmit. This may require some more work, though the framework to handle jumbo frames on RX is in place: the re_rxeof() routine will gather up frames than span multiple 2K clusters into a single mbuf list.
- Fixed bug in re_txeof(): if we reap some of the TX buffers, but there are still some pending, re-arm the timer before exiting re_txeof() so that another timeout interrupt will be generated, just in case re_start() doesn't do it for us.
- Handle the 'link state changed' interrupt
- Fix a detach bug. If re(4) is loaded as a module, and you do tcpdump -i re0, then you do 'kldunload if_re,' the system will panic after a few seconds. This happens because ether_ifdetach() ends up calling the BPF detach code, which notices the interface is in promiscuous mode and tries to switch promisc mode off while detaching the BPF listner. This ultimately results in a call to re_ioctl() (due to SIOCSIFFLAGS), which in turn calls re_init() to handle the IFF_PROMISC flag change. Unfortunately, calling re_init() here turns the chip back on and restarts the 1-second timeout loop that drives re_tick(). By the time the timeout fires, if_re.ko has been unloaded, which results in a call to invalid code and blows up the system.
To fix this, I cleared the IFF_UP flag before calling ether_ifdetach(), which stops the ioctl routine from trying to reset the chip.
- Modified comments in re_rxeof() relating to the difference in RX descriptor status bit layout between the 8139C+ and the gigE chips. The layout is different because the frame length field was expanded from 12 bits to 13, and they got rid of one of the status bits to make room.
- Add diagnostic code (re_diag()) to test for the case where a user has installed a broken 32-bit 8169 PCI NIC in a 64-bit slot. Some NICs have the REQ64# and ACK64# lines connected even though the board is 32-bit only (in this case, they should be pulled high). This fools the chip into doing 64-bit DMA transfers even though there is no 64-bit data path. To detect this, re_diag() puts the chip into digital loopback mode and sets the receiver to promiscuous mode, then initiates a single 64-byte packet transmission. The frame is echoed back to the host, and if the frame contents are intact, we know DMA is working correctly, otherwise we complain loudly on the console and abort the device attach. (At the moment, I don't know of any way to work around the problem other than physically modifying the board, so until/unless I can think of a software workaround, this will have do to.)
- Created re(4) man page
- Modified rlphy.c to allow re(4) to attach as well as rl(4).
Note that this code works for the sample 8169/Marvell 88E1000 NIC that I have, but probably won't work for the 8169S/8110S chips. RealTek has sent me some sample NICs, but they haven't arrived yet. I will probably need to add an rlgphy driver to handle the on-board PHY in the 8169S/8110S (it needs special DSP initialization).
|
#
119149 |
|
19-Aug-2003 |
obrien |
Enable OFW_NEWPCI until jmg's 2003/06/21 18:26:08 PDT bus commit is fixed that caused a 3-4 times slow down in performance. (the primary Sparc64 developers are all using OFW_NEWPCI already, so it is the best code path for users)
|
#
117355 |
|
09-Jul-2003 |
mux |
Uncomment the dc(4) driver, it should work just fine now.
|
#
117121 |
|
01-Jul-2003 |
tmm |
Add a commented-out entry for OFW_NEWPCI to GENERIC and NOTES, along with a comment describing it's advantages and the implication of changing it. While being there, fix a typo in NOTES.
The option is not enabled in NOTES for now since large portions of code are conditional on it being disabled, too.
|
#
115999 |
|
08-Jun-2003 |
jmallett |
Note that scbus is required for SCSI, not just "required" in general.
Submitted by: Edward Kaplan (tmbg37 on IRC) Reviewed by: rwatson (in principle)
|
#
114099 |
|
26-Apr-2003 |
jake |
Remove some debug options that are no longer needed.
|
#
113803 |
|
21-Apr-2003 |
simokawa |
Add FireWire drivers to GENERIC.
|
#
113757 |
|
20-Apr-2003 |
wpaul |
Add device driver support for the ASIX Electronics AX88172 USB 2.0 ethernet controller. The driver has been tested with the LinkSys USB200M adapter. I know for a fact that there are other devices out there with this chip but don't have all the USB vendor/device IDs.
Note: I'm not sure if this will force the driver to end up in the install kernel image or not. Special magic needs to be done to exclude it to keep the boot floppies from bloating again, someone please advise.
|
#
113272 |
|
08-Apr-2003 |
mux |
The fxp(4) driver is now working on sparc64 too!
Tested by: jake
|
#
112498 |
|
22-Mar-2003 |
ru |
Remove bitrot associated with `maxusers'.
Submitted by: bde
|
#
111180 |
|
20-Feb-2003 |
mux |
Uncomment the xl(4) driver since it's now working properly on sparc64.
|
#
111073 |
|
18-Feb-2003 |
jake |
Add central and fhc.
|
#
110831 |
|
13-Feb-2003 |
obrien |
Fix the style of the SCHED_4BSD commit.
|
#
110202 |
|
01-Feb-2003 |
joe |
Put replace spaces with tabs in keeping with the rest of the file.
|
#
110154 |
|
31-Jan-2003 |
mjacob |
SCSI Changers, SCSI Tapes, and SES devices work just about as well as anything else in sparc64.
|
#
109924 |
|
27-Jan-2003 |
jake |
Enable device zs and device sab by default.
|
#
109865 |
|
26-Jan-2003 |
jeff |
- Introduce the SCHED_ULE and SCHED_4BSD options for compile time selection of the scheduler. - Add SCHED_4BSD as the scheduler for all kernel config files in cvs.
|
#
109159 |
|
13-Jan-2003 |
obrien |
Enable rl(4). It is now fully working using busdma.
|
#
108535 |
|
01-Jan-2003 |
jake |
Add a driver for the Zilog 8530 dual uart found in Ultra 1s and Ultra 2s. With a 1 byte transmit fifo, 3 byte receive fifo, and wierd multiplexed I/O designed for a Z80 cpu, this chip redefines suckage.
Based on the openbsd and netbsd drivers. Only really works as a console, modem support is not complete since I can't test it.
|
#
105976 |
|
26-Oct-2002 |
peter |
Add COMPAT_FREEBSD4 for the transition. COMPAT_43 was already present.
|
#
105810 |
|
23-Oct-2002 |
phk |
Remove NO_GEOM from sparc64.
Reminded by: jhb
|
#
105463 |
|
19-Oct-2002 |
rwatson |
Permits UFS ACLs to be used with the GENERIC kernel. Due to recent ACL configuration changes, this shouldn't result in different code paths for file systems not explicitly configured for ACLs by the system administrator. For UFS1, administrators must still recompile their kernel to add support for extended attributes; for UFS2, it's sufficient to enable ACLs using tunefs or at mount-time (tunefs preferred for reliability reasons). UFS2, for a variety of reasons, including performance and reliability, is the preferred file system for use with ACLs.
Approved by: re
|
#
105054 |
|
13-Oct-2002 |
mike |
Remove the P1003_1B kernel option; it is no longer used.
|
#
104519 |
|
05-Oct-2002 |
phk |
NB: This commit does *NOT* make GEOM the default in FreeBSD NB: But it will enable it in all kernels not having options "NO_GEOM"
Put the GEOM related options into the intended order.
Add "options NO_GEOM" to all kernel configs apart from NOTES.
In some order of controlled fashion, the NO_GEOM options will be removed, architecture by architecture in the coming days.
There are currently three known issues which may force people to need the NO_GEOM option:
boot0cfg/fdisk: Tries to update the MBR while it is being used to control slices. GEOM does not allow this as a direct operation.
SCSI floppy drives: Appearantly the scsi-da driver return "EBUSY" if no media is inserted. This is wrong, it should return ENXIO.
PC98: It is unclear if GEOM correctly recognizes all variants of PC98 disklabels. (Help Wanted! I have neither docs nor HW)
These issues are all being worked.
Sponsored by: DARPA & NAI Labs.
|
#
104335 |
|
01-Oct-2002 |
jake |
Remove options NO_MODULES=true. Lots of modules build, but may not load or work properly. MAC modules work at least :).
|
#
103771 |
|
21-Sep-2002 |
benno |
It's Apple GMAC, not HMAC.
Approved by: jake (for sparc64)
|
#
103770 |
|
21-Sep-2002 |
jake |
Moved nfs_diskless setup code from autoconf.c to nfsclient/nfs_diskless.c so that it is MI. Allow nfs_mountroot to return an error if the nfs_diskless struct is not valid, rather than panicing later on. Call nfs_setup_diskless() from nfs_mountroot if NFS_ROOT is defined, like bootpc_init(). Removed legacy root mount support for sparc64, and enabled NFS_ROOT by default.
|
#
102153 |
|
19-Aug-2002 |
peter |
remove unit counts from atkbdc, pckbd, sc
|
#
101704 |
|
11-Aug-2002 |
mjacob |
Add support for the LSI-Logic Fusion/MP architecture.
This is an architecture that present a thing message passing interface to the OS. You can query as to how many ports and what kind are attached and enable them and so on.
A less grand view is that this is just another way to package SCSI (SPI or FC) and FC-IP into a one-driver interface set.
This driver support the following hardware:
LSI FC909: Single channel, 1Gbps, Fibre Channel (FC-SCSI only) LSI FC929: Dual Channel, 1-2Gbps, Fibre Channel (FC-SCSI only) LSI 53c1020: Single Channel, Ultra4 (320M) (Untested) LSI 53c1030: Dual Channel, Ultra4 (320M)
Currently it's in fair shape, but expect a lot of changes over the next few weeks as it stabilizes.
Credits:
The driver is mostly from some folks from Jeff Roberson's company- I've been slowly migrating it to broader support that I it came to me as.
The hardware used in developing support came from:
FC909: LSI-Logic, Advansys (now Connetix) FC929: LSI-Logic 53c1030: Antares Microsystems (they make a very fine board!)
MFC after: 3 weeks
|
#
101588 |
|
09-Aug-2002 |
brooks |
Make ppp(4) devices clonable and unloadable.
|
#
101328 |
|
04-Aug-2002 |
jake |
se -> sab.
|
#
101165 |
|
01-Aug-2002 |
blackend |
Fix the link to the Handbook
|
#
100751 |
|
27-Jul-2002 |
mike |
Catch up to rev 1.339 of src/sys/conf/options (PCI_ENABLE_IO_MODES is now a sysctl and is enabled by default).
|
#
100551 |
|
23-Jul-2002 |
peter |
de-count pci
|
#
100464 |
|
21-Jul-2002 |
peter |
Add explicit unit count on 'device pci' for ahc/ahd
|
#
100189 |
|
16-Jul-2002 |
jhb |
Various comment and minor style fixes. No actual content changes.
Inspired by: bde
|
#
99106 |
|
30-Jun-2002 |
rwatson |
Remove ALT_BREAK_TO_DEBUGGER. This was inconsistent (both in form and function) with existing configuration choices. Arguably if ALT_BREAK_TO_DEBUGGER was present, so should have been BREAK_TO_DEBUGGER. Regardless, it broke the option sort order in these kernel configuration files.
Requested by: bde
|
#
99020 |
|
29-Jun-2002 |
obrien |
Do NOT enable ATA_STATIC_ID -- cmd646 controller will be !ata2!, and you will not mount an ATA /: mountroot> ufs:/ad0a Mounting root from ufs:/ad0a setrootbyname failed ffs_mountroot: can't find rootvp
|
#
98911 |
|
27-Jun-2002 |
mux |
GENERIC now builds with -Werror, so remove NO_WERROR.
Approved by: jake
|
#
98370 |
|
17-Jun-2002 |
obrien |
Sync with i386.
|
#
98034 |
|
08-Jun-2002 |
jake |
Re-enable SMP by default.
|
#
98019 |
|
07-Jun-2002 |
jake |
Comment out options SMP for now until I figure out what's going on.
|
#
97507 |
|
29-May-2002 |
jake |
Remove BOOTP_WIRED_TO= since I keep forgetting to take this out and screwing over people with gems.
|
#
96467 |
|
12-May-2002 |
jake |
Enable KTR_TRAP by default.
|
#
95992 |
|
03-May-2002 |
jmallett |
Typo fix: detects -> detect.
Reviewed by: phk
|
#
94980 |
|
18-Apr-2002 |
rwatson |
Since WITNESS doesn't just do mutexes, remove "mutex" from the WITNESS comment in GENERIC config files of appropriate platforms. For whatever reason, powerpc didn't use WITNESS in GENERIC.
|
#
94741 |
|
15-Apr-2002 |
obrien |
option<space><tab>
|
#
94253 |
|
08-Apr-2002 |
jake |
Add device se (commented out, most people won't find this useful yet).
|
#
94247 |
|
08-Apr-2002 |
jake |
Enable device pass.
|
#
93954 |
|
06-Apr-2002 |
jake |
Enable isp and ispfw. Remove the nonexistant SUN_DISKLABEL and ATA_ENABLE_BUSMATER.
|
#
93719 |
|
03-Apr-2002 |
ru |
Dike out a highly insecure UCONSOLE option. TIOCCONS must be able to VOP_ACCESS() /dev/console to succeed.
Obtained from: OpenBSD
|
#
93027 |
|
23-Mar-2002 |
jake |
Sync with other arches; add bloat.
|
#
91256 |
|
25-Feb-2002 |
obrien |
I was able to boot this kernel using the latest WIP kernel sources. I don't believe anyone is quite using the sparc64 kernel sources in CVS yet -- things aren't just quite ready (but almost). So this commit should be OK to make.
|
#
91198 |
|
24-Feb-2002 |
obrien |
Sync with the Alpha's GENERIC configuration. Most of the contents are commented out as they are as-yet untested. However, I wanted the contents to match our other arches, so that when people make changes to {i386,alpha,ia64}, they will also make the same changes here.
|
#
88606 |
|
29-Dec-2001 |
jake |
Add device ofw_console so this kernel is usable.
This commit brought to you by a sun ultra 10 running freebsd.
|
#
87546 |
|
08-Dec-2001 |
dillon |
Allow maxusers to be specified as 0 in the kernel config, which will cause the system to auto-size to between 32 and 512 depending on the amount of memory.
MFC after: 1 week
|
#
83872 |
|
24-Sep-2001 |
obrien |
+ Fix misplacement of `txp' + Document our -CURRENT debugging bits
|
#
82833 |
|
02-Sep-2001 |
obrien |
+ Blah, there was nothing wrong in rev 1.1 talking about the i386/NOTES. I should have diff'ed the header with the Alpha GENERIC. + fix style nit + turn on NO_MODULES for now.
|
#
82832 |
|
02-Sep-2001 |
obrien |
Match the style of very other platform we have.
|
#
81615 |
|
14-Aug-2001 |
jake |
Add a GENERIC kernel config for sparc64.
|