1.\" $NetBSD: ahc.4,v 1.3 1996/10/22 21:40:48 explorer Exp $ 2.\" 3.\" Copyright (c) 1995, 1996 4.\" Justin T. Gibbs. 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. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. The name of the author may not be used to endorse or promote products 15.\" derived from this software withough specific prior written permission. 16.\" 17.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 18.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 19.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 20.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27.\" 28.\" 29.Dd April 20, 1996 30.\".Dt AHC 4 i386 31.\".Os FreeBSD 32.Dt AHC 4 33.Os NetBSD 34.Sh NAME 35.Nm ahc 36.Nd Adaptec VL/EISA/PCI SCSI host adapter driver 37.Sh SYNOPSIS 38.ie 0 \{ 39For one or more VL/EISA cards: 40.Cd controller eisa0 41.Cd controller ahc0 42\} 43\{For VL cards: 44.Cd ahc0 at isa? port ? irq ? 45.Pp 46For EISA cards: 47.Cd ahc* at eisa? slot ?\} 48.Pp 49.ie 0 \{ 50For one or more PCI cards: 51.Cd controller pci0 52.Cd controller ahc0 53\} 54\{For PCI cards: 55.Cd ahc* at pci? dev ? function ?\} 56.Pp 57To enable tagged queueing: 58.Cd options AHC_TAGENABLE 59.Pp 60To enable SCB paging: 61.Cd options AHC_SCBPAGING_ENABLE 62.Pp 63.ie 0 \{ 64For one or more SCSI busses: 65.Cd controller scbus0 at ahc0 66\} 67\{For SCSI busses: 68.Cd scsibus* at ahc?\} 69.Sh DESCRIPTION 70This driver provides access to the 71.Tn SCSI 72bus connected to an Adaptec 73274x, 284x, 2940, 3940, or controllers based on the 74.Tn AIC7770, 75.Tn AIC7850, 76.Tn AIC7860, 77.Tn AIC7870, 78or 79.Tn AIC7880 80host adapter chips. 81Features include support for twin and wide busses, 82ultra 83.Tn SCSI, 84two active commands at a time per non-tagged queueing target, 85tagged queuing, 86and SCB paging which allows up to 255 active commands on all adapters 87except those using 88.Tn AIC7770 89chips prior to revision E. 90Tagged queueing is enabled with the 91.Dq Dv AHC_TAGENABLE 92configuration option. 93SCB paging is enabled with the 94.Dq Dv AHC_SCBPAGING_ENABLE 95configuration option. 96.Pp 97Per target configuration performed in the 98.Tn SCSI-Select 99menu, accesible at boot 100in 101.No non- Ns Tn EISA 102models or through an 103.Tn EISA 104configuration utility for 105.Tn EISA 106models, 107is honored by this driver with the stipulation that the 108.Tn BIOS 109must be enabled for 110.Tn EISA 111adaptors. This includes synchronous/asynchronous transfers, 112maximum synchronous negotiation rate, 113disconnection, 114and the host adapter's SCSI ID. 115.Pp 116Note that I/O addresses are determined automatically by the probe routines, 117but care should be taken when using a 284x 118.Pq Tn VESA No local bus controller 119in an 120.Tn EISA 121system. Ensure that the jumpers setting the I/O area for the 284x match the 122.Tn EISA 123slot into which the card is inserted to prevent conflicts with other 124.Tn EISA 125cards. 126.Sh BUGS 127Some Quantum drives (at least the Empire 2100 and 1080s) will not run on an 128.Tn AIC7870 129Rev B in synchronous mode at 10MHz. Controllers with this problem have a 13042 MHz clock crystal on them and run slightly above 10MHz, causing the 131drive much confusion. Setting a maximum synchronous negotiation rate of 8MHz 132in the 133.Tn SCSI-Select 134utility 135will allow normal function. 136.if 1 \{ 137.Pp 138There are four problems known in NetBSD version of this driver as follows. 139All of these problems relate to NetBSD MI SCSI system. 140.Pp 141Cannot handle SCSI ID greater than 7 with WIDE SCSI adapter. 142.Pp 143It is dangerous to simultaneously access SCSI devices more than half 144number of SCBs. It may cause fatal disk trouble. In this case, 145diagnostics message 146.Dq not queued, error ... 147is displayed to console. 148For example, AHA-274x and AHA-284x have only 4 SCBs, so that using 3 SCSI 149devices is dangerous, using 2 devices is OK. 150.Pp 151When you suddenly access SCSI devices on free physical memory shortage 152conditions, and if there have been very few load on SCSI devices until 153then, it may cause fatal disk trouble. In this case, diagnostics 154message 155.Dq ahc0: Can't malloc SCB 156and 157.Dq not queued, error ... 158is displayed to console. 159.Pp 160SCSI residual handling is not complete. 161\} 162.Sh SEE ALSO 163.Xr aha 4 , 164.Xr ahb 4 165.Xr cd 4 , 166.if 0 \{ 167.Xr scsi 4 , 168\} 169.Xr sd 4 , 170.Xr st 4 171.Sh AUTHOR 172The 173.Nm 174driver was written by Justin Gibbs. The 175.Tn AIC7xxx 176sequencer-code assembler was 177written by John Aycock. 178.if 1 \{NetBSD porting is done by Stefan Grefen, Charles M. Hannum, 179Michael Graff, Jason R. Thorpe, Pete Bentley and Noriyuki Soda. 180\} 181.Sh HISTORY 182The 183.Nm 184driver appeared in 185.Tn FreeBSD 1862.1 187.if 1 \{and 188.Tn NetBSD 1891.1. 190\} 191 192