ce1d4d7be1
by thorpej's addition of max_target handling to the ahc driver. XXX * XXX Are other bugs still present as of 1.2C?
189 lines
5.2 KiB
Groff
189 lines
5.2 KiB
Groff
.\" $NetBSD: ahc.4,v 1.5 1997/02/23 08:48:16 jonathan Exp $
|
|
.\"
|
|
.\" Copyright (c) 1995, 1996
|
|
.\" Justin T. Gibbs. All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. The name of the author may not be used to endorse or promote products
|
|
.\" derived from this software withough specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
.\"
|
|
.\"
|
|
.Dd April 20, 1996
|
|
.\".Dt AHC 4 i386
|
|
.\".Os FreeBSD
|
|
.Dt AHC 4
|
|
.Os NetBSD
|
|
.Sh NAME
|
|
.Nm ahc
|
|
.Nd Adaptec VL/EISA/PCI SCSI host adapter driver
|
|
.Sh SYNOPSIS
|
|
.ie 0 \{
|
|
For one or more VL/EISA cards:
|
|
.Cd controller eisa0
|
|
.Cd controller ahc0
|
|
\}
|
|
\{For VL cards:
|
|
.Cd ahc0 at isa? port ? irq ?
|
|
.Pp
|
|
For EISA cards:
|
|
.Cd ahc* at eisa? slot ?\}
|
|
.Pp
|
|
.ie 0 \{
|
|
For one or more PCI cards:
|
|
.Cd controller pci0
|
|
.Cd controller ahc0
|
|
\}
|
|
\{For PCI cards:
|
|
.Cd ahc* at pci? dev ? function ?\}
|
|
.Pp
|
|
To enable tagged queueing:
|
|
.Cd options AHC_TAGENABLE
|
|
.Pp
|
|
To enable SCB paging:
|
|
.Cd options AHC_SCBPAGING_ENABLE
|
|
.Pp
|
|
.ie 0 \{
|
|
For one or more SCSI busses:
|
|
.Cd controller scbus0 at ahc0
|
|
\}
|
|
\{For SCSI busses:
|
|
.Cd scsibus* at ahc?\}
|
|
.Sh DESCRIPTION
|
|
This driver provides access to the
|
|
.Tn SCSI
|
|
bus connected to an Adaptec
|
|
274x, 284x, 2940, 3940, or controllers based on the
|
|
.Tn AIC7770,
|
|
.Tn AIC7850,
|
|
.Tn AIC7860,
|
|
.Tn AIC7870,
|
|
or
|
|
.Tn AIC7880
|
|
host adapter chips.
|
|
Features include support for twin and wide busses,
|
|
ultra
|
|
.Tn SCSI,
|
|
two active commands at a time per non-tagged queueing target,
|
|
tagged queuing,
|
|
and SCB paging which allows up to 255 active commands on all adapters
|
|
except those using
|
|
.Tn AIC7770
|
|
chips prior to revision E.
|
|
Tagged queueing is enabled with the
|
|
.Dq Dv AHC_TAGENABLE
|
|
configuration option.
|
|
SCB paging is enabled with the
|
|
.Dq Dv AHC_SCBPAGING_ENABLE
|
|
configuration option.
|
|
.Pp
|
|
Per target configuration performed in the
|
|
.Tn SCSI-Select
|
|
menu, accesible at boot
|
|
in
|
|
.No non- Ns Tn EISA
|
|
models or through an
|
|
.Tn EISA
|
|
configuration utility for
|
|
.Tn EISA
|
|
models,
|
|
is honored by this driver with the stipulation that the
|
|
.Tn BIOS
|
|
must be enabled for
|
|
.Tn EISA
|
|
adaptors. This includes synchronous/asynchronous transfers,
|
|
maximum synchronous negotiation rate,
|
|
disconnection,
|
|
and the host adapter's SCSI ID.
|
|
.Pp
|
|
Note that I/O addresses are determined automatically by the probe routines,
|
|
but care should be taken when using a 284x
|
|
.Pq Tn VESA No local bus controller
|
|
in an
|
|
.Tn EISA
|
|
system. Ensure that the jumpers setting the I/O area for the 284x match the
|
|
.Tn EISA
|
|
slot into which the card is inserted to prevent conflicts with other
|
|
.Tn EISA
|
|
cards.
|
|
.Sh BUGS
|
|
Some Quantum drives (at least the Empire 2100 and 1080s) will not run on an
|
|
.Tn AIC7870
|
|
Rev B in synchronous mode at 10MHz. Controllers with this problem have a
|
|
42 MHz clock crystal on them and run slightly above 10MHz, causing the
|
|
drive much confusion. Setting a maximum synchronous negotiation rate of 8MHz
|
|
in the
|
|
.Tn SCSI-Select
|
|
utility
|
|
will allow normal function.
|
|
.if 1 \{
|
|
.Pp
|
|
There are three known problems in NetBSD version of this driver as follows.
|
|
All of these problems relate to NetBSD MI SCSI system.
|
|
.Pp
|
|
It is dangerous to simultaneously access SCSI devices more than half
|
|
number of SCBs. It may cause fatal disk trouble. In this case,
|
|
diagnostics message
|
|
.Dq not queued, error ...
|
|
is displayed to console.
|
|
For example, AHA-274x and AHA-284x have only 4 SCBs, so that using 3 SCSI
|
|
devices is dangerous, using 2 devices is OK.
|
|
.Pp
|
|
When you suddenly access SCSI devices on free physical memory shortage
|
|
conditions, and if there have been very few load on SCSI devices until
|
|
then, it may cause fatal disk trouble. In this case, diagnostics
|
|
message
|
|
.Dq ahc0: Can't malloc SCB
|
|
and
|
|
.Dq not queued, error ...
|
|
is displayed to console.
|
|
.Pp
|
|
SCSI residual handling is not complete.
|
|
\}
|
|
.Sh SEE ALSO
|
|
.Xr aha 4 ,
|
|
.Xr ahb 4 ,
|
|
.Xr cd 4 ,
|
|
.if 0 \{
|
|
.Xr scsi 4 ,
|
|
\}
|
|
.Xr sd 4 ,
|
|
.Xr st 4
|
|
.Sh AUTHOR
|
|
The
|
|
.Nm
|
|
driver was written by Justin Gibbs. The
|
|
.Tn AIC7xxx
|
|
sequencer-code assembler was
|
|
written by John Aycock.
|
|
.if 1 \{NetBSD porting is done by Stefan Grefen, Charles M. Hannum,
|
|
Michael Graff, Jason R. Thorpe, Pete Bentley and Noriyuki Soda.
|
|
\}
|
|
.Sh HISTORY
|
|
The
|
|
.Nm
|
|
driver appeared in
|
|
.Tn FreeBSD
|
|
2.1
|
|
.if 1 \{and
|
|
.Tn NetBSD
|
|
1.1.
|
|
\}
|