xref: /freebsd/share/man/man4/ahd.4 (revision 40a8ac8f62b535d30349faf28cf47106b7041b83)
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$
30.\"
31.Dd July 4, 2004
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
38To compile this driver into the kernel,
39place the following lines in your
40kernel configuration file:
41.Bd -ragged -offset indent
42.Cd "device pci"
43.Cd "device scbus"
44.Cd "device ahd"
45.Pp
46To compile in debugging code:
47.Cd options AHD_DEBUG
48.Cd options AHD_DEBUG_OPTS=<bitmask of options>
49.Cd options AHD_REG_PRETTY_PRINT
50.Pp
51To configure one or more controllers to assume the target role:
52.Cd options AHD_TMODE_ENABLE=<bitmask of units>
53.Ed
54.Pp
55Alternatively, to load the driver as a
56module at boot time, place the following line in
57.Xr loader.conf 5 :
58.Bd -literal -offset indent
59ahd_load="YES"
60.Ed
61.Sh DESCRIPTION
62This driver provides access to the
63.Tn SCSI
64bus(es) connected to Adaptec
65.Tn AIC79xx
66host adapter chips.
67.Pp
68Driver features include support for narrow and wide busses,
69fast, ultra, ultra2, ultra160, and ultra320 synchronous transfers,
70packetized transfers, tagged queueing, 512 SCB's, and target mode.
71.Pp
72The
73.Dv AHD_DEBUG_OPTS
74option is used to control which diagnostic messages are printed to the
75console when
76.Dv AHD_DEBUG
77is enabled.
78Logically OR the following bits together:
79.Bl -column -offset indent Value Function
80.Em "Value	Function"
810x0001	Show miscellaneous information
820x0002	Show sense data
830x0004	Show Serial EEPROM contents
840x0008	Show bus termination settings
850x0010	Show host memory usage
860x0020	Show SCSI protocol messages
870x0040	Show mode pointer of the chip register window
880x0080	Show selection timeouts
890x0100	Show FIFO usage messages
900x0200	Show Queue Full status
910x0400	Show SCB queue status
920x0800	Show inbound packet information
930x1000	Show S/G list information
940x2000	Enable extra diagnostic code in the firmware
95.El
96.Pp
97The
98.Dv AHD_REG_PRETTY_PRINT
99option compiles in support for human-readable bit definitions for each register
100that is printed by the debugging code.
101However, it also bloats the compiled
102size of the driver by approximately 215KB.
103.Pp
104Individual controllers may be configured to operate in the target role
105through the
106.Dv AHD_TMODE_ENABLE
107configuration option.
108The value assigned to this option should be a bitmap
109of all units where target mode is desired.
110For example, a value of 0x25 would enable target mode on units 0, 2, and 5.
111Note that target mode is only supported for ultra160 speeds and below.
112.Pp
113Per target configuration performed in the
114.Tn SCSI-Select
115menu, accessible at boot,
116is honored by this driver.
117This includes synchronous/asynchronous transfers,
118maximum synchronous negotiation rate,
119wide transfers,
120disconnection,
121and the host adapter's
122.Tn SCSI
123ID.
124.Sh HARDWARE
125The
126.Nm
127driver supports the following:
128.Pp
129.Bl -bullet -compact
130.It
131Adaptec
132.Tn AIC7901
133host adapter chip
134.It
135Adaptec
136.Tn AIC7901A
137host adapter chip
138.It
139Adaptec
140.Tn AIC7902
141host adapter chip
142.It
143Adaptec
144.Tn 29320
145host adapter
146.It
147Adaptec
148.Tn 39320
149host adapter
150.It
151Many motherboards with on-board
152.Tn SCSI
153support
154.El
155.Sh SEE ALSO
156.Xr ahc 4 ,
157.Xr cd 4 ,
158.Xr da 4 ,
159.Xr sa 4 ,
160.Xr scsi 4
161.Sh HISTORY
162The
163.Nm
164driver first appeared in
165.Fx 4.7 .
166.Sh AUTHORS
167The
168.Nm
169driver, the
170.Tn AIC7xxx
171sequencer-code assembler,
172and the firmware running on the aic79xx chips was written by
173.An Justin T. Gibbs .
174This manual page is based on the
175.Xr ahc 4
176manual page.
177.Sh BUGS
178The current generation of 79xx chips do not support target mode in Ultra320
179mode.
180Target mode in general has not been well tested in this driver.
181