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