freebsd-skq/etc
Scott Long 52c9ce25d8 Separate the parallel scsi knowledge out of the core of the XPT, and
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
2009-07-10 08:18:08 +00:00
..
bluetooth
defaults rc.d/fsck: allow additional options for fsck_y_enable via fsck_y_flags 2009-06-10 19:03:23 +00:00
devd revert r187343 2009-01-16 20:42:43 +00:00
etc.amd64 Remove the note about using vt220, which makes no sense at all. 2009-06-14 22:35:33 +00:00
etc.arm Remove the note about using vt220, which makes no sense at all. 2009-06-14 22:35:33 +00:00
etc.i386 Remove the note about using vt220, which makes no sense at all. 2009-06-14 22:35:33 +00:00
etc.ia64 Remove the note about using vt220, which makes no sense at all. 2009-06-14 22:35:33 +00:00
etc.mips Remove the note about using vt220, which makes no sense at all. 2009-06-14 22:35:33 +00:00
etc.powerpc Remove the note about using vt220, which makes no sense at all. 2009-06-14 22:35:33 +00:00
etc.sparc64 Remove the note about using vt220, which makes no sense at all. 2009-06-14 22:35:33 +00:00
gss Implement support for RPCSEC_GSS authentication to both the NFS client 2008-11-03 10:38:00 +00:00
mail Add the URL for RFC2142 2009-03-23 00:40:07 +00:00
mtree Separate the parallel scsi knowledge out of the core of the XPT, and 2009-07-10 08:18:08 +00:00
namedb 1. New feature; option to have the script loop until a specified hostname 2009-05-16 20:55:28 +00:00
pam.d Add PAM support to cron(8). Now cron(8) will skip commands scheduled 2007-06-17 17:25:53 +00:00
periodic Rather than using both -prune (which requires directory-first tree traversal) 2009-06-02 07:35:51 +00:00
ppp With uart(4) default, change /dev/cuad# to /dev/cuau# so that 2008-07-19 20:00:18 +00:00
rc.d Reverse the effect of r193198 for pf and ipfw which will once again 2009-06-26 01:04:50 +00:00
root Remove more vestiges of /usr/X11R6, but leave mtree for portmgr. 2007-05-29 06:37:58 +00:00
sendmail A no-op commit to simulate the effect of a forced commit so the file 2008-08-31 18:21:15 +00:00
amd.map
apmd.conf
auth.conf
crontab Remove HOME= - this has surprised me several times in the past. 2009-06-14 06:37:19 +00:00
csh.cshrc
csh.login
csh.logout
ddb.conf Use the new command file feature of ddb(8) to support setting ddb(4) 2008-03-05 18:32:58 +00:00
devd.conf o Add missed semicolon in action script. 2009-05-16 15:12:56 +00:00
devfs.conf
dhclient.conf
disktab
fbtab
freebsd-update.conf Add /usr/share/man/whatis, /var/db/locate.database, and /var/log to the 2008-08-08 10:36:16 +00:00
ftpusers
gettytab
group Create group ftp by default. This is gid 14 as this is the historical 2007-06-11 18:36:39 +00:00
hosts
hosts.allow
hosts.equiv
hosts.lpd
inetd.conf Remove reference to the old ftp-proxy implementation, 2007-07-05 09:46:53 +00:00
libalias.conf
login.access
login.conf Usermode portion of the support for swap allocation accounting: 2009-06-23 20:57:27 +00:00
mac.conf
Makefile Welcome to a default installed /etc/ntp.conf 2009-06-07 13:26:57 +00:00
man.alias
master.passwd
minfree
motd
netconfig
netstart Add hostid to the ranks. 2009-03-19 12:52:19 +00:00
network.subr rtsol should not be run on the wireless NIC interfaces directly, 2009-06-26 01:27:16 +00:00
networks
newsyslog.conf The slip.log file got removed along with the MPSAFE tty work. If slip 2008-12-02 16:46:01 +00:00
nls.alias
nscd.conf
nsmb.conf
nsswitch.conf
ntp.conf Welcome to a default installed /etc/ntp.conf 2009-06-07 13:26:57 +00:00
opieaccess
pccard_ether Implement a "quiet" mode for rc.d/netif, which only outputs 2008-06-23 20:50:11 +00:00
pf.os
phones
portsnap.conf Add support for specifying which INDEX files to build via portsnap.conf. 2008-05-17 16:26:27 +00:00
printcap
profile
protocols Update /etc/protocols with IANA list updated 2007-02-12 2007-05-20 03:55:22 +00:00
rc Remove pointless informational message. 2008-06-23 04:18:22 +00:00
rc.bsdextended
rc.firewall Allow the network addresses and interface names for the "client" and 2008-08-15 19:20:59 +00:00
rc.firewall6 o Correct an info about "Firewalls and Internet Security" book: name, 2008-01-12 19:02:09 +00:00
rc.initdiskless Add support to rc.initdiskless for /conf/T/M/remount_subdir. 2008-09-09 18:40:50 +00:00
rc.resume Change the module example to kldload since this is the resume side. 2008-07-21 22:55:40 +00:00
rc.sendmail
rc.shutdown Instead of killing the 'watchdog' subshell and leaving a sleep for 2009-01-25 10:31:45 +00:00
rc.subr Now that the last of the *.sh scripts are gone from the base, 2009-05-30 21:41:54 +00:00
rc.suspend With uart(4) default, change sio# to uart# so that 2008-07-19 20:12:33 +00:00
regdomain.xml Remove gsm hacks now that we can do this "right": 2009-01-28 19:25:51 +00:00
remote Add ucomX shortcuts just like its uart sibling. 2008-10-27 17:19:14 +00:00
rpc
services Use the udp protocol in favor of the nonexistant upd protocol in the 2007-09-21 01:26:00 +00:00
shells
snmpd.config
sysctl.conf
syslog.conf syslog.conf: pop up from logging only ppp messages at the end of file 2009-06-11 15:07:02 +00:00
termcap.small Sync termcap.small with main termcap; add xterm entry for libteken 2009-06-13 13:35:18 +00:00