162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# ATM device configuration 462306a36Sopenharmony_ci# 562306a36Sopenharmony_ci 662306a36Sopenharmony_cimenuconfig ATM_DRIVERS 762306a36Sopenharmony_ci bool "ATM drivers" 862306a36Sopenharmony_ci depends on NETDEVICES && ATM 962306a36Sopenharmony_ci default y 1062306a36Sopenharmony_ci help 1162306a36Sopenharmony_ci Say Y here to get to see options for Asynchronous Transfer Mode 1262306a36Sopenharmony_ci device drivers. This option alone does not add any kernel code. 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci If you say N, all options in this submenu will be skipped and disabled. 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ciif ATM_DRIVERS && NETDEVICES && ATM 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ciconfig ATM_DUMMY 1962306a36Sopenharmony_ci tristate "Dummy ATM driver" 2062306a36Sopenharmony_ci help 2162306a36Sopenharmony_ci Dummy ATM driver. Useful for proxy signalling, testing, 2262306a36Sopenharmony_ci and development. If unsure, say N. 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ciconfig ATM_TCP 2562306a36Sopenharmony_ci tristate "ATM over TCP" 2662306a36Sopenharmony_ci depends on INET 2762306a36Sopenharmony_ci help 2862306a36Sopenharmony_ci ATM over TCP driver. Useful mainly for development and for 2962306a36Sopenharmony_ci experiments. If unsure, say N. 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ciconfig ATM_LANAI 3262306a36Sopenharmony_ci tristate "Efficient Networks Speedstream 3010" 3362306a36Sopenharmony_ci depends on PCI && ATM 3462306a36Sopenharmony_ci help 3562306a36Sopenharmony_ci Supports ATM cards based on the Efficient Networks "Lanai" 3662306a36Sopenharmony_ci chipset such as the Speedstream 3010 and the ENI-25p. The 3762306a36Sopenharmony_ci Speedstream 3060 is currently not supported since we don't 3862306a36Sopenharmony_ci have the code to drive the on-board Alcatel DSL chipset (yet). 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ciconfig ATM_ENI 4162306a36Sopenharmony_ci tristate "Efficient Networks ENI155P" 4262306a36Sopenharmony_ci depends on PCI 4362306a36Sopenharmony_ci help 4462306a36Sopenharmony_ci Driver for the Efficient Networks ENI155p series and SMC ATM 4562306a36Sopenharmony_ci Power155 155 Mbps ATM adapters. Both, the versions with 512KB and 4662306a36Sopenharmony_ci 2MB on-board RAM (Efficient calls them "C" and "S", respectively), 4762306a36Sopenharmony_ci and the FPGA and the ASIC Tonga versions of the board are supported. 4862306a36Sopenharmony_ci The driver works with MMF (-MF or ...F) and UTP-5 (-U5 or ...D) 4962306a36Sopenharmony_ci adapters. 5062306a36Sopenharmony_ci 5162306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module will 5262306a36Sopenharmony_ci be called eni. 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ciconfig ATM_ENI_DEBUG 5562306a36Sopenharmony_ci bool "Enable extended debugging" 5662306a36Sopenharmony_ci depends on ATM_ENI 5762306a36Sopenharmony_ci help 5862306a36Sopenharmony_ci Extended debugging records various events and displays that list 5962306a36Sopenharmony_ci when an inconsistency is detected. This mechanism is faster than 6062306a36Sopenharmony_ci generally using printks, but still has some impact on performance. 6162306a36Sopenharmony_ci Note that extended debugging may create certain race conditions 6262306a36Sopenharmony_ci itself. Enable this ONLY if you suspect problems with the driver. 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ciconfig ATM_ENI_TUNE_BURST 6562306a36Sopenharmony_ci bool "Fine-tune burst settings" 6662306a36Sopenharmony_ci depends on ATM_ENI 6762306a36Sopenharmony_ci help 6862306a36Sopenharmony_ci In order to obtain good throughput, the ENI NIC can transfer 6962306a36Sopenharmony_ci multiple words of data per PCI bus access cycle. Such a multi-word 7062306a36Sopenharmony_ci transfer is called a burst. 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci The default settings for the burst sizes are suitable for most PCI 7362306a36Sopenharmony_ci chipsets. However, in some cases, large bursts may overrun buffers 7462306a36Sopenharmony_ci in the PCI chipset and cause data corruption. In such cases, large 7562306a36Sopenharmony_ci bursts must be disabled and only (slower) small bursts can be used. 7662306a36Sopenharmony_ci The burst sizes can be set independently in the send (TX) and 7762306a36Sopenharmony_ci receive (RX) direction. 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ci Note that enabling many different burst sizes in the same direction 8062306a36Sopenharmony_ci may increase the cost of setting up a transfer such that the 8162306a36Sopenharmony_ci resulting throughput is lower than when using only the largest 8262306a36Sopenharmony_ci available burst size. 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ci Also, sometimes larger bursts lead to lower throughput, e.g. on an 8562306a36Sopenharmony_ci Intel 440FX board, a drop from 135 Mbps to 103 Mbps was observed 8662306a36Sopenharmony_ci when going from 8W to 16W bursts. 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ciconfig ATM_ENI_BURST_TX_16W 8962306a36Sopenharmony_ci bool "Enable 16W TX bursts (discouraged)" 9062306a36Sopenharmony_ci depends on ATM_ENI_TUNE_BURST 9162306a36Sopenharmony_ci help 9262306a36Sopenharmony_ci Burst sixteen words at once in the send direction. This may work 9362306a36Sopenharmony_ci with recent PCI chipsets, but is known to fail with older chipsets. 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ciconfig ATM_ENI_BURST_TX_8W 9662306a36Sopenharmony_ci bool "Enable 8W TX bursts (recommended)" 9762306a36Sopenharmony_ci depends on ATM_ENI_TUNE_BURST 9862306a36Sopenharmony_ci help 9962306a36Sopenharmony_ci Burst eight words at once in the send direction. This is the default 10062306a36Sopenharmony_ci setting. 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_ciconfig ATM_ENI_BURST_TX_4W 10362306a36Sopenharmony_ci bool "Enable 4W TX bursts (optional)" 10462306a36Sopenharmony_ci depends on ATM_ENI_TUNE_BURST 10562306a36Sopenharmony_ci help 10662306a36Sopenharmony_ci Burst four words at once in the send direction. You may want to try 10762306a36Sopenharmony_ci this if you have disabled 8W bursts. Enabling 4W if 8W is also set 10862306a36Sopenharmony_ci may or may not improve throughput. 10962306a36Sopenharmony_ci 11062306a36Sopenharmony_ciconfig ATM_ENI_BURST_TX_2W 11162306a36Sopenharmony_ci bool "Enable 2W TX bursts (optional)" 11262306a36Sopenharmony_ci depends on ATM_ENI_TUNE_BURST 11362306a36Sopenharmony_ci help 11462306a36Sopenharmony_ci Burst two words at once in the send direction. You may want to try 11562306a36Sopenharmony_ci this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W 11662306a36Sopenharmony_ci are also set may or may not improve throughput. 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ciconfig ATM_ENI_BURST_RX_16W 11962306a36Sopenharmony_ci bool "Enable 16W RX bursts (discouraged)" 12062306a36Sopenharmony_ci depends on ATM_ENI_TUNE_BURST 12162306a36Sopenharmony_ci help 12262306a36Sopenharmony_ci Burst sixteen words at once in the receive direction. This may work 12362306a36Sopenharmony_ci with recent PCI chipsets, but is known to fail with older chipsets. 12462306a36Sopenharmony_ci 12562306a36Sopenharmony_ciconfig ATM_ENI_BURST_RX_8W 12662306a36Sopenharmony_ci bool "Enable 8W RX bursts (discouraged)" 12762306a36Sopenharmony_ci depends on ATM_ENI_TUNE_BURST 12862306a36Sopenharmony_ci help 12962306a36Sopenharmony_ci Burst eight words at once in the receive direction. This may work 13062306a36Sopenharmony_ci with recent PCI chipsets, but is known to fail with older chipsets, 13162306a36Sopenharmony_ci such as the Intel Neptune series. 13262306a36Sopenharmony_ci 13362306a36Sopenharmony_ciconfig ATM_ENI_BURST_RX_4W 13462306a36Sopenharmony_ci bool "Enable 4W RX bursts (recommended)" 13562306a36Sopenharmony_ci depends on ATM_ENI_TUNE_BURST 13662306a36Sopenharmony_ci help 13762306a36Sopenharmony_ci Burst four words at once in the receive direction. This is the 13862306a36Sopenharmony_ci default setting. Enabling 4W if 8W is also set may or may not 13962306a36Sopenharmony_ci improve throughput. 14062306a36Sopenharmony_ci 14162306a36Sopenharmony_ciconfig ATM_ENI_BURST_RX_2W 14262306a36Sopenharmony_ci bool "Enable 2W RX bursts (optional)" 14362306a36Sopenharmony_ci depends on ATM_ENI_TUNE_BURST 14462306a36Sopenharmony_ci help 14562306a36Sopenharmony_ci Burst two words at once in the receive direction. You may want to 14662306a36Sopenharmony_ci try this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 14762306a36Sopenharmony_ci 8W are also set may or may not improve throughput. 14862306a36Sopenharmony_ci 14962306a36Sopenharmony_ciconfig ATM_NICSTAR 15062306a36Sopenharmony_ci tristate "IDT 77201 (NICStAR) (ForeRunnerLE)" 15162306a36Sopenharmony_ci depends on PCI 15262306a36Sopenharmony_ci help 15362306a36Sopenharmony_ci The NICStAR chipset family is used in a large number of ATM NICs for 15462306a36Sopenharmony_ci 25 and for 155 Mbps, including IDT cards and the Fore ForeRunnerLE 15562306a36Sopenharmony_ci series. Say Y if you have one of those. 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module will 15862306a36Sopenharmony_ci be called nicstar. 15962306a36Sopenharmony_ci 16062306a36Sopenharmony_ciconfig ATM_NICSTAR_USE_SUNI 16162306a36Sopenharmony_ci bool "Use suni PHY driver (155Mbps)" 16262306a36Sopenharmony_ci depends on ATM_NICSTAR 16362306a36Sopenharmony_ci help 16462306a36Sopenharmony_ci Support for the S-UNI and compatible PHYsical layer chips. These are 16562306a36Sopenharmony_ci found in most 155Mbps NICStAR based ATM cards, namely in the 16662306a36Sopenharmony_ci ForeRunner LE155 cards. This driver provides detection of cable~ 16762306a36Sopenharmony_ci removal and reinsertion and provides some statistics. This driver 16862306a36Sopenharmony_ci doesn't have removal capability when compiled as a module, so if you 16962306a36Sopenharmony_ci need that capability don't include S-UNI support (it's not needed to 17062306a36Sopenharmony_ci make the card work). 17162306a36Sopenharmony_ci 17262306a36Sopenharmony_ciconfig ATM_NICSTAR_USE_IDT77105 17362306a36Sopenharmony_ci bool "Use IDT77105 PHY driver (25Mbps)" 17462306a36Sopenharmony_ci depends on ATM_NICSTAR 17562306a36Sopenharmony_ci help 17662306a36Sopenharmony_ci Support for the PHYsical layer chip in ForeRunner LE25 cards. In 17762306a36Sopenharmony_ci addition to cable removal/reinsertion detection, this driver allows 17862306a36Sopenharmony_ci you to control the loopback mode of the chip via a dedicated IOCTL. 17962306a36Sopenharmony_ci This driver is required for proper handling of temporary carrier 18062306a36Sopenharmony_ci loss, so if you have a 25Mbps NICStAR based ATM card you must say Y. 18162306a36Sopenharmony_ci 18262306a36Sopenharmony_ciconfig ATM_IDT77252 18362306a36Sopenharmony_ci tristate "IDT 77252 (NICStAR II)" 18462306a36Sopenharmony_ci depends on PCI 18562306a36Sopenharmony_ci help 18662306a36Sopenharmony_ci Driver for the IDT 77252 ATM PCI chips. 18762306a36Sopenharmony_ci 18862306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module will 18962306a36Sopenharmony_ci be called idt77252. 19062306a36Sopenharmony_ci 19162306a36Sopenharmony_ciconfig ATM_IDT77252_DEBUG 19262306a36Sopenharmony_ci bool "Enable debugging messages" 19362306a36Sopenharmony_ci depends on ATM_IDT77252 19462306a36Sopenharmony_ci help 19562306a36Sopenharmony_ci Somewhat useful debugging messages are available. The choice of 19662306a36Sopenharmony_ci messages is controlled by a bitmap. This may be specified as a 19762306a36Sopenharmony_ci module argument. See the file <file:drivers/atm/idt77252.h> for 19862306a36Sopenharmony_ci the meanings of the bits in the mask. 19962306a36Sopenharmony_ci 20062306a36Sopenharmony_ci When active, these messages can have a significant impact on the 20162306a36Sopenharmony_ci speed of the driver, and the size of your syslog files! When 20262306a36Sopenharmony_ci inactive, they will have only a modest impact on performance. 20362306a36Sopenharmony_ci 20462306a36Sopenharmony_ciconfig ATM_IDT77252_RCV_ALL 20562306a36Sopenharmony_ci bool "Receive ALL cells in raw queue" 20662306a36Sopenharmony_ci depends on ATM_IDT77252 20762306a36Sopenharmony_ci help 20862306a36Sopenharmony_ci Enable receiving of all cells on the ATM link, that do not match 20962306a36Sopenharmony_ci an open connection in the raw cell queue of the driver. Useful 21062306a36Sopenharmony_ci for debugging or special applications only, so the safe answer is N. 21162306a36Sopenharmony_ci 21262306a36Sopenharmony_ciconfig ATM_IDT77252_USE_SUNI 21362306a36Sopenharmony_ci bool 21462306a36Sopenharmony_ci depends on ATM_IDT77252 21562306a36Sopenharmony_ci default y 21662306a36Sopenharmony_ci 21762306a36Sopenharmony_ciconfig ATM_IA 21862306a36Sopenharmony_ci tristate "Interphase ATM PCI x575/x525/x531" 21962306a36Sopenharmony_ci depends on PCI 22062306a36Sopenharmony_ci help 22162306a36Sopenharmony_ci This is a driver for the Interphase (i)ChipSAR adapter cards 22262306a36Sopenharmony_ci which include a variety of variants in term of the size of the 22362306a36Sopenharmony_ci control memory (128K-1KVC, 512K-4KVC), the size of the packet 22462306a36Sopenharmony_ci memory (128K, 512K, 1M), and the PHY type (Single/Multi mode OC3, 22562306a36Sopenharmony_ci UTP155, UTP25, DS3 and E3). Go to: 22662306a36Sopenharmony_ci <http://www.iphase.com/> 22762306a36Sopenharmony_ci for more info about the cards. Say Y (or M to compile as a module 22862306a36Sopenharmony_ci named iphase) here if you have one of these cards. 22962306a36Sopenharmony_ci 23062306a36Sopenharmony_ci See the file 23162306a36Sopenharmony_ci <file:Documentation/networking/device_drivers/atm/iphase.rst> 23262306a36Sopenharmony_ci for further details. 23362306a36Sopenharmony_ci 23462306a36Sopenharmony_ciconfig ATM_IA_DEBUG 23562306a36Sopenharmony_ci bool "Enable debugging messages" 23662306a36Sopenharmony_ci depends on ATM_IA 23762306a36Sopenharmony_ci help 23862306a36Sopenharmony_ci Somewhat useful debugging messages are available. The choice of 23962306a36Sopenharmony_ci messages is controlled by a bitmap. This may be specified as a 24062306a36Sopenharmony_ci module argument (kernel command line argument as well?), changed 24162306a36Sopenharmony_ci dynamically using an ioctl (Get the debug utility, iadbg, from 24262306a36Sopenharmony_ci <ftp://ftp.iphase.com/pub/atm/pci/>). 24362306a36Sopenharmony_ci 24462306a36Sopenharmony_ci See the file <file:drivers/atm/iphase.h> for the meanings of the 24562306a36Sopenharmony_ci bits in the mask. 24662306a36Sopenharmony_ci 24762306a36Sopenharmony_ci When active, these messages can have a significant impact on the 24862306a36Sopenharmony_ci speed of the driver, and the size of your syslog files! When 24962306a36Sopenharmony_ci inactive, they will have only a modest impact on performance. 25062306a36Sopenharmony_ci 25162306a36Sopenharmony_ciconfig ATM_FORE200E 25262306a36Sopenharmony_ci tristate "FORE Systems 200E-series" 25362306a36Sopenharmony_ci depends on (PCI || SBUS) 25462306a36Sopenharmony_ci select FW_LOADER 25562306a36Sopenharmony_ci help 25662306a36Sopenharmony_ci This is a driver for the FORE Systems 200E-series ATM adapter 25762306a36Sopenharmony_ci cards. It simultaneously supports PCA-200E and SBA-200E models 25862306a36Sopenharmony_ci on PCI and SBUS hosts. Say Y (or M to compile as a module 25962306a36Sopenharmony_ci named fore_200e) here if you have one of these ATM adapters. 26062306a36Sopenharmony_ci 26162306a36Sopenharmony_ci See the file 26262306a36Sopenharmony_ci <file:Documentation/networking/device_drivers/atm/fore200e.rst> for 26362306a36Sopenharmony_ci further details. 26462306a36Sopenharmony_ci 26562306a36Sopenharmony_ciconfig ATM_FORE200E_USE_TASKLET 26662306a36Sopenharmony_ci bool "Defer interrupt work to a tasklet" 26762306a36Sopenharmony_ci depends on ATM_FORE200E 26862306a36Sopenharmony_ci default n 26962306a36Sopenharmony_ci help 27062306a36Sopenharmony_ci This defers work to be done by the interrupt handler to a 27162306a36Sopenharmony_ci tasklet instead of handling everything at interrupt time. This 27262306a36Sopenharmony_ci may improve the responsive of the host. 27362306a36Sopenharmony_ci 27462306a36Sopenharmony_ciconfig ATM_FORE200E_TX_RETRY 27562306a36Sopenharmony_ci int "Maximum number of tx retries" 27662306a36Sopenharmony_ci depends on ATM_FORE200E 27762306a36Sopenharmony_ci default "16" 27862306a36Sopenharmony_ci help 27962306a36Sopenharmony_ci Specifies the number of times the driver attempts to transmit 28062306a36Sopenharmony_ci a message before giving up, if the transmit queue of the ATM card 28162306a36Sopenharmony_ci is transiently saturated. 28262306a36Sopenharmony_ci 28362306a36Sopenharmony_ci Saturation of the transmit queue may occur only under extreme 28462306a36Sopenharmony_ci conditions, e.g. when a fast host continuously submits very small 28562306a36Sopenharmony_ci frames (<64 bytes) or raw AAL0 cells (48 bytes) to the ATM adapter. 28662306a36Sopenharmony_ci 28762306a36Sopenharmony_ci Note that under common conditions, it is unlikely that you encounter 28862306a36Sopenharmony_ci a saturation of the transmit queue, so the retry mechanism never 28962306a36Sopenharmony_ci comes into play. 29062306a36Sopenharmony_ci 29162306a36Sopenharmony_ciconfig ATM_FORE200E_DEBUG 29262306a36Sopenharmony_ci int "Debugging level (0-3)" 29362306a36Sopenharmony_ci depends on ATM_FORE200E 29462306a36Sopenharmony_ci default "0" 29562306a36Sopenharmony_ci help 29662306a36Sopenharmony_ci Specifies the level of debugging messages issued by the driver. 29762306a36Sopenharmony_ci The verbosity of the driver increases with the value of this 29862306a36Sopenharmony_ci parameter. 29962306a36Sopenharmony_ci 30062306a36Sopenharmony_ci When active, these messages can have a significant impact on 30162306a36Sopenharmony_ci the performances of the driver, and the size of your syslog files! 30262306a36Sopenharmony_ci Keep the debugging level to 0 during normal operations. 30362306a36Sopenharmony_ci 30462306a36Sopenharmony_ciconfig ATM_HE 30562306a36Sopenharmony_ci tristate "ForeRunner HE Series" 30662306a36Sopenharmony_ci depends on PCI 30762306a36Sopenharmony_ci help 30862306a36Sopenharmony_ci This is a driver for the Marconi ForeRunner HE-series ATM adapter 30962306a36Sopenharmony_ci cards. It simultaneously supports the 155 and 622 versions. 31062306a36Sopenharmony_ci 31162306a36Sopenharmony_ciconfig ATM_HE_USE_SUNI 31262306a36Sopenharmony_ci bool "Use S/UNI PHY driver" 31362306a36Sopenharmony_ci depends on ATM_HE 31462306a36Sopenharmony_ci help 31562306a36Sopenharmony_ci Support for the S/UNI-Ultra and S/UNI-622 found in the ForeRunner 31662306a36Sopenharmony_ci HE cards. This driver provides carrier detection some statistics. 31762306a36Sopenharmony_ci 31862306a36Sopenharmony_ciconfig ATM_SOLOS 31962306a36Sopenharmony_ci tristate "Solos ADSL2+ PCI Multiport card driver" 32062306a36Sopenharmony_ci depends on PCI 32162306a36Sopenharmony_ci select FW_LOADER 32262306a36Sopenharmony_ci help 32362306a36Sopenharmony_ci Support for the Solos multiport ADSL2+ card. 32462306a36Sopenharmony_ci 32562306a36Sopenharmony_ciendif # ATM 326