1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 21da177e4SLinus Torvalds# 31da177e4SLinus Torvalds# AIC7XXX and AIC79XX 2.5.X Kernel configuration File. 41da177e4SLinus Torvalds# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Kconfig.aic7xxx#7 $ 51da177e4SLinus Torvalds# 61da177e4SLinus Torvaldsconfig SCSI_AIC7XXX 7c6bcc592SChristoph Hellwig tristate "Adaptec AIC7xxx Fast -> U160 support" 81da177e4SLinus Torvalds depends on (PCI || EISA) && SCSI 992d161c3S select SCSI_SPI_ATTRS 10a7f7f624SMasahiro Yamada help 111da177e4SLinus Torvalds This driver supports all of Adaptec's Fast through Ultra 160 PCI 121da177e4SLinus Torvalds based SCSI controllers as well as the aic7770 based EISA and VLB 131da177e4SLinus Torvalds SCSI controllers (the 274x and 284x series). For AAA and ARO based 141da177e4SLinus Torvalds configurations, only SCSI functionality is provided. 151da177e4SLinus Torvalds 161da177e4SLinus Torvalds To compile this driver as a module, choose M here: the 171da177e4SLinus Torvalds module will be called aic7xxx. 181da177e4SLinus Torvalds 191da177e4SLinus Torvaldsconfig AIC7XXX_CMDS_PER_DEVICE 201da177e4SLinus Torvalds int "Maximum number of TCQ commands per device" 211da177e4SLinus Torvalds depends on SCSI_AIC7XXX 221da177e4SLinus Torvalds default "32" 23a7f7f624SMasahiro Yamada help 241da177e4SLinus Torvalds Specify the number of commands you would like to allocate per SCSI 251da177e4SLinus Torvalds device when Tagged Command Queueing (TCQ) is enabled on that device. 261da177e4SLinus Torvalds 271da177e4SLinus Torvalds This is an upper bound value for the number of tagged transactions 281da177e4SLinus Torvalds to be used for any device. The aic7xxx driver will automatically 291da177e4SLinus Torvalds vary this number based on device behavior. For devices with a 301da177e4SLinus Torvalds fixed maximum, the driver will eventually lock to this maximum 3109509603SMatt LaPlante and display a console message indicating this value. 321da177e4SLinus Torvalds 331da177e4SLinus Torvalds Due to resource allocation issues in the Linux SCSI mid-layer, using 341da177e4SLinus Torvalds a high number of commands per device may result in memory allocation 351da177e4SLinus Torvalds failures when many devices are attached to the system. For this reason, 3609509603SMatt LaPlante the default is set to 32. Higher values may result in higher performance 371da177e4SLinus Torvalds on some devices. The upper bound is 253. 0 disables tagged queueing. 381da177e4SLinus Torvalds 391da177e4SLinus Torvalds Per device tag depth can be controlled via the kernel command line 40cff7c4a5SMauro Carvalho Chehab "tag_info" option. See Documentation/scsi/aic7xxx.rst for details. 411da177e4SLinus Torvalds 421da177e4SLinus Torvaldsconfig AIC7XXX_RESET_DELAY_MS 431da177e4SLinus Torvalds int "Initial bus reset delay in milli-seconds" 441da177e4SLinus Torvalds depends on SCSI_AIC7XXX 45dacee84bSJames Bottomley default "5000" 46a7f7f624SMasahiro Yamada help 471da177e4SLinus Torvalds The number of milliseconds to delay after an initial bus reset. 481da177e4SLinus Torvalds The bus settle delay following all error recovery actions is 491da177e4SLinus Torvalds dictated by the SCSI layer and is not affected by this value. 501da177e4SLinus Torvalds 51dacee84bSJames Bottomley Default: 5000 (5 seconds) 521da177e4SLinus Torvalds 531da177e4SLinus Torvaldsconfig AIC7XXX_BUILD_FIRMWARE 541da177e4SLinus Torvalds bool "Build Adapter Firmware with Kernel Build" 551da177e4SLinus Torvalds depends on SCSI_AIC7XXX && !PREVENT_FIRMWARE_BUILD 561da177e4SLinus Torvalds help 571da177e4SLinus Torvalds This option should only be enabled if you are modifying the firmware 581da177e4SLinus Torvalds source to the aic7xxx driver and wish to have the generated firmware 591da177e4SLinus Torvalds include files updated during a normal kernel build. The assembler 601da177e4SLinus Torvalds for the firmware requires lex and yacc or their equivalents, as well 611da177e4SLinus Torvalds as the db v1 library. You may have to install additional packages 621da177e4SLinus Torvalds or modify the assembler Makefile or the files it includes if your 631da177e4SLinus Torvalds build environment is different than that of the author. 641da177e4SLinus Torvalds 651da177e4SLinus Torvaldsconfig AIC7XXX_DEBUG_ENABLE 661da177e4SLinus Torvalds bool "Compile in Debugging Code" 671da177e4SLinus Torvalds depends on SCSI_AIC7XXX 681da177e4SLinus Torvalds default y 691da177e4SLinus Torvalds help 701da177e4SLinus Torvalds Compile in aic7xxx debugging code that can be useful in diagnosing 711da177e4SLinus Torvalds driver errors. 721da177e4SLinus Torvalds 731da177e4SLinus Torvaldsconfig AIC7XXX_DEBUG_MASK 741da177e4SLinus Torvalds int "Debug code enable mask (2047 for all debugging)" 751da177e4SLinus Torvalds depends on SCSI_AIC7XXX 761da177e4SLinus Torvalds default "0" 771da177e4SLinus Torvalds help 781da177e4SLinus Torvalds Bit mask of debug options that is only valid if the 795637a2eeSAdrian Bunk CONFIG_AIC7XXX_DEBUG_ENABLE option is enabled. The bits in this mask 801da177e4SLinus Torvalds are defined in the drivers/scsi/aic7xxx/aic7xxx.h - search for the 811da177e4SLinus Torvalds variable ahc_debug in that file to find them. 821da177e4SLinus Torvalds 831da177e4SLinus Torvaldsconfig AIC7XXX_REG_PRETTY_PRINT 841da177e4SLinus Torvalds bool "Decode registers during diagnostics" 851da177e4SLinus Torvalds depends on SCSI_AIC7XXX 861da177e4SLinus Torvalds default y 871da177e4SLinus Torvalds help 881da177e4SLinus Torvalds Compile in register value tables for the output of expanded register 891da177e4SLinus Torvalds contents in diagnostics. This make it much easier to understand debug 901da177e4SLinus Torvalds output without having to refer to a data book and/or the aic7xxx.reg 911da177e4SLinus Torvalds file. 92