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