AHC(4)

NAME
ahc - Adaptec VL/EISA/PCI SCSI host adapter driver

SYNOPSIS
For VL/EISA cards:
controller ahc0 at isa? bio irq ? vector ahcintr

For PCI cards:
controller ahc0

For one or more SCSI busses:
controller scbus0

For one or more disk devices:
device sd0

For one or more tape devices:
device st0

For one or more cdroms:
device cd0

DESCRIPTION
This driver provides access to SCSI devices connected to an Adaptec 274x, 284x, 294x, or motherboard based aic7770/aic7870 hostadapter. Features include twin and wide bus support, 2 commands per target in non-tagged queuing mode, and experimental tagged queuing support enabled with:

option AHC_TAGENABLE

Per target configuration performed in the SCSI-Select menu, accesible at boot in non-EISA models or throught an EISA configuration utility for EISA models, is honored by this driver with the stipulation that the BIOS is enabled for EISA adaptors. This includes syncronous/asyncronous transfers, disconnection, and maximum syncronous negotiation rate settings.

Note that I/O addresses are determined automatically by the probe routines, but care should be taken when using a 284x (VLB controller) in an EISA system. Ensure that the jumpers setting the I/O area for the 284x match the EISA slot into which the card is inserted to prevent conflicts with other EISA cards.

BUGS
Some Quantum drives (at least the Empire 2100 and 1080s) will not run on an aic7870 in syncronous mode at 10MB/s. It is speculated that the Adaptec runs slightly above 10MB/s causing the drive much confusion. Setting a maximum syncronous negotiation rate of 8MB/s in the SCSI-Select utility will allow normal function.

The SCSI ID of aic7870 based controllers (AHA-294x) is hard coded to 7 by the driver. The user configured ID can be obtained by querying the SEEPROM or NVRAM where these settings are stored, but there is no driver support for this as of yet.

FILES
/sys/i386/scsi/aic7xxx.c
/sys/i386/scsi/aic7xxx.h
    Bus independent driver source
/sys/i386/eisa/aic7770.c
    EISA device probe/attach routines
/sys/pci/aic7870.c
    PCI device probe/attach routines
/sys/dev/aic7xxx/aic7xxx.seq
    aic7xxx sequencer program
/sys/i386/conf/GENERIC
    sample generic kernel config file including Adaptec support

SEE ALSO
aha(4) ahb(4) aic7xxx_asm(1) cd(4) scsi(4) sd(4) st(4)