xref: /freebsd/share/man/man4/twe.4 (revision a79b71281cd63ad7a6cc43a6d5673a2510b51630)
1.\"
2.\" Copyright (c) 2000 Michael Smith
3.\" Copyright (c) 2000 BSDi
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 TWE 4
29.Os
30.Sh NAME
31.Nm twe
32.Nd 3ware Escalade ATA RAID adapter driver
33.Sh SYNOPSIS
34.Cd device pci
35.Cd device twe
36.Sh DESCRIPTION
37The
38.Nm
39driver provides support for the Escalade 3W-5x00 series of ATA RAID
40controllers.  These devices support 2, 4 or 8 ATA disk drives and provide
41RAID0 (striping) and RAID1 (mirroring) functionality.
42.Sh DIAGNOSTICS
43Controller initialisation phase:
44.Bl -diag
45.It twe%d: microcontroller not ready
46.El
47.Pp
48The controller's onboard CPU is not reporting that it is ready; this may be
49due to either a board or system failure.  Initialisation has failed.
50.Bl -diag
51.It twe%d: no attention interrupt
52.It twe%d: can't drain AEN queue
53.It twe%d: reset not reported
54.It twe%d: controller errors detected
55.It twe%d: can't drain response queue
56.It twe%d: reset %d failed, trying again
57.El
58.Pp
59The controller is not responding correctly to the driver's attempts to reset
60and initialise it.  This process is retried several times.
61.Bl -diag
62.It twe%d: can't initialise controller, giving up
63.El
64.Pp
65Several attempts to reset and initialise the controller have failed;
66initialisation has failed and the driver will not attach to this controller.
67.Pp
68Driver initialisation/shutdown phase:
69.Bl -diag
70.It twe%d: register window not available
71.It twe%d: can't allocate register window
72.It twe%d: can't allocate parent DMA tag
73.It twe%d: can't allocate interrupt
74.It twe%d: can't set up interrupt
75.It twe%d: can't establish configuration hook
76.El
77.Pp
78A resource allocation error occurred while initialising the driver;
79initialisation has failed and the driver will not attach to this
80controller.
81.Bl -diag
82.It twe%d: can't detect attached units
83.El
84.Pp
85Fetching the list of attached units failed; initialisation has failed.
86.Bl -diag
87.It twe%d: error fetching capacity for unit %d
88.It twe%d: device_add_child failed
89.It twe%d: bus_generic_attach returned %d
90.El
91.Pp
92Creation of the disk devices failed; attachment of one or more units may have
93been aborted.
94.Bl -diag
95.It twe%d: command failed - 0x%x
96.It twe%d: command failed - controller wedged
97.El
98.Pp
99A command was reported as failed by the controller, or could not be delivered to
100the controller.
101.Bl -diag
102.It twe%d: host interrupt
103.El
104.Pp
105The controller has signalled a host interrupt.  This serves an unknown purpose
106and is ignored.
107.Bl -diag
108.It twe%d: command interrupt
109.El
110.Pp
111The controller has signalled a command interrupt.  This is not used, and will
112be disabled.
113.Bl -diag
114.It twe%d: error polling for signalled AENs
115.El
116.Pp
117The controller has reported that one or more status messages are ready for the
118driver, but attempting to fetch one of these has returned an error.
119.Bl -diag
120.It twe%d: AEN queue overflow, lost AEN <%s>
121.El
122.Pp
123A status message was retrieved from the controller, but there is no more room
124to queue it in the driver.  The message is lost.
125.Bl -diag
126.It twe%d: missing expected status bits %s
127.It twe%d: unexpected status bits %s
128.El
129.Pp
130A check of the controller's status bits indicates an unexpected condition.
131.Sh BUGS
132Much of the controller's status cannot currently be interpreted due to
133lack of information from 3ware.
134.Pp
135The controller cannot handle I/O transfers that are not aligned to a 512-byte
136boundary.  In order to support raw device access from user-space, the driver will
137perform alignment fixup on non-aligned data.  This process is inefficient, and
138thus in order to obtain best performance user-space applications accessing the
139device should do so with aligned buffers.
140.Sh AUTHORS
141The
142.Nm
143driver and manpage were written by
144.An Michael Smith
145.Aq msmith@FreeBSD.org .
146