$Id$ Adaptec AHA-1520/1522 SCSI driver for Linux (aha152x) Copyright 1993-1999 Jürgen Fischer TC1550 patches by Luuk van Dijk (ldz@xs4all.nl) In Revision 2 the driver was modified a lot (especially the bottom-half handler complete()). The driver is much cleaner now, has support for the new error handling code in 2.3, produced less cpu load (much less polling loops), has slightly higher throughput (at least on my ancient test box; a i486/33Mhz/20MB). CONFIGURATION ARGUMENTS: IOPORT base io address (0x340/0x140) IRQ interrupt level (9-12; default 11) SCSI_ID scsi id of controller (0-7; default 7) RECONNECT allow targets to disconnect from the bus (0/1; default 1 [on]) PARITY enable parity checking (0/1; default 1 [on]) SYNCHRONOUS enable synchronous transfers (0/1; default 1 [on]) DELAY: bus reset delay (default 100) EXT_TRANS: enable extended translation (0/1: default 0 [off]) (see NOTES) COMPILE TIME CONFIGURATION (go into AHA152X in drivers/scsi/Makefile): -DAUTOCONF use configuration the controller reports (AHA-152x only) -DSKIP_BIOSTEST Don't test for BIOS signature (AHA-1510 or disabled BIOS) -DSETUP0="{ IOPORT, IRQ, SCSI_ID, RECONNECT, PARITY, SYNCHRONOUS, DELAY, EXT_TRANS }" override for the first controller -DSETUP1="{ IOPORT, IRQ, SCSI_ID, RECONNECT, PARITY, SYNCHRONOUS, DELAY, EXT_TRANS }" override for the second controller -DAHA152X_DEBUG enable debugging output -DAHA152X_STAT enable some statistics LILO COMMAND LINE OPTIONS: aha152x=[,[,[,[,[,[, [,1GB: - take current geometry from the partition table (using scsicam_bios_param and accept only `valid' geometries, ie. either (C/32/64) or (C/63/255)). This can be extended translation even if it's not enabled in the driver. - if that fails, take extended translation if enabled by override, kernel or module parameter, otherwise take default translation and ask the user for verification. This might on not yet partitioned disks. REFERENCES USED: "AIC-6260 SCSI Chip Specification", Adaptec Corporation. "SCSI COMPUTER SYSTEM INTERFACE - 2 (SCSI-2)", X3T9.2/86-109 rev. 10h "Writing a SCSI device driver for Linux", Rik Faith (faith@cs.unc.edu) "Kernel Hacker's Guide", Michael K. Johnson (johnsonm@sunsite.unc.edu) "Adaptec 1520/1522 User's Guide", Adaptec Corporation. Michael K. Johnson (johnsonm@sunsite.unc.edu) Drew Eckhardt (drew@cs.colorado.edu) Eric Youngdale (eric@andante.org) special thanks to Eric Youngdale for the free(!) supplying the documentation on the chip.