1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 21da177e4SLinus Torvalds# 31da177e4SLinus Torvalds# ATM device configuration 41da177e4SLinus Torvalds# 51da177e4SLinus Torvalds 64151ce31SJan Engelhardtmenuconfig ATM_DRIVERS 74151ce31SJan Engelhardt bool "ATM drivers" 81da177e4SLinus Torvalds depends on NETDEVICES && ATM 94151ce31SJan Engelhardt default y 10a7f7f624SMasahiro Yamada help 1106bfb7ebSJan Engelhardt Say Y here to get to see options for Asynchronous Transfer Mode 1206bfb7ebSJan Engelhardt device drivers. This option alone does not add any kernel code. 1306bfb7ebSJan Engelhardt 1406bfb7ebSJan Engelhardt If you say N, all options in this submenu will be skipped and disabled. 154151ce31SJan Engelhardt 1659faba1bSTrent Piephoif ATM_DRIVERS && NETDEVICES && ATM 171da177e4SLinus Torvalds 18fb296449SChas Williamsconfig ATM_DUMMY 19fb296449SChas Williams tristate "Dummy ATM driver" 20fb296449SChas Williams help 21fb296449SChas Williams Dummy ATM driver. Useful for proxy signalling, testing, 22fb296449SChas Williams and development. If unsure, say N. 23fb296449SChas Williams 241da177e4SLinus Torvaldsconfig ATM_TCP 251da177e4SLinus Torvalds tristate "ATM over TCP" 264151ce31SJan Engelhardt depends on INET 271da177e4SLinus Torvalds help 281da177e4SLinus Torvalds ATM over TCP driver. Useful mainly for development and for 291da177e4SLinus Torvalds experiments. If unsure, say N. 301da177e4SLinus Torvalds 311da177e4SLinus Torvaldsconfig ATM_LANAI 321da177e4SLinus Torvalds tristate "Efficient Networks Speedstream 3010" 331da177e4SLinus Torvalds depends on PCI && ATM 341da177e4SLinus Torvalds help 351da177e4SLinus Torvalds Supports ATM cards based on the Efficient Networks "Lanai" 361da177e4SLinus Torvalds chipset such as the Speedstream 3010 and the ENI-25p. The 371da177e4SLinus Torvalds Speedstream 3060 is currently not supported since we don't 381da177e4SLinus Torvalds have the code to drive the on-board Alcatel DSL chipset (yet). 391da177e4SLinus Torvalds 401da177e4SLinus Torvaldsconfig ATM_ENI 411da177e4SLinus Torvalds tristate "Efficient Networks ENI155P" 424151ce31SJan Engelhardt depends on PCI 43a7f7f624SMasahiro Yamada help 441da177e4SLinus Torvalds Driver for the Efficient Networks ENI155p series and SMC ATM 451da177e4SLinus Torvalds Power155 155 Mbps ATM adapters. Both, the versions with 512KB and 461da177e4SLinus Torvalds 2MB on-board RAM (Efficient calls them "C" and "S", respectively), 471da177e4SLinus Torvalds and the FPGA and the ASIC Tonga versions of the board are supported. 481da177e4SLinus Torvalds The driver works with MMF (-MF or ...F) and UTP-5 (-U5 or ...D) 491da177e4SLinus Torvalds adapters. 501da177e4SLinus Torvalds 511da177e4SLinus Torvalds To compile this driver as a module, choose M here: the module will 521da177e4SLinus Torvalds be called eni. 531da177e4SLinus Torvalds 541da177e4SLinus Torvaldsconfig ATM_ENI_DEBUG 551da177e4SLinus Torvalds bool "Enable extended debugging" 561da177e4SLinus Torvalds depends on ATM_ENI 571da177e4SLinus Torvalds help 581da177e4SLinus Torvalds Extended debugging records various events and displays that list 591da177e4SLinus Torvalds when an inconsistency is detected. This mechanism is faster than 601da177e4SLinus Torvalds generally using printks, but still has some impact on performance. 611da177e4SLinus Torvalds Note that extended debugging may create certain race conditions 621da177e4SLinus Torvalds itself. Enable this ONLY if you suspect problems with the driver. 631da177e4SLinus Torvalds 641da177e4SLinus Torvaldsconfig ATM_ENI_TUNE_BURST 651da177e4SLinus Torvalds bool "Fine-tune burst settings" 661da177e4SLinus Torvalds depends on ATM_ENI 67a7f7f624SMasahiro Yamada help 681da177e4SLinus Torvalds In order to obtain good throughput, the ENI NIC can transfer 691da177e4SLinus Torvalds multiple words of data per PCI bus access cycle. Such a multi-word 701da177e4SLinus Torvalds transfer is called a burst. 711da177e4SLinus Torvalds 721da177e4SLinus Torvalds The default settings for the burst sizes are suitable for most PCI 731da177e4SLinus Torvalds chipsets. However, in some cases, large bursts may overrun buffers 741da177e4SLinus Torvalds in the PCI chipset and cause data corruption. In such cases, large 751da177e4SLinus Torvalds bursts must be disabled and only (slower) small bursts can be used. 761da177e4SLinus Torvalds The burst sizes can be set independently in the send (TX) and 771da177e4SLinus Torvalds receive (RX) direction. 781da177e4SLinus Torvalds 791da177e4SLinus Torvalds Note that enabling many different burst sizes in the same direction 801da177e4SLinus Torvalds may increase the cost of setting up a transfer such that the 811da177e4SLinus Torvalds resulting throughput is lower than when using only the largest 821da177e4SLinus Torvalds available burst size. 831da177e4SLinus Torvalds 841da177e4SLinus Torvalds Also, sometimes larger bursts lead to lower throughput, e.g. on an 851da177e4SLinus Torvalds Intel 440FX board, a drop from 135 Mbps to 103 Mbps was observed 861da177e4SLinus Torvalds when going from 8W to 16W bursts. 871da177e4SLinus Torvalds 881da177e4SLinus Torvaldsconfig ATM_ENI_BURST_TX_16W 891da177e4SLinus Torvalds bool "Enable 16W TX bursts (discouraged)" 901da177e4SLinus Torvalds depends on ATM_ENI_TUNE_BURST 911da177e4SLinus Torvalds help 921da177e4SLinus Torvalds Burst sixteen words at once in the send direction. This may work 931da177e4SLinus Torvalds with recent PCI chipsets, but is known to fail with older chipsets. 941da177e4SLinus Torvalds 951da177e4SLinus Torvaldsconfig ATM_ENI_BURST_TX_8W 961da177e4SLinus Torvalds bool "Enable 8W TX bursts (recommended)" 971da177e4SLinus Torvalds depends on ATM_ENI_TUNE_BURST 981da177e4SLinus Torvalds help 991da177e4SLinus Torvalds Burst eight words at once in the send direction. This is the default 1001da177e4SLinus Torvalds setting. 1011da177e4SLinus Torvalds 1021da177e4SLinus Torvaldsconfig ATM_ENI_BURST_TX_4W 1031da177e4SLinus Torvalds bool "Enable 4W TX bursts (optional)" 1041da177e4SLinus Torvalds depends on ATM_ENI_TUNE_BURST 1051da177e4SLinus Torvalds help 1061da177e4SLinus Torvalds Burst four words at once in the send direction. You may want to try 1071da177e4SLinus Torvalds this if you have disabled 8W bursts. Enabling 4W if 8W is also set 1081da177e4SLinus Torvalds may or may not improve throughput. 1091da177e4SLinus Torvalds 1101da177e4SLinus Torvaldsconfig ATM_ENI_BURST_TX_2W 1111da177e4SLinus Torvalds bool "Enable 2W TX bursts (optional)" 1121da177e4SLinus Torvalds depends on ATM_ENI_TUNE_BURST 1131da177e4SLinus Torvalds help 1141da177e4SLinus Torvalds Burst two words at once in the send direction. You may want to try 1151da177e4SLinus Torvalds this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W 1161da177e4SLinus Torvalds are also set may or may not improve throughput. 1171da177e4SLinus Torvalds 1181da177e4SLinus Torvaldsconfig ATM_ENI_BURST_RX_16W 1191da177e4SLinus Torvalds bool "Enable 16W RX bursts (discouraged)" 1201da177e4SLinus Torvalds depends on ATM_ENI_TUNE_BURST 1211da177e4SLinus Torvalds help 1221da177e4SLinus Torvalds Burst sixteen words at once in the receive direction. This may work 1231da177e4SLinus Torvalds with recent PCI chipsets, but is known to fail with older chipsets. 1241da177e4SLinus Torvalds 1251da177e4SLinus Torvaldsconfig ATM_ENI_BURST_RX_8W 1261da177e4SLinus Torvalds bool "Enable 8W RX bursts (discouraged)" 1271da177e4SLinus Torvalds depends on ATM_ENI_TUNE_BURST 1281da177e4SLinus Torvalds help 1291da177e4SLinus Torvalds Burst eight words at once in the receive direction. This may work 1301da177e4SLinus Torvalds with recent PCI chipsets, but is known to fail with older chipsets, 1311da177e4SLinus Torvalds such as the Intel Neptune series. 1321da177e4SLinus Torvalds 1331da177e4SLinus Torvaldsconfig ATM_ENI_BURST_RX_4W 1341da177e4SLinus Torvalds bool "Enable 4W RX bursts (recommended)" 1351da177e4SLinus Torvalds depends on ATM_ENI_TUNE_BURST 1361da177e4SLinus Torvalds help 1371da177e4SLinus Torvalds Burst four words at once in the receive direction. This is the 1381da177e4SLinus Torvalds default setting. Enabling 4W if 8W is also set may or may not 1391da177e4SLinus Torvalds improve throughput. 1401da177e4SLinus Torvalds 1411da177e4SLinus Torvaldsconfig ATM_ENI_BURST_RX_2W 1421da177e4SLinus Torvalds bool "Enable 2W RX bursts (optional)" 1431da177e4SLinus Torvalds depends on ATM_ENI_TUNE_BURST 1441da177e4SLinus Torvalds help 1451da177e4SLinus Torvalds Burst two words at once in the receive direction. You may want to 1461da177e4SLinus Torvalds try this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 1471da177e4SLinus Torvalds 8W are also set may or may not improve throughput. 1481da177e4SLinus Torvalds 1491da177e4SLinus Torvaldsconfig ATM_NICSTAR 1501da177e4SLinus Torvalds tristate "IDT 77201 (NICStAR) (ForeRunnerLE)" 151864a3ff6Schas williams - CONTRACTOR depends on PCI 1521da177e4SLinus Torvalds help 1531da177e4SLinus Torvalds The NICStAR chipset family is used in a large number of ATM NICs for 1541da177e4SLinus Torvalds 25 and for 155 Mbps, including IDT cards and the Fore ForeRunnerLE 1551da177e4SLinus Torvalds series. Say Y if you have one of those. 1561da177e4SLinus Torvalds 1571da177e4SLinus Torvalds To compile this driver as a module, choose M here: the module will 1581da177e4SLinus Torvalds be called nicstar. 1591da177e4SLinus Torvalds 1601da177e4SLinus Torvaldsconfig ATM_NICSTAR_USE_SUNI 1611da177e4SLinus Torvalds bool "Use suni PHY driver (155Mbps)" 1621da177e4SLinus Torvalds depends on ATM_NICSTAR 1631da177e4SLinus Torvalds help 1641da177e4SLinus Torvalds Support for the S-UNI and compatible PHYsical layer chips. These are 1651da177e4SLinus Torvalds found in most 155Mbps NICStAR based ATM cards, namely in the 1661da177e4SLinus Torvalds ForeRunner LE155 cards. This driver provides detection of cable~ 1671da177e4SLinus Torvalds removal and reinsertion and provides some statistics. This driver 1681da177e4SLinus Torvalds doesn't have removal capability when compiled as a module, so if you 1691da177e4SLinus Torvalds need that capability don't include S-UNI support (it's not needed to 1701da177e4SLinus Torvalds make the card work). 1711da177e4SLinus Torvalds 1721da177e4SLinus Torvaldsconfig ATM_NICSTAR_USE_IDT77105 173cd9d4ff9SChristophe JAILLET bool "Use IDT77105 PHY driver (25Mbps)" 1741da177e4SLinus Torvalds depends on ATM_NICSTAR 1751da177e4SLinus Torvalds help 1761da177e4SLinus Torvalds Support for the PHYsical layer chip in ForeRunner LE25 cards. In 1771da177e4SLinus Torvalds addition to cable removal/reinsertion detection, this driver allows 1781da177e4SLinus Torvalds you to control the loopback mode of the chip via a dedicated IOCTL. 1791da177e4SLinus Torvalds This driver is required for proper handling of temporary carrier 1801da177e4SLinus Torvalds loss, so if you have a 25Mbps NICStAR based ATM card you must say Y. 1811da177e4SLinus Torvalds 1821da177e4SLinus Torvaldsconfig ATM_IDT77252 1831da177e4SLinus Torvalds tristate "IDT 77252 (NICStAR II)" 1844151ce31SJan Engelhardt depends on PCI 1851da177e4SLinus Torvalds help 1861da177e4SLinus Torvalds Driver for the IDT 77252 ATM PCI chips. 1871da177e4SLinus Torvalds 1881da177e4SLinus Torvalds To compile this driver as a module, choose M here: the module will 1891da177e4SLinus Torvalds be called idt77252. 1901da177e4SLinus Torvalds 1911da177e4SLinus Torvaldsconfig ATM_IDT77252_DEBUG 1921da177e4SLinus Torvalds bool "Enable debugging messages" 1931da177e4SLinus Torvalds depends on ATM_IDT77252 1941da177e4SLinus Torvalds help 1951da177e4SLinus Torvalds Somewhat useful debugging messages are available. The choice of 1961da177e4SLinus Torvalds messages is controlled by a bitmap. This may be specified as a 1971da177e4SLinus Torvalds module argument. See the file <file:drivers/atm/idt77252.h> for 1981da177e4SLinus Torvalds the meanings of the bits in the mask. 1991da177e4SLinus Torvalds 2001da177e4SLinus Torvalds When active, these messages can have a significant impact on the 2011da177e4SLinus Torvalds speed of the driver, and the size of your syslog files! When 2021da177e4SLinus Torvalds inactive, they will have only a modest impact on performance. 2031da177e4SLinus Torvalds 2041da177e4SLinus Torvaldsconfig ATM_IDT77252_RCV_ALL 2051da177e4SLinus Torvalds bool "Receive ALL cells in raw queue" 2061da177e4SLinus Torvalds depends on ATM_IDT77252 2071da177e4SLinus Torvalds help 2081da177e4SLinus Torvalds Enable receiving of all cells on the ATM link, that do not match 2091da177e4SLinus Torvalds an open connection in the raw cell queue of the driver. Useful 2101da177e4SLinus Torvalds for debugging or special applications only, so the safe answer is N. 2111da177e4SLinus Torvalds 2121da177e4SLinus Torvaldsconfig ATM_IDT77252_USE_SUNI 2131da177e4SLinus Torvalds bool 2141da177e4SLinus Torvalds depends on ATM_IDT77252 2151da177e4SLinus Torvalds default y 2161da177e4SLinus Torvalds 2171da177e4SLinus Torvaldsconfig ATM_IA 2181da177e4SLinus Torvalds tristate "Interphase ATM PCI x575/x525/x531" 21997928f70SAlan Cox depends on PCI 220a7f7f624SMasahiro Yamada help 2211da177e4SLinus Torvalds This is a driver for the Interphase (i)ChipSAR adapter cards 2221da177e4SLinus Torvalds which include a variety of variants in term of the size of the 2231da177e4SLinus Torvalds control memory (128K-1KVC, 512K-4KVC), the size of the packet 2241da177e4SLinus Torvalds memory (128K, 512K, 1M), and the PHY type (Single/Multi mode OC3, 2251da177e4SLinus Torvalds UTP155, UTP25, DS3 and E3). Go to: 226631dd1a8SJustin P. Mattock <http://www.iphase.com/> 2271da177e4SLinus Torvalds for more info about the cards. Say Y (or M to compile as a module 2281da177e4SLinus Torvalds named iphase) here if you have one of these cards. 2291da177e4SLinus Torvalds 230*9633a0e9SJakub Kicinski See the file 231*9633a0e9SJakub Kicinski <file:Documentation/networking/device_drivers/atm/iphase.rst> 232*9633a0e9SJakub Kicinski for further details. 2331da177e4SLinus Torvalds 2341da177e4SLinus Torvaldsconfig ATM_IA_DEBUG 2351da177e4SLinus Torvalds bool "Enable debugging messages" 2361da177e4SLinus Torvalds depends on ATM_IA 237a7f7f624SMasahiro Yamada help 2381da177e4SLinus Torvalds Somewhat useful debugging messages are available. The choice of 2391da177e4SLinus Torvalds messages is controlled by a bitmap. This may be specified as a 2401da177e4SLinus Torvalds module argument (kernel command line argument as well?), changed 2411da177e4SLinus Torvalds dynamically using an ioctl (Get the debug utility, iadbg, from 2421da177e4SLinus Torvalds <ftp://ftp.iphase.com/pub/atm/pci/>). 2431da177e4SLinus Torvalds 2441da177e4SLinus Torvalds See the file <file:drivers/atm/iphase.h> for the meanings of the 2451da177e4SLinus Torvalds bits in the mask. 2461da177e4SLinus Torvalds 2471da177e4SLinus Torvalds When active, these messages can have a significant impact on the 2481da177e4SLinus Torvalds speed of the driver, and the size of your syslog files! When 2491da177e4SLinus Torvalds inactive, they will have only a modest impact on performance. 2501da177e4SLinus Torvalds 251e92481f9SChas Williamsconfig ATM_FORE200E 2521da177e4SLinus Torvalds tristate "FORE Systems 200E-series" 253e92481f9SChas Williams depends on (PCI || SBUS) 254e92481f9SChas Williams select FW_LOADER 255a7f7f624SMasahiro Yamada help 2561da177e4SLinus Torvalds This is a driver for the FORE Systems 200E-series ATM adapter 2571da177e4SLinus Torvalds cards. It simultaneously supports PCA-200E and SBA-200E models 2581da177e4SLinus Torvalds on PCI and SBUS hosts. Say Y (or M to compile as a module 2591da177e4SLinus Torvalds named fore_200e) here if you have one of these ATM adapters. 2601da177e4SLinus Torvalds 261*9633a0e9SJakub Kicinski See the file 262*9633a0e9SJakub Kicinski <file:Documentation/networking/device_drivers/atm/fore200e.rst> for 2631da177e4SLinus Torvalds further details. 2641da177e4SLinus Torvalds 2651da177e4SLinus Torvaldsconfig ATM_FORE200E_USE_TASKLET 2661da177e4SLinus Torvalds bool "Defer interrupt work to a tasklet" 267e92481f9SChas Williams depends on ATM_FORE200E 2681da177e4SLinus Torvalds default n 2691da177e4SLinus Torvalds help 2701da177e4SLinus Torvalds This defers work to be done by the interrupt handler to a 27100181fc9SMatt LaPlante tasklet instead of handling everything at interrupt time. This 2721da177e4SLinus Torvalds may improve the responsive of the host. 2731da177e4SLinus Torvalds 2741da177e4SLinus Torvaldsconfig ATM_FORE200E_TX_RETRY 2751da177e4SLinus Torvalds int "Maximum number of tx retries" 276e92481f9SChas Williams depends on ATM_FORE200E 2771da177e4SLinus Torvalds default "16" 278a7f7f624SMasahiro Yamada help 2791da177e4SLinus Torvalds Specifies the number of times the driver attempts to transmit 2801da177e4SLinus Torvalds a message before giving up, if the transmit queue of the ATM card 2811da177e4SLinus Torvalds is transiently saturated. 2821da177e4SLinus Torvalds 2831da177e4SLinus Torvalds Saturation of the transmit queue may occur only under extreme 2841da177e4SLinus Torvalds conditions, e.g. when a fast host continuously submits very small 2851da177e4SLinus Torvalds frames (<64 bytes) or raw AAL0 cells (48 bytes) to the ATM adapter. 2861da177e4SLinus Torvalds 2871da177e4SLinus Torvalds Note that under common conditions, it is unlikely that you encounter 2881da177e4SLinus Torvalds a saturation of the transmit queue, so the retry mechanism never 2891da177e4SLinus Torvalds comes into play. 2901da177e4SLinus Torvalds 2911da177e4SLinus Torvaldsconfig ATM_FORE200E_DEBUG 2921da177e4SLinus Torvalds int "Debugging level (0-3)" 293e92481f9SChas Williams depends on ATM_FORE200E 2941da177e4SLinus Torvalds default "0" 2951da177e4SLinus Torvalds help 2961da177e4SLinus Torvalds Specifies the level of debugging messages issued by the driver. 2971da177e4SLinus Torvalds The verbosity of the driver increases with the value of this 2981da177e4SLinus Torvalds parameter. 2991da177e4SLinus Torvalds 3001da177e4SLinus Torvalds When active, these messages can have a significant impact on 3011da177e4SLinus Torvalds the performances of the driver, and the size of your syslog files! 3021da177e4SLinus Torvalds Keep the debugging level to 0 during normal operations. 3031da177e4SLinus Torvalds 3041da177e4SLinus Torvaldsconfig ATM_HE 3051da177e4SLinus Torvalds tristate "ForeRunner HE Series" 3064151ce31SJan Engelhardt depends on PCI 3071da177e4SLinus Torvalds help 3081da177e4SLinus Torvalds This is a driver for the Marconi ForeRunner HE-series ATM adapter 3091da177e4SLinus Torvalds cards. It simultaneously supports the 155 and 622 versions. 3101da177e4SLinus Torvalds 3111da177e4SLinus Torvaldsconfig ATM_HE_USE_SUNI 3121da177e4SLinus Torvalds bool "Use S/UNI PHY driver" 3131da177e4SLinus Torvalds depends on ATM_HE 3141da177e4SLinus Torvalds help 3151da177e4SLinus Torvalds Support for the S/UNI-Ultra and S/UNI-622 found in the ForeRunner 3161da177e4SLinus Torvalds HE cards. This driver provides carrier detection some statistics. 3171da177e4SLinus Torvalds 3189c54004eSDavid Woodhouseconfig ATM_SOLOS 3199c54004eSDavid Woodhouse tristate "Solos ADSL2+ PCI Multiport card driver" 3209c54004eSDavid Woodhouse depends on PCI 321e1bc7eedSNathan Williams select FW_LOADER 3229c54004eSDavid Woodhouse help 3239c54004eSDavid Woodhouse Support for the Solos multiport ADSL2+ card. 3249c54004eSDavid Woodhouse 3254151ce31SJan Engelhardtendif # ATM 326