p For EISA cards: .Cd ahc* at eisa? slot ?\}
p For one or more PCI cards: .Cd controller pci0 .Cd controller ahc0 \} \{For PCI cards: .Cd ahc* at pci? dev ? function ?\}
p To enable tagged queueing: .Cd options AHC_TAGENABLE
p To enable SCB paging: .Cd options AHC_SCBPAGING_ENABLE
p 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.
p 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.
p Note that I/O addresses are determined automatically by the probe routines, but care should be taken when using a 284x
q 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.
p There are four problems known in NetBSD version of this driver as follows. All of these problems relate to NetBSD MI SCSI system.
p Cannot handle SCSI ID greater than 7 with WIDE SCSI adapter.
p 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.
p 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.
p SCSI residual handling is not complete. \} .Sh SEE ALSO .Xr aha 4 , .Xr ahb 4 .Xr cd 4 , .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. Michael Graff, Jason R. Thorpe, Pete Bentley and Noriyuki Soda. \} .Sh HISTORY The .Nm driver appeared in .Tn FreeBSD 2.1 .Tn NetBSD 1.1. \}