1.\" Copyright (c) 2000 Scott Long 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $FreeBSD$ 26.Dd February 22, 2001 27.Dt AAC 4 28.Os 29.Sh NAME 30.Nm aac 31.Nd Adaptec AdvancedRAID Controller driver 32.Sh SYNOPSIS 33.Cd options AAC_DEBUG=N 34.Cd device pci 35.Cd device aac 36.Cd device aacp 37.Sh DESCRIPTION 38The 39.Nm 40driver provides support for the Adaptec AAC family of SCSI Ultra2, Ultra160, 41and Ultra320 RAID controllers. 42Supported controllers include: 43.Bl -bullet 44.It 45AAC-364 46.It 47Adaptec SCSI RAID 2120S 48.It 49Adaptec SCSI RAID 2200S 50.It 51Adaptec SCSI RAID 2410SA 52.It 53Adaptec SCSI RAID 5400S 54.It 55HP NetRAID 4M 56.It 57Dell PERC 2/Si 58.It 59Dell PERC 2/QC 60.It 61Dell PERC 3/Si 62.It 63Dell PERC 3/Di 64.Pp 65.El 66Access to RAID containers is available via the 67.Pa /dev/aacd? 68device nodes. 69Individual drives cannot be accessed 70unless they are part of a container or volume set, 71and non-fixed disks cannot be accessed. 72Containers can be configured by using 73either the on-board BIOS utility of the card, 74or a command-line interface management application. 75.Pp 76The 77.Pa /dev/aac? 78device nodes provide access to the management interface of the controller. 79One node exists per installed card. 80The aliases 81.Pa /dev/afa? 82and 83.Pa /dev/hpn? 84exist for the Dell and HP flavors, respectively, and are required for 85the CLI management utility available from these vendors to work. 86If the kernel is compiled with the 87.Dv COMPAT_LINUX 88option, or the 89.Pa aac_linux.ko 90and 91.Pa linux.ko 92modules are loaded, the 93Linux-compatible 94.Xr ioctl 2 95interface for the management device will be enabled and will allow 96Linux-based management applications to control the card. 97.Pp 98The 99.Nm aacp 100device enables the SCSI pass-thru interface and allows devices connected 101to the card such as cdroms to be available via the CAM 102.Xr scsi 4 103subsystem. 104Note that not all cards allow this interface to be enabled. 105.Ss Tuning 106The read-only sysctl 107.Va hw.aac.iosize_max 108defaults to 65536 and may be set at boot time to another value via 109.Xr loader 8 . 110This value determines the maximum data transfer size allowed 111to/from an array. 112Setting it higher will result in better performance, 113especially for large sequential access patterns. 114.Em Beware : 115internal limitations 116of the card limit this value to 64K for arrays with many members. 117While it may be safe to raise this value, this is done 118.Em at the operator's own risk . 119Note also that 120performance peaks at a value of 96K, 121and drops off dramatically at 128K, 122due to other limitations of the card. 123.Sh FILES 124.Bl -tag -width /boot/kernel/aac.ko -compact 125.It Pa /dev/aac? 126aac management interface 127.It Pa /dev/aacd? 128disk/container interface 129.It Pa /boot/kernel/aac.ko 130aac loadable module 131.El 132.Sh DIAGNOSTICS 133Compiling with 134.Dv AAC_DEBUG 135set to a number between 0 and 3 136will enable increasingly verbose debug messages. 137.Pp 138The adapter can send status and alert messages asynchronously 139to the driver. 140These messages are printed on the system console, 141and are also queued for retrieval by a management application. 142.Sh SEE ALSO 143.Xr kld 4 , 144.Xr linux 4 , 145.Xr scsi 4 , 146.Xr kldload 8 , 147.Xr loader 8 , 148.Xr sysctl 8 149.Sh HISTORY 150The 151.Nm 152driver first appeared in 153.Fx 4.3 . 154.Sh AUTHORS 155.An Mike Smith 156.Aq msmith@FreeBSD.org 157.An Scott Long 158.Aq scottl@FreeBSD.org 159.Sh BUGS 160This driver is not compatible with Dell controllers that have version 1.x 161firmware. 162The firmware version is the same as the kernel version printed in the BIOS 163POST and driver attach messages. 164.Pp 165The controller is not actually paused on suspend/resume. 166.Pp 167