config MEGARAID_NEWGEN
	bool "LSI Logic New Generation RAID Device Drivers"
	depends on PCI && SCSI
	help
	LSI Logic RAID Device Drivers

config MEGARAID_MM
	tristate "LSI Logic Management Module (New Driver)"
	depends on PCI && SCSI && MEGARAID_NEWGEN
	help
	Management Module provides ioctl, sysfs support for LSI Logic
	RAID controllers.
	To compile this driver as a module, choose M here: the
	module will be called megaraid_mm


config MEGARAID_MAILBOX
	tristate "LSI Logic MegaRAID Driver (New Driver)"
	depends on PCI && SCSI && MEGARAID_MM
	help
	List of supported controllers

	OEM	Product Name		VID :DID :SVID:SSID
	---	------------		---- ---- ---- ----
	Dell PERC3/QC			101E:1960:1028:0471
	Dell PERC3/DC			101E:1960:1028:0493
	Dell PERC3/SC			101E:1960:1028:0475
	Dell PERC3/Di			1028:000E:1028:0123
	Dell PERC4/SC			1000:1960:1028:0520
	Dell PERC4/DC			1000:1960:1028:0518
	Dell PERC4/QC			1000:0407:1028:0531
	Dell PERC4/Di			1028:000F:1028:014A
	Dell PERC 4e/Si			1028:0013:1028:016c
	Dell PERC 4e/Di			1028:0013:1028:016d
	Dell PERC 4e/Di			1028:0013:1028:016e
	Dell PERC 4e/Di			1028:0013:1028:016f
	Dell PERC 4e/Di			1028:0013:1028:0170
	Dell PERC 4e/DC			1000:0408:1028:0002
	Dell PERC 4e/SC			1000:0408:1028:0001
	LSI MegaRAID SCSI 320-0		1000:1960:1000:A520
	LSI MegaRAID SCSI 320-1		1000:1960:1000:0520
	LSI MegaRAID SCSI 320-2		1000:1960:1000:0518
	LSI MegaRAID SCSI 320-0X	1000:0407:1000:0530
	LSI MegaRAID SCSI 320-2X	1000:0407:1000:0532
	LSI MegaRAID SCSI 320-4X	1000:0407:1000:0531
	LSI MegaRAID SCSI 320-1E	1000:0408:1000:0001
	LSI MegaRAID SCSI 320-2E	1000:0408:1000:0002
	LSI MegaRAID SATA 150-4		1000:1960:1000:4523
	LSI MegaRAID SATA 150-6		1000:1960:1000:0523
	LSI MegaRAID SATA 300-4X	1000:0409:1000:3004
	LSI MegaRAID SATA 300-8X	1000:0409:1000:3008
	INTEL RAID Controller SRCU42X	1000:0407:8086:0532
	INTEL RAID Controller SRCS16	1000:1960:8086:0523
	INTEL RAID Controller SRCU42E	1000:0408:8086:0002
	INTEL RAID Controller SRCZCRX	1000:0407:8086:0530
	INTEL RAID Controller SRCS28X	1000:0409:8086:3008
	INTEL RAID Controller SROMBU42E	1000:0408:8086:3431
	INTEL RAID Controller SROMBU42E	1000:0408:8086:3499
	INTEL RAID Controller SRCU51L	1000:1960:8086:0520
	FSC MegaRAID PCI Express ROMB	1000:0408:1734:1065
	ACER MegaRAID ROMB-2E		1000:0408:1025:004D
	NEC MegaRAID PCI Express ROMB	1000:0408:1033:8287

	To compile this driver as a module, choose M here: the
	module will be called megaraid_mbox

config MEGARAID_LEGACY
	tristate "LSI Logic Legacy MegaRAID Driver"
	depends on PCI && SCSI
	help
	This driver supports the LSI MegaRAID 418, 428, 438, 466, 762, 490
	and 467 SCSI host adapters. This driver also support the all U320
	RAID controllers

	To compile this driver as a module, choose M here: the
	module will be called megaraid

config MEGARAID_SAS
	tristate "LSI Logic MegaRAID SAS RAID Module"
	depends on PCI && SCSI
	help
	Module for LSI Logic's SAS based RAID controllers.
	To compile this driver as a module, choose 'm' here.
	Module will be called megaraid_sas

