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