| # SPDX-License-Identifier: GPL-2.0-only |
| # |
| # AIC79XX 2.5.X Kernel configuration File. |
| # $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Kconfig.aic79xx#4 $ |
| # |
| config SCSI_AIC79XX |
| tristate "Adaptec AIC79xx U320 support" |
| depends on PCI && HAS_IOPORT && SCSI |
| select SCSI_SPI_ATTRS |
| help |
| This driver supports all of Adaptec's Ultra 320 PCI-X |
| based SCSI controllers. |
| |
| config AIC79XX_CMDS_PER_DEVICE |
| int "Maximum number of TCQ commands per device" |
| depends on SCSI_AIC79XX |
| default "32" |
| help |
| Specify the number of commands you would like to allocate per SCSI |
| device when Tagged Command Queueing (TCQ) is enabled on that device. |
| |
| This is an upper bound value for the number of tagged transactions |
| to be used for any device. The aic7xxx driver will automatically |
| vary this number based on device behavior. For devices with a |
| fixed maximum, the driver will eventually lock to this maximum |
| and display a console message indicating this value. |
| |
| Due to resource allocation issues in the Linux SCSI mid-layer, using |
| a high number of commands per device may result in memory allocation |
| failures when many devices are attached to the system. For this |
| reason, the default is set to 32. Higher values may result in higher |
| performance on some devices. The upper bound is 253. 0 disables |
| tagged queueing. |
| |
| Per device tag depth can be controlled via the kernel command line |
| "tag_info" option. See Documentation/scsi/aic79xx.rst for details. |
| |
| config AIC79XX_RESET_DELAY_MS |
| int "Initial bus reset delay in milli-seconds" |
| depends on SCSI_AIC79XX |
| default "5000" |
| help |
| The number of milliseconds to delay after an initial bus reset. |
| The bus settle delay following all error recovery actions is |
| dictated by the SCSI layer and is not affected by this value. |
| |
| Default: 5000 (5 seconds) |
| |
| config AIC79XX_BUILD_FIRMWARE |
| bool "Build Adapter Firmware with Kernel Build" |
| depends on SCSI_AIC79XX && !PREVENT_FIRMWARE_BUILD |
| help |
| This option should only be enabled if you are modifying the firmware |
| source to the aic79xx driver and wish to have the generated firmware |
| include files updated during a normal kernel build. The assembler |
| for the firmware requires lex and yacc or their equivalents, as well |
| as the db v1 library. You may have to install additional packages |
| or modify the assembler Makefile or the files it includes if your |
| build environment is different than that of the author. |
| |
| config AIC79XX_DEBUG_ENABLE |
| bool "Compile in Debugging Code" |
| depends on SCSI_AIC79XX |
| default y |
| help |
| Compile in aic79xx debugging code that can be useful in diagnosing |
| driver errors. |
| |
| config AIC79XX_DEBUG_MASK |
| int "Debug code enable mask (16383 for all debugging)" |
| depends on SCSI_AIC79XX |
| default "0" |
| help |
| Bit mask of debug options that is only valid if the |
| CONFIG_AIC79XX_DEBUG_ENABLE option is enabled. The bits in this mask |
| are defined in the drivers/scsi/aic7xxx/aic79xx.h - search for the |
| variable ahd_debug in that file to find them. |
| |
| config AIC79XX_REG_PRETTY_PRINT |
| bool "Decode registers during diagnostics" |
| depends on SCSI_AIC79XX |
| default y |
| help |
| Compile in register value tables for the output of expanded register |
| contents in diagnostics. This make it much easier to understand debug |
| output without having to refer to a data book and/or the aic7xxx.reg |
| file. |