Initial import from FreeBSD RELENG_4:
[dragonfly.git] / share / man / man4 / ahd.4
1 .\"
2 .\" Copyright (c) 1995, 1996, 1997, 1998, 2000
3 .\"     Justin T. Gibbs.  All rights reserved.
4 .\" Copyright (c) 2002
5 .\"     Scott Long.  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. Redistributions in binary form must reproduce the above copyright
13 .\"    notice, this list of conditions and the following disclaimer in the
14 .\"    documentation and/or other materials provided with the distribution.
15 .\" 3. The name of the author may not be used to endorse or promote products
16 .\"    derived from this software without specific prior written permission.
17 .\"
18 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 .\"
29 .\" $FreeBSD: src/share/man/man4/ahd.4,v 1.2.2.1 2002/09/01 22:35:34 scottl Exp $
30 .\"
31 .Dd September 1, 2002
32 .Dt AHD 4
33 .Os
34 .Sh NAME
35 .Nm ahd
36 .Nd Adaptec PCI/PCI-X Ultra320 SCSI host adapter driver
37 .Sh SYNOPSIS
38 For one or more PCI/PCI-X cards:
39 .Cd device pci
40 .Cd device ahd
41 .Pp
42 To compile in debugging code.
43 .Cd options AHD_DEBUG
44 .Cd options AHD_DEBUG_OPTS=<bitmask of options>
45 .Cd options AHD_REG_PRETTY_PRINT
46 .Pp
47 To configure one or more controllers to assume the target role:
48 .Cd options AHD_TMODE_ENABLE=<bitmask of units>
49 .Pp
50 For one or more SCSI busses:
51 .Cd device scbus
52 .Sh DESCRIPTION
53 This driver provides access to the
54 .Tn SCSI
55 bus(es) connected to Adaptec
56 .Tn AIC7901
57 and
58 .Tn AIC7902
59 host adapter chips.
60 These chips are found on many motherboards as well as the
61 .Tn 29320
62 and
63 .Tn 39320
64 Adaptec SCSI controller cards.
65 .Pp
66 Driver features include support for narrow and wide busses,
67 fast, ultra, ultra2, ultra160, and ultra320 synchronous transfers,
68 packetized transfers, tagged queueing, 512 SCB's, and target mode.
69 .Pp
70 The
71 .Dq Dv AHD_DEBUG_OPTS
72 option is used to control which diagnostic messages are printed to the
73 console when
74 .Dq Dv AHD_DEBUG
75 is enabled.  Logically 'or' the following bits together:
76 .Pp
77 .Bd -ragged -offset indent
78 .Bl -column "Value " Function
79 .Em "Value   Function"
80 0x0001  Show miscellanious information
81 0x0002  Show sense data
82 0x0004  Show Serial EEPROM contents
83 0x0008  Show bus termination settings
84 0x0010  Show host memory usage
85 0x0020  Show SCSI protocol messages
86 0x0040  Show mode pointer of the chip register window
87 0x0080  Show selection timeouts
88 0x0100  Show FIFO usage messages
89 0x0200  Show Queue Full status
90 0x0400  Show SCB queue status
91 0x0800  Show inbound packet information
92 0x1000  Show S/G list information
93 0x2000  Enable extra diagnostic code in the firmware
94 .El
95 .Ed
96 .Pp
97 The
98 .Dq Dv AHD_REG_PRETTY_PRINT
99 option compiles in support for human-readable bit definitions for each register
100 that is printed by the debugging code.  However, it also bloats the compiled
101 size of the driver by approximately 215KB.
102 .Pp
103 Individual controllers may be configured to operate in the target role
104 through the
105 .Dq Dv AHD_TMODE_ENABLE
106 configuration option.  The value assigned to this option should be a bitmap
107 of all units where target mode is desired.
108 For example, a value of 0x25, would enable target mode on units 0, 2, and 5.
109 Note that target mode is only supoprted for ultra160 speeds and below.
110 .Pp
111 Per target configuration performed in the
112 .Tn SCSI-Select
113 menu, accessible at boot,
114 is honored by this driver.
115 This includes synchronous/asynchronous transfers,
116 maximum synchronous negotiation rate,
117 wide transfers,
118 disconnection,
119 and the host adapter's SCSI ID.
120 .Pp
121 .Sh BUGS
122 The current generation of 79xx chips do not support target mode in Ultra320
123 mode.
124 Target mode in general has not been well tested in this driver.
125 .Pp
126 .Sh SEE ALSO
127 .Xr ahc 4 ,
128 .Xr cd 4 ,
129 .Xr da 4 ,
130 .Xr sa 4 ,
131 .Xr scsi 4
132 .Sh AUTHORS
133 The
134 .Nm
135 driver, the
136 .Tn AIC7xxx
137 sequencer-code assembler,
138 and the firmware running on the aic79xx chips was written by
139 .An Justin T. Gibbs .
140 This manual page is based on the
141 .Xr ahc 4
142 manual page.
143 .Sh HISTORY
144 The
145 .Nm
146 driver first appeared in
147 .Fx 4.7 .