xref: /openbmc/linux/drivers/atm/Kconfig (revision 052e1f01)
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
2309633a0e9SJakub Kicinski	  See the file
2319633a0e9SJakub Kicinski	  <file:Documentation/networking/device_drivers/atm/iphase.rst>
2329633a0e9SJakub 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
2619633a0e9SJakub Kicinski	  See the file
2629633a0e9SJakub 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