1.\" $NetBSD: mly.4,v 1.10 2008/05/02 18:11:05 martin Exp $ 2.\" 3.\" Copyright (c) 2001 The NetBSD Foundation, Inc. 4.\" All rights reserved. 5.\" 6.\" This code is derived from software contributed to The NetBSD Foundation 7.\" by Andrew Doran. 8.\" 9.\" Redistribution and use in source and binary forms, with or without 10.\" modification, are permitted provided that the following conditions 11.\" are met: 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in the 16.\" documentation and/or other materials provided with the distribution. 17.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 21.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28.\" POSSIBILITY OF SUCH DAMAGE. 29.\" 30.\" Copyright (c) 2000 Michael Smith 31.\" Copyright (c) 2000 BSDi 32.\" All rights reserved. 33.\" 34.\" Redistribution and use in source and binary forms, with or without 35.\" modification, are permitted provided that the following conditions 36.\" are met: 37.\" 1. Redistributions of source code must retain the above copyright 38.\" notice, this list of conditions and the following disclaimer. 39.\" 2. The name of the author may not be used to endorse or promote products 40.\" derived from this software without specific prior written permission 41.\" 42.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 43.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 44.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 45.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 46.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 47.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 48.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 49.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 50.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 51.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 52.\" 53.\" from FreeBSD: mly.4,v 1.6 2001/07/14 19:40:47 schweikh Exp 54.\" 55.Dd July 29, 2001 56.Dt MLY 4 57.Os 58.Sh NAME 59.Nm mly 60.Nd Mylex AcceleRAID/eXtremeRAID family driver 61.Sh SYNOPSIS 62.Cd "mly* at pci? dev ? function ?" 63.Cd "scsibus* at mly?" 64.Sh DESCRIPTION 65The 66.Nm 67driver provides support for Mylex AcceleRAID and eXtremeRAID family 68of PCI to SCSI RAID controllers with version 6.00 and later 69firmware. 70Supported controllers include: 71.Pp 72.Bl -bullet -compact 73.It 74AcceleRAID 160 75.It 76AcceleRAID 170 77.It 78AcceleRAID 352 79.It 80eXtremeRAID 2000 81.It 82eXtremeRAID 3000 83.El 84.Pp 85Compatible Mylex controllers not listed should work, but have not been 86tested. 87.Pp 88Logical devices (disk arrays) attached to the controller are presented 89to the SCSI subsystem as though they were direct-access devices on a 90virtual SCSI bus. 91Physical devices which are not claimed by a logical 92device are presented on SCSI channels which match the physical channels 93on the controller. 94.Pp 95The results of the SCSI ``INQUIRY'' command from logical devices are 96overwritten with status information by the 97.Nm 98driver. The vendor field is the string ``MYLEX'', the product field 99indicates the type of logical device, and the revision field contains a four 100letter status code. The possible status codes and their meanings are as 101follows: 102.Pp 103.Bl -tag -width XXXX -compact 104.It OFLN 105offline 106.It UNCF 107unconfigured 108.It ONLN 109online - optimal 110.It CRIT 111critical - one or more disks in the array has failed 112.It NORD 113write only 114.It STBY 115standby 116.It MISS 117missing 118.El 119.Sh DIAGNOSTICS 120.Ss Controller initialization phase 121.Bl -diag 122.It "mly%d: controller initialization started" 123.It "mly%d: initialization complete" 124.Pp 125The controller firmware has started initialization. 126Normally this process is performed by the controller BIOS, 127but the driver may need 128to do this in cases where the BIOS has failed, or is not compatible 129(e.g. on non-x86 systems). 130.It "mly%d: drive spinup in progress" 131.Pp 132Drive startup is in progress; this may take several minutes. 133.It "mly%d: mirror race recovery failed, one or more drives offline" 134.It "mly%d: mirror race recovery in progress" 135.It "mly%d: mirror race recovery on a critical drive" 136.Pp 137These error codes are undocumented. 138.It "mly%d: FATAL MEMORY PARITY ERROR" 139.Pp 140Firmware detected a fatal memory error; the driver will not attempt to 141attach to this controller. 142.It "mly%d: unknown initialization code %x" 143.Pp 144An unknown error occurred during initialization; it will be ignored. 145.El 146.Ss Operational diagnostics 147.Bl -diag 148.It "mly%d: physical device %d:%d online" 149.It "mly%d: physical device %d:%d standby" 150.It "mly%d: physical device %d:%d automatic rebuild started" 151.It "mly%d: physical device %d:%d manual rebuild started" 152.It "mly%d: physical device %d:%d rebuild completed" 153.It "mly%d: physical device %d:%d rebuild cancelled" 154.It "mly%d: physical device %d:%d rebuild failed for unknown reasons" 155.It "mly%d: physical device %d:%d rebuild failed due to new physical device" 156.It "mly%d: physical device %d:%d rebuild failed due to logical drive failure" 157.It "mly%d: physical device %d:%d found" 158.It "mly%d: physical device %d:%d gone" 159.It "mly%d: physical device %d:%d unconfigured" 160.It "mly%d: physical device %d:%d expand capacity started" 161.It "mly%d: physical device %d:%d expand capacity completed" 162.It "mly%d: physical device %d:%d expand capacity failed" 163.It "mly%d: physical device %d:%d parity error" 164.It "mly%d: physical device %d:%d soft error" 165.It "mly%d: physical device %d:%d miscellaneous error" 166.It "mly%d: physical device %d:%d reset" 167.It "mly%d: physical device %d:%d active spare found" 168.It "mly%d: physical device %d:%d warm spare found" 169.It "mly%d: physical device %d:%d initialization started" 170.It "mly%d: physical device %d:%d initialization completed" 171.It "mly%d: physical device %d:%d initialization failed" 172.It "mly%d: physical device %d:%d initialization cancelled" 173.It "mly%d: physical device %d:%d write recovery failed" 174.It "mly%d: physical device %d:%d scsi bus reset failed" 175.It "mly%d: physical device %d:%d double check condition" 176.It "mly%d: physical device %d:%d device cannot be accessed" 177.It "mly%d: physical device %d:%d gross error on scsi processor" 178.It "mly%d: physical device %d:%d bad tag from device" 179.It "mly%d: physical device %d:%d command timeout" 180.It "mly%d: physical device %d:%d system reset" 181.It "mly%d: physical device %d:%d busy status or parity error" 182.It "mly%d: physical device %d:%d host set device to failed state" 183.It "mly%d: physical device %d:%d selection timeout" 184.It "mly%d: physical device %d:%d scsi bus phase error" 185.It "mly%d: physical device %d:%d device returned unknown status" 186.It "mly%d: physical device %d:%d device not ready" 187.It "mly%d: physical device %d:%d device not found at startup" 188.It "mly%d: physical device %d:%d COD write operation failed" 189.It "mly%d: physical device %d:%d BDT write operation failed" 190.It "mly%d: physical device %d:%d missing at startup" 191.It "mly%d: physical device %d:%d start rebuild failed due to physical drive too small" 192.It "mly%d: physical device %d:%d sense data received" 193.It "mly%d: sense key %d asc %02x ascq %02x" 194.It "mly%d: info %4D csi %4D" 195.It "mly%d: physical device %d:%d offline" 196.It "mly%d: sense key %d asc %02x ascq %02x" 197.It "mly%d: info %4D csi %4D" 198.Pp 199The reported event refers to the physical device at the given channel:target 200address. 201.It "mly%d: logical device %d:%d consistency check started" 202.It "mly%d: logical device %d:%d consistency check completed" 203.It "mly%d: logical device %d:%d consistency check cancelled" 204.It "mly%d: logical device %d:%d consistency check completed with errors" 205.It "mly%d: logical device %d:%d consistency check failed due to logical drive failure" 206.It "mly%d: logical device %d:%d consistency check failed due to physical device failure" 207.It "mly%d: logical device %d:%d automatic rebuild started" 208.It "mly%d: logical device %d:%d manual rebuild started" 209.It "mly%d: logical device %d:%d rebuild completed" 210.It "mly%d: logical device %d:%d rebuild cancelled" 211.It "mly%d: logical device %d:%d rebuild failed for unknown reasons" 212.It "mly%d: logical device %d:%d rebuild failed due to new physical device" 213.It "mly%d: logical device %d:%d rebuild failed due to logical drive failure" 214.It "mly%d: logical device %d:%d offline" 215.It "mly%d: logical device %d:%d critical" 216.It "mly%d: logical device %d:%d online" 217.It "mly%d: logical device %d:%d initialization started" 218.It "mly%d: logical device %d:%d initialization completed" 219.It "mly%d: logical device %d:%d initialization cancelled" 220.It "mly%d: logical device %d:%d initialization failed" 221.It "mly%d: logical device %d:%d found" 222.It "mly%d: logical device %d:%d gone" 223.It "mly%d: logical device %d:%d expand capacity started" 224.It "mly%d: logical device %d:%d expand capacity completed" 225.It "mly%d: logical device %d:%d expand capacity failed" 226.It "mly%d: logical device %d:%d bad block found" 227.It "mly%d: logical device %d:%d size changed" 228.It "mly%d: logical device %d:%d type changed" 229.It "mly%d: logical device %d:%d bad data block found" 230.It "mly%d: logical device %d:%d read of data block in bdt" 231.It "mly%d: logical device %d:%d write back data for disk block lost" 232.Pp 233The reported event refers to the logical device at the given channel:target 234address. 235.\" The event report will include the name of the SCSI device which has 236.\" attached to the device if possible. 237.It "mly%d: enclosure %d fan %d failed" 238.It "mly%d: enclosure %d fan %d ok" 239.It "mly%d: enclosure %d fan %d not present" 240.It "mly%d: enclosure %d power supply %d failed" 241.It "mly%d: enclosure %d power supply %d ok" 242.It "mly%d: enclosure %d power supply %d not present" 243.It "mly%d: enclosure %d temperature sensor %d failed" 244.It "mly%d: enclosure %d temperature sensor %d critical" 245.It "mly%d: enclosure %d temperature sensor %d ok" 246.It "mly%d: enclosure %d temperature sensor %d not present" 247.It "mly%d: enclosure %d unit %d access critical" 248.It "mly%d: enclosure %d unit %d access ok" 249.It "mly%d: enclosure %d unit %d access offline" 250.Pp 251These events refer to external enclosures by number. 252The driver does not attempt to name the enclosures. 253.It "mly%d: controller cache write back error" 254.It "mly%d: controller battery backup unit found" 255.It "mly%d: controller battery backup unit charge level low" 256.It "mly%d: controller battery backup unit charge level ok" 257.It "mly%d: controller installation aborted" 258.It "mly%d: controller mirror race recovery in progress" 259.It "mly%d: controller mirror race on critical drive" 260.It "mly%d: controller memory soft ecc error" 261.It "mly%d: controller memory hard ecc error" 262.It "mly%d: controller battery backup unit failed" 263.Pp 264These events report controller status changes. 265.El 266.Sh SEE ALSO 267.Xr cd 4 , 268.Xr ch 4 , 269.Xr intro 4 , 270.Xr mlx 4 , 271.Xr scsi 4 , 272.Xr sd 4 , 273.Xr st 4 , 274.Xr scsictl 8 275.Sh HISTORY 276The 277.Nm 278driver first appeared in 279.Nx 1.6 , 280and was based on the 281.Fx 282driver of the same name. 283.Sh BUGS 284The 285.Nm 286driver currently assumes that all busses support at most 16 targets and 1 287logical unit per target. 288.Pp 289Enclosures are not named or otherwise identified in event messages. 290.Pp 291The transfer speed for devices is always reported to the kernel as 20MHz. 292