Linux 6.10-rc4
[sfrench/cifs-2.6.git] / drivers / atm / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 #
3 # ATM device configuration
4 #
5
6 menuconfig ATM_DRIVERS
7         bool "ATM drivers"
8         depends on NETDEVICES && ATM
9         default y
10         help
11           Say Y here to get to see options for Asynchronous Transfer Mode
12           device drivers. This option alone does not add any kernel code.
13
14           If you say N, all options in this submenu will be skipped and disabled.
15
16 if ATM_DRIVERS && NETDEVICES && ATM
17
18 config ATM_DUMMY
19         tristate "Dummy ATM driver"
20         help
21           Dummy ATM driver. Useful for proxy signalling, testing,
22           and development.  If unsure, say N.
23
24 config ATM_TCP
25         tristate "ATM over TCP"
26         depends on INET
27         help
28           ATM over TCP driver. Useful mainly for development and for
29           experiments. If unsure, say N.
30
31 config ATM_LANAI
32         tristate "Efficient Networks Speedstream 3010"
33         depends on PCI && ATM
34         help
35           Supports ATM cards based on the Efficient Networks "Lanai"
36           chipset such as the Speedstream 3010 and the ENI-25p.  The
37           Speedstream 3060 is currently not supported since we don't
38           have the code to drive the on-board Alcatel DSL chipset (yet).
39
40 config ATM_ENI
41         tristate "Efficient Networks ENI155P"
42         depends on PCI
43         help
44           Driver for the Efficient Networks ENI155p series and SMC ATM
45           Power155 155 Mbps ATM adapters. Both, the versions with 512KB and
46           2MB on-board RAM (Efficient calls them "C" and "S", respectively),
47           and the FPGA and the ASIC Tonga versions of the board are supported.
48           The driver works with MMF (-MF or ...F) and UTP-5 (-U5 or ...D)
49           adapters.
50
51           To compile this driver as a module, choose M here: the module will
52           be called eni.
53
54 config ATM_ENI_DEBUG
55         bool "Enable extended debugging"
56         depends on ATM_ENI
57         help
58           Extended debugging records various events and displays that list
59           when an inconsistency is detected. This mechanism is faster than
60           generally using printks, but still has some impact on performance.
61           Note that extended debugging may create certain race conditions
62           itself. Enable this ONLY if you suspect problems with the driver.
63
64 config ATM_ENI_TUNE_BURST
65         bool "Fine-tune burst settings"
66         depends on ATM_ENI
67         help
68           In order to obtain good throughput, the ENI NIC can transfer
69           multiple words of data per PCI bus access cycle. Such a multi-word
70           transfer is called a burst.
71
72           The default settings for the burst sizes are suitable for most PCI
73           chipsets. However, in some cases, large bursts may overrun buffers
74           in the PCI chipset and cause data corruption. In such cases, large
75           bursts must be disabled and only (slower) small bursts can be used.
76           The burst sizes can be set independently in the send (TX) and
77           receive (RX) direction.
78
79           Note that enabling many different burst sizes in the same direction
80           may increase the cost of setting up a transfer such that the
81           resulting throughput is lower than when using only the largest
82           available burst size.
83
84           Also, sometimes larger bursts lead to lower throughput, e.g. on an
85           Intel 440FX board, a drop from 135 Mbps to 103 Mbps was observed
86           when going from 8W to 16W bursts.
87
88 config ATM_ENI_BURST_TX_16W
89         bool "Enable 16W TX bursts (discouraged)"
90         depends on ATM_ENI_TUNE_BURST
91         help
92           Burst sixteen words at once in the send direction. This may work
93           with recent PCI chipsets, but is known to fail with older chipsets.
94
95 config ATM_ENI_BURST_TX_8W
96         bool "Enable 8W TX bursts (recommended)"
97         depends on ATM_ENI_TUNE_BURST
98         help
99           Burst eight words at once in the send direction. This is the default
100           setting.
101
102 config ATM_ENI_BURST_TX_4W
103         bool "Enable 4W TX bursts (optional)"
104         depends on ATM_ENI_TUNE_BURST
105         help
106           Burst four words at once in the send direction. You may want to try
107           this if you have disabled 8W bursts. Enabling 4W if 8W is also set
108           may or may not improve throughput.
109
110 config ATM_ENI_BURST_TX_2W
111         bool "Enable 2W TX bursts (optional)"
112         depends on ATM_ENI_TUNE_BURST
113         help
114           Burst two words at once in the send direction. You may want to try
115           this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W
116           are also set may or may not improve throughput.
117
118 config ATM_ENI_BURST_RX_16W
119         bool "Enable 16W RX bursts (discouraged)"
120         depends on ATM_ENI_TUNE_BURST
121         help
122           Burst sixteen words at once in the receive direction. This may work
123           with recent PCI chipsets, but is known to fail with older chipsets.
124
125 config ATM_ENI_BURST_RX_8W
126         bool "Enable 8W RX bursts (discouraged)"
127         depends on ATM_ENI_TUNE_BURST
128         help
129           Burst eight words at once in the receive direction. This may work
130           with recent PCI chipsets, but is known to fail with older chipsets,
131           such as the Intel Neptune series.
132
133 config ATM_ENI_BURST_RX_4W
134         bool "Enable 4W RX bursts (recommended)"
135         depends on ATM_ENI_TUNE_BURST
136         help
137           Burst four words at once in the receive direction. This is the
138           default setting. Enabling 4W if 8W is also set may or may not
139           improve throughput.
140
141 config ATM_ENI_BURST_RX_2W
142         bool "Enable 2W RX bursts (optional)"
143         depends on ATM_ENI_TUNE_BURST
144         help
145           Burst two words at once in the receive direction. You may want to
146           try this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or
147           8W are also set may or may not improve throughput.
148
149 config ATM_NICSTAR
150         tristate "IDT 77201 (NICStAR) (ForeRunnerLE)"
151         depends on PCI
152         help
153           The NICStAR chipset family is used in a large number of ATM NICs for
154           25 and for 155 Mbps, including IDT cards and the Fore ForeRunnerLE
155           series. Say Y if you have one of those.
156
157           To compile this driver as a module, choose M here: the module will
158           be called nicstar.
159
160 config ATM_NICSTAR_USE_SUNI
161         bool "Use suni PHY driver (155Mbps)"
162         depends on ATM_NICSTAR
163         help
164           Support for the S-UNI and compatible PHYsical layer chips. These are
165           found in most 155Mbps NICStAR based ATM cards, namely in the
166           ForeRunner LE155 cards. This driver provides detection of cable~
167           removal and reinsertion and provides some statistics. This driver
168           doesn't have removal capability when compiled as a module, so if you
169           need that capability don't include S-UNI support (it's not needed to
170           make the card work).
171
172 config ATM_NICSTAR_USE_IDT77105
173         bool "Use IDT77105 PHY driver (25Mbps)"
174         depends on ATM_NICSTAR
175         help
176           Support for the PHYsical layer chip in ForeRunner LE25 cards. In
177           addition to cable removal/reinsertion detection, this driver allows
178           you to control the loopback mode of the chip via a dedicated IOCTL.
179           This driver is required for proper handling of temporary carrier
180           loss, so if you have a 25Mbps NICStAR based ATM card you must say Y.
181
182 config ATM_IDT77252
183         tristate "IDT 77252 (NICStAR II)"
184         depends on PCI
185         help
186           Driver for the IDT 77252 ATM PCI chips.
187
188           To compile this driver as a module, choose M here: the module will
189           be called idt77252.
190
191 config ATM_IDT77252_DEBUG
192         bool "Enable debugging messages"
193         depends on ATM_IDT77252
194         help
195           Somewhat useful debugging messages are available. The choice of
196           messages is controlled by a bitmap.  This may be specified as a
197           module argument.  See the file <file:drivers/atm/idt77252.h> for
198           the meanings of the bits in the mask.
199
200           When active, these messages can have a significant impact on the
201           speed of the driver, and the size of your syslog files! When
202           inactive, they will have only a modest impact on performance.
203
204 config ATM_IDT77252_RCV_ALL
205         bool "Receive ALL cells in raw queue"
206         depends on ATM_IDT77252
207         help
208           Enable receiving of all cells on the ATM link, that do not match
209           an open connection in the raw cell queue of the driver.  Useful
210           for debugging or special applications only, so the safe answer is N.
211
212 config ATM_IDT77252_USE_SUNI
213         bool
214         depends on ATM_IDT77252
215         default y
216
217 config ATM_IA
218         tristate "Interphase ATM PCI x575/x525/x531"
219         depends on PCI
220         help
221           This is a driver for the Interphase (i)ChipSAR adapter cards
222           which include a variety of variants in term of the size of the
223           control memory (128K-1KVC, 512K-4KVC), the size of the packet
224           memory (128K, 512K, 1M), and the PHY type (Single/Multi mode OC3,
225           UTP155, UTP25, DS3 and E3). Go to:
226                 <http://www.iphase.com/>
227           for more info about the cards. Say Y (or M to compile as a module
228           named iphase) here if you have one of these cards.
229
230           See the file
231           <file:Documentation/networking/device_drivers/atm/iphase.rst>
232           for further details.
233
234 config ATM_IA_DEBUG
235         bool "Enable debugging messages"
236         depends on ATM_IA
237         help
238           Somewhat useful debugging messages are available. The choice of
239           messages is controlled by a bitmap. This may be specified as a
240           module argument (kernel command line argument as well?), changed
241           dynamically using an ioctl (Get the debug utility, iadbg, from
242           <ftp://ftp.iphase.com/pub/atm/pci/>).
243
244           See the file <file:drivers/atm/iphase.h> for the meanings of the
245           bits in the mask.
246
247           When active, these messages can have a significant impact on the
248           speed of the driver, and the size of your syslog files! When
249           inactive, they will have only a modest impact on performance.
250
251 config ATM_FORE200E
252         tristate "FORE Systems 200E-series"
253         depends on (PCI || SBUS)
254         select FW_LOADER
255         help
256           This is a driver for the FORE Systems 200E-series ATM adapter
257           cards. It simultaneously supports PCA-200E and SBA-200E models
258           on PCI and SBUS hosts. Say Y (or M to compile as a module
259           named fore_200e) here if you have one of these ATM adapters.
260
261           See the file
262           <file:Documentation/networking/device_drivers/atm/fore200e.rst> for
263           further details.
264
265 config ATM_FORE200E_USE_TASKLET
266         bool "Defer interrupt work to a tasklet"
267         depends on ATM_FORE200E
268         default n
269         help
270           This defers work to be done by the interrupt handler to a
271           tasklet instead of handling everything at interrupt time.  This
272           may improve the responsive of the host.
273
274 config ATM_FORE200E_TX_RETRY
275         int "Maximum number of tx retries"
276         depends on ATM_FORE200E
277         default "16"
278         help
279           Specifies the number of times the driver attempts to transmit
280           a message before giving up, if the transmit queue of the ATM card
281           is transiently saturated.
282
283           Saturation of the transmit queue may occur only under extreme
284           conditions, e.g. when a fast host continuously submits very small
285           frames (<64 bytes) or raw AAL0 cells (48 bytes) to the ATM adapter.
286
287           Note that under common conditions, it is unlikely that you encounter
288           a saturation of the transmit queue, so the retry mechanism never
289           comes into play.
290
291 config ATM_FORE200E_DEBUG
292         int "Debugging level (0-3)"
293         depends on ATM_FORE200E
294         default "0"
295         help
296           Specifies the level of debugging messages issued by the driver.
297           The verbosity of the driver increases with the value of this
298           parameter.
299
300           When active, these messages can have a significant impact on
301           the performances of the driver, and the size of your syslog files!
302           Keep the debugging level to 0 during normal operations.
303
304 config ATM_HE
305         tristate "ForeRunner HE Series"
306         depends on PCI
307         help
308           This is a driver for the Marconi ForeRunner HE-series ATM adapter
309           cards. It simultaneously supports the 155 and 622 versions.
310
311 config ATM_HE_USE_SUNI
312         bool "Use S/UNI PHY driver"
313         depends on ATM_HE
314         help
315           Support for the S/UNI-Ultra and S/UNI-622 found in the ForeRunner
316           HE cards.  This driver provides carrier detection some statistics.
317
318 config ATM_SOLOS
319         tristate "Solos ADSL2+ PCI Multiport card driver"
320         depends on PCI
321         select FW_LOADER
322         help
323           Support for the Solos multiport ADSL2+ card.
324
325 endif # ATM