AACRAID Driver for Linux (take two)

Introduction
-------------------------
The aacraid driver adds support for Adaptec (http://www.adaptec.com)
RAID controllers. This is a major rewrite from the original
Adaptec supplied driver. It has significantly cleaned up both the code
and the running binary size (the module is less than half the size of
the original).

Supported Cards/Chipsets
-------------------------
	PCI ID (pci.ids)	OEM	Product
	9005:0285:9005:0285	Adaptec	2200S (Vulcan)
	9005:0285:9005:0286	Adaptec	2120S (Crusader)
	9005:0285:9005:0287	Adaptec	2200S (Vulcan-2m)
	9005:0285:9005:0288	Adaptec	3230S (Harrier)
	9005:0285:9005:0289	Adaptec	3240S (Tornado)
	9005:0285:9005:028a	Adaptec	2020ZCR (Skyhawk)
	9005:0285:9005:028b	Adaptec	2025ZCR (Terminator)
	9005:0286:9005:028c	Adaptec	2230S (Lancer)
	9005:0286:9005:028c	Adaptec	2230SLP (Lancer)
	9005:0286:9005:028d	Adaptec	2130S (Lancer)
	9005:0285:9005:028e	Adaptec	2020SA (Skyhawk)
	9005:0285:9005:028f	Adaptec	2025SA (Terminator)
	9005:0285:9005:0290	Adaptec	2410SA (Jaguar)
	9005:0285:103c:3227	Adaptec	2610SA (Bearcat HP release)
	9005:0285:9005:0293	Adaptec	21610SA (Corsair-16)
	9005:0285:9005:0296	Adaptec	2240S (SabreExpress)
	9005:0285:9005:0292	Adaptec	2810SA (Corsair-8)
	9005:0285:9005:0297	Adaptec	4005 (AvonPark)
	9005:0285:9005:0298	Adaptec	4000 (BlackBird)
	9005:0285:9005:0299	Adaptec	4800SAS (Marauder-X)
	9005:0285:9005:029a	Adaptec	4805SAS (Marauder-E)
	9005:0286:9005:029b	Adaptec	2820SA (Intruder)
	9005:0286:9005:029c	Adaptec	2620SA (Intruder)
	9005:0286:9005:029d	Adaptec	2420SA (Intruder HP release)
	9005:0286:9005:02ac	Adaptec	1800 (Typhoon44)
	9005:0285:9005:02b5	Adaptec	5445 (Voodoo44)
	9005:0285:9005:02b6	Adaptec	5805 (Voodoo80)
	9005:0285:9005:02b7	Adaptec	5085 (Voodoo08)
	9005:0285:9005:02bb	Adaptec	3405 (Marauder40LP)
	9005:0285:9005:02bc	Adaptec	3805 (Marauder80LP)
	9005:0285:9005:02c7	Adaptec	3085 (Marauder08ELP)
	9005:0285:9005:02bd	Adaptec	31205 (Marauder120)
	9005:0285:9005:02be	Adaptec	31605 (Marauder160)
	9005:0285:9005:02c3	Adaptec	51205 (Voodoo120)
	9005:0285:9005:02c4	Adaptec	51605 (Voodoo160)
	1011:0046:9005:0364	Adaptec	5400S (Mustang)
	9005:0287:9005:0800	Adaptec	Themisto (Jupiter)
	9005:0200:9005:0200	Adaptec	Themisto (Jupiter)
	9005:0286:9005:0800	Adaptec	Callisto (Jupiter)
	1011:0046:9005:1364	Dell	PERC 2/QC (Quad Channel, Mustang)
	1028:0001:1028:0001	Dell	PERC 2/Si (Iguana)
	1028:0003:1028:0003	Dell	PERC 3/Si (SlimFast)
	1028:0002:1028:0002	Dell	PERC 3/Di (Opal)
	1028:0004:1028:0004	Dell	PERC 3/DiF (Iguana)
	1028:0002:1028:00d1	Dell	PERC 3/DiV (Viper)
	1028:0002:1028:00d9	Dell	PERC 3/DiL (Lexus)
	1028:000a:1028:0106	Dell	PERC 3/DiJ (Jaguar)
	1028:000a:1028:011b	Dell	PERC 3/DiD (Dagger)
	1028:000a:1028:0121	Dell	PERC 3/DiB (Boxster)
	9005:0285:1028:0287	Dell	PERC 320/DC (Vulcan)
	9005:0285:1028:0291	Dell	CERC 2 (DellCorsair)
	1011:0046:103c:10c2	HP	NetRAID-4M (Mustang)
	9005:0285:17aa:0286	Legend	S220 (Crusader)
	9005:0285:17aa:0287	Legend	S230 (Vulcan)
	9005:0285:9005:0290	IBM	ServeRAID 7t (Jaguar)
	9005:0285:1014:02F2	IBM	ServeRAID 8i (AvonPark)
	9005:0286:1014:9540	IBM	ServeRAID 8k/8k-l4 (AuroraLite)
	9005:0286:1014:9580	IBM	ServeRAID 8k/8k-l8 (Aurora)
	9005:0285:1014:034d	IBM	ServeRAID 8s (Marauder-E)
	9005:0286:9005:029e	ICP	ICP9024RO (Lancer)
	9005:0286:9005:029f	ICP	ICP9014RO (Lancer)
	9005:0286:9005:02a0	ICP	ICP9047MA (Lancer)
	9005:0286:9005:02a1	ICP	ICP9087MA (Lancer)
	9005:0285:9005:02a4	ICP	ICP9085LI (Marauder-X)
	9005:0285:9005:02a5	ICP	ICP5085BR (Marauder-E)
	9005:0286:9005:02a6	ICP	ICP9067MA (Intruder-6)
	9005:0285:9005:02b2	ICP	(Voodoo 8 internal 8 external)
	9005:0285:9005:02b8	ICP	ICP5445SL (Voodoo44)
	9005:0285:9005:02b9	ICP	ICP5085SL (Voodoo80)
	9005:0285:9005:02ba	ICP	ICP5805SL (Voodoo08)
	9005:0285:9005:02bf	ICP	ICP5045BL (Marauder40LP)
	9005:0285:9005:02c0	ICP	ICP5085BL (Marauder80LP)
	9005:0285:9005:02c8	ICP	ICP5805BL (Marauder08ELP)
	9005:0285:9005:02c1	ICP	ICP5125BR (Marauder120)
	9005:0285:9005:02c2	ICP	ICP5165BR (Marauder160)
	9005:0285:9005:02c5	ICP	ICP5125SL (Voodoo120)
	9005:0285:9005:02c6	ICP	ICP5165SL (Voodoo160)
	9005:0286:9005:02ab		(Typhoon40)
	9005:0286:9005:02ad		(Aurora ARK)
	9005:0286:9005:02ae		(Aurora Lite ARK)
	9005:0285:9005:02b0		(Sunrise Lake ARK)
	9005:0285:9005:02b1	Adaptec	(Voodoo 8 internal 8 external)

People
-------------------------
Alan Cox <alan@redhat.com>
Christoph Hellwig <hch@infradead.org>	(updates for new-style PCI probing and SCSI host registration,
					 small cleanups/fixes)
Matt Domsch <matt_domsch@dell.com>	(revision ioctl, adapter messages)
Deanna Bonds                            (non-DASD support, PAE fibs and 64 bit, added new adaptec controllers
					 added new ioctls, changed scsi interface to use new error handler,
					 increased the number of fibs and outstanding commands to a container)

					(fixed 64bit and 64G memory model, changed confusing naming convention
					 where fibs that go to the hardware are consistently called hw_fibs and
					 not just fibs like the name of the driver tracking structure)
Mark Salyzyn <Mark_Salyzyn@adaptec.com> Fixed panic issues and added some new product ids for upcoming hbas. Performance tuning, card failover and bug mitigations.

Original Driver
-------------------------
Adaptec Unix OEM Product Group

Mailing List
-------------------------
linux-scsi@vger.kernel.org (Interested parties troll here)
Also note this is very different to Brian's original driver
so don't expect him to support it.
Adaptec does support this driver.  Contact Adaptec tech support or
aacraid@adaptec.com

Original by Brian Boerner February 2001
Rewritten by Alan Cox, November 2001
