1.\" 2.\" Copyright (c) 2003 David O'Brien 3.\" Copyright (c) 2000 Jeroen Ruigrok van der Werven 4.\" Copyright (c) 2000 Michael Smith 5.\" All rights reserved. 6.\" 7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 1. Redistributions of source code must retain the above copyright 11.\" notice, this list of conditions and the following disclaimer. 12.\" 2. The name of the author may not be used to endorse or promote products 13.\" derived from this software without specific prior written permission 14.\" 15.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 16.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25.\" 26.\" $FreeBSD$ 27.\" 28.Dd April 10, 2000 29.Dt MLX 4 30.Os 31.Sh NAME 32.Nm mlx 33.Nd Mylex DAC-family RAID driver 34.Sh SYNOPSIS 35.Cd device pci 36.Cd device mlx 37.Sh DESCRIPTION 38The 39.Nm 40driver provides support for Mylex DAC-family PCI to SCSI RAID controllers, 41including versions relabeled by Digital/Compaq. 42Supported controllers include: 43.Bl -bullet 44.It 45DAC960P 46.It 47DAC960PD / DEC KZPSC (Fast Wide) 48.It 49DAC960PDU 50.It 51DAC960PL 52.It 53DAC960PJ 54.It 55DAC960PG 56.It 57DAC960PU / DEC PZPAC (Ultra Wide) 58.It 59AcceleRAID 150 (DAC960PRL) 60.It 61AcceleRAID 250 (DAC960PTL1) 62.It 63eXtremeRAID 1100 (DAC1164P) 64.It 65RAIDarray 230 controllers, aka the Ultra-SCSI DEC KZPAC-AA (1-ch, 4MB cache), KZPAC-CA (3-ch, 4MB), KZPAC-CB (3-ch, 8MB cache) 66.El 67.Pp 68All major firmware revisions (2.x, 3.x, 4.x and 5.x) are supported, however 69it is always advisable to upgrade to the most recent firmware 70available for the controller. 71.Pp 72Compatible Mylex controllers not listed should work, but have not been 73verified. 74.Sh DIAGNOSTICS 75.Ss Controller initialisation phase 76.Bl -diag 77.It mlx%d: controller initialisation in progress... 78.It mlx%d: initialisation complete 79.Pp 80The controller firmware is performing/has completed initialisation. 81.It mlx%d: physical drive %d:%d not responding 82.Pp 83The drive at channel:target is not responding; it may have failed or 84been removed. 85.It mlx%d: spinning up drives... 86.Pp 87Drive startup is in progress; this may take several minutes. 88.It mlx%d: configuration checksum error 89.Pp 90The array configuration has become corrupted. 91.It mlx%d: mirror race recovery in progress 92.It mlx%d: mirror race on a critical system drive 93.It mlx%d: mirror race recovery failed 94.Pp 95These error codes are undocumented. 96.It mlx%d: physical drive %d:%d COD mismatch 97.Pp 98Configuration data on the drive at channel:target does not match the 99rest of the array. 100.It mlx%d: system drive installation aborted 101.Pp 102Errors occurred preventing one or more system drives from being configured. 103.It mlx%d: new controller configuration found 104.Pp 105The controller has detected a configuration on disk which supersedes the 106configuration in its nonvolatile memory. 107It will reset and come up with the new configuration. 108.It mlx%d: FATAL MEMORY PARITY ERROR 109.Pp 110Firmware detected a fatal memory error; the driver will not attempt to 111attach to this controller. 112.It mlx%d: unknown firmware initialisation error %x:%x:%x 113.Pp 114An unknown error occurred during initialisation; it will be ignored. 115.El 116.Ss Driver initialisation/shutdown phase: 117.Bl -diag 118.It mlx%d: can't allocate scatter/gather DMA tag 119.It mlx%d: can't allocate buffer DMA tag 120.It mlx%d: can't allocate s/g table 121.It mlx%d: can't make initial s/g list mapping 122.It mlx%d: can't make permanent s/g list mapping 123.It mlx%d: can't allocate interrupt 124.It mlx%d: can't set up interrupt 125.Pp 126A resource allocation error occurred while initialising the driver; 127initialisation has failed and the driver will not attach to this 128controller. 129.It mlx%d: error fetching drive status 130.Pp 131The current status of all system drives could not be fetched; attachment 132of system drives will be aborted. 133.It mlx%d: device_add_child failed 134.It mlx%d: bus_generic_attach returned %d 135.Pp 136Creation of the system drive instances failed; attachment of one or more 137system drives may have been aborted. 138.It mlxd%d: detaching... 139.Pp 140The indicated system drive is being detached. 141.It mlxd%d: still open, can't detach 142.Pp 143The indicated system drive is still open or mounted; 144the controller cannot be detached. 145.It mlx%d: flushing cache... 146.Pp 147The controller cache is being flushed prior to detach or shutdown. 148.El 149.Ss Operational diagnostics: 150.Bl -diag 151.It mlx%d: ENQUIRY failed - %s 152.It mlx%d: ENQUIRY2 failed 153.It mlx%d: ENQUIRY_OLD failed 154.It mlx%d: FLUSH failed - %s 155.It mlx%d: CHECK ASYNC failed - %s 156.It mlx%d: REBUILD ASYNC failed - %s 157.It mlx%d: command failed - %s 158.Pp 159The controller rejected a command for the reason given. 160.It mlx%d: I/O beyond end of unit (%u,%d > %u) 161.It mlx%d: I/O error - %s 162.Pp 163An I/O error was reported by the controller. 164.It mlx%d: periodic enquiry failed - %s 165.Pp 166An attempt to poll the controller for status failed for the reason given. 167.It mlx%d: mlx_periodic_enquiry: unknown command %x 168.Pp 169The periodic status poll has issued a command which has become corrupted. 170.It mlxd%d: drive offline 171.It mlxd%d: drive online 172.It mlxd%d: drive critical 173.Pp 174The system disk indicated has changed state. 175.It mlx%d: physical drive %d:%d reset 176.It mlx%d: physical drive %d:%d killed %s 177.It "mlx%d: physical drive %d:%d error log: sense = %d asc = %x asq = %x" 178.It "mlx%d: info %4D csi %4D" 179.Pp 180The drive at channel:target has been reset, killed for the given reason, 181or experienced a SCSI error. 182.It mlx%d: unknown log message type %x 183.It mlx%d: error reading message log - %s 184.Pp 185An error occurred while trying to read the controller's message log. 186.It mlxd%d: consistency check started 187.It mlx%d: consistency check completed 188.Pp 189A user-initiated consistency check has started/completed. 190.It mlx%d: drive rebuild started for %d:%d 191.It mlx%d: drive rebuild completed 192.Pp 193A user-initiated physical drive rebuild has started/completed. 194.It mlx%d: background check/rebuild operation started 195.It mlx%d: background check/rebuild operation completed 196.Pp 197An automatic system drive consistency check 198or physical drive rebuild has started/completed. 199.It mlx%d: channel %d pausing for %d seconds 200.It mlx%d: channel %d resuming 201.It mlx%d: pause command failed - %s 202.It mlx%d: pause failed for channel %d 203.It mlx%d: resume command failed - %s 204.It mlx%d: resume failed for channel %d 205.Pp 206Controller/channel pause operation notification. 207(Channel pause is not currently supported on any controller.) 208.It mlx%d: controller wedged (not taking commands) 209.Pp 210The controller is not responding to attempts to submit new commands. 211.It mlx%d: duplicate done event for slot %d 212.It mlx%d: done event for nonbusy slot %d 213.Pp 214Corruption has occurred in either the controller's onboard list of commands 215or in the driver. 216.El 217.Sh SEE ALSO 218.Xr mlxcontrol 8 219.Sh BUGS 220The driver does not yet support EISA adapters. 221The DEC KZPSC has insufficient flash ROM to hold any reasonably recent firmware. 222This has caused problems for this driver. 223.Pp 224The driver does not yet support the version 6.x firmware as found in the 225AcceleRAID 352 and eXtremeRAID 2000 and 3000 products. 226.Sh AUTHORS 227.An -nosplit 228The 229.Nm 230driver was written by 231.An Michael Smith 232.Aq msmith@FreeBSD.org . 233.Pp 234This manual page was written by 235.An Jeroen Ruigrok van der Werven 236.Aq asmodai@FreeBSD.org 237and 238.An Michael Smith 239.Aq msmith@FreeBSD.org . 240