xref: /linux/drivers/scsi/aic7xxx/Kconfig.aic7xxx (revision 4413e16d9d21673bb5048a2e542f1aaa00015c2e)
1#
2# AIC7XXX and AIC79XX 2.5.X Kernel configuration File.
3# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Kconfig.aic7xxx#7 $
4#
5config SCSI_AIC7XXX
6	tristate "Adaptec AIC7xxx Fast -> U160 support (New Driver)"
7	depends on (PCI || EISA) && SCSI
8	select SCSI_SPI_ATTRS
9	---help---
10	This driver supports all of Adaptec's Fast through Ultra 160 PCI
11	based SCSI controllers as well as the aic7770 based EISA and VLB
12	SCSI controllers (the 274x and 284x series).  For AAA and ARO based
13	configurations, only SCSI functionality is provided.
14
15	To compile this driver as a module, choose M here: the
16	module will be called aic7xxx.
17
18config AIC7XXX_CMDS_PER_DEVICE
19	int "Maximum number of TCQ commands per device"
20	depends on SCSI_AIC7XXX
21	default "32"
22	---help---
23	Specify the number of commands you would like to allocate per SCSI
24	device when Tagged Command Queueing (TCQ) is enabled on that device.
25
26	This is an upper bound value for the number of tagged transactions
27	to be used for any device.  The aic7xxx driver will automatically
28	vary this number based on device behavior.  For devices with a
29	fixed maximum, the driver will eventually lock to this maximum
30	and display a console message indicating this value.
31
32	Due to resource allocation issues in the Linux SCSI mid-layer, using
33	a high number of commands per device may result in memory allocation
34	failures when many devices are attached to the system.  For this reason,
35	the default is set to 32.  Higher values may result in higher performance
36	on some devices.  The upper bound is 253.  0 disables tagged queueing.
37
38	Per device tag depth can be controlled via the kernel command line
39	"tag_info" option.  See Documentation/scsi/aic7xxx.txt for details.
40
41config AIC7XXX_RESET_DELAY_MS
42	int "Initial bus reset delay in milli-seconds"
43	depends on SCSI_AIC7XXX
44	default "5000"
45	---help---
46	The number of milliseconds to delay after an initial bus reset.
47	The bus settle delay following all error recovery actions is
48	dictated by the SCSI layer and is not affected by this value.
49
50	Default: 5000 (5 seconds)
51
52config AIC7XXX_BUILD_FIRMWARE
53	bool "Build Adapter Firmware with Kernel Build"
54	depends on SCSI_AIC7XXX && !PREVENT_FIRMWARE_BUILD
55	help
56	This option should only be enabled if you are modifying the firmware
57	source to the aic7xxx driver and wish to have the generated firmware
58	include files updated during a normal kernel build.  The assembler
59	for the firmware requires lex and yacc or their equivalents, as well
60	as the db v1 library.  You may have to install additional packages
61	or modify the assembler Makefile or the files it includes if your
62	build environment is different than that of the author.
63
64config AIC7XXX_DEBUG_ENABLE
65	bool "Compile in Debugging Code"
66	depends on SCSI_AIC7XXX
67	default y
68	help
69	Compile in aic7xxx debugging code that can be useful in diagnosing
70	driver errors.
71
72config AIC7XXX_DEBUG_MASK
73        int "Debug code enable mask (2047 for all debugging)"
74        depends on SCSI_AIC7XXX
75        default "0"
76        help
77	Bit mask of debug options that is only valid if the
78	CONFIG_AIC7XXX_DEBUG_ENABLE option is enabled.  The bits in this mask
79	are defined in the drivers/scsi/aic7xxx/aic7xxx.h - search for the
80	variable ahc_debug in that file to find them.
81
82config AIC7XXX_REG_PRETTY_PRINT
83        bool "Decode registers during diagnostics"
84        depends on SCSI_AIC7XXX
85	default y
86        help
87	Compile in register value tables for the output of expanded register
88	contents in diagnostics.  This make it much easier to understand debug
89	output without having to refer to a data book and/or the aic7xxx.reg
90	file.
91