5b4fab24155f98105473683ff9145b46e5d3ee22
[linux-2.6.git] / drivers / atm / Kconfig
1 #
2 # ATM device configuration
3 #
4
5 menuconfig ATM_DRIVERS
6         bool "ATM drivers"
7         depends on NETDEVICES && ATM
8         default y
9
10 if ATM_DRIVERS && NETDEVICES && ATM
11
12 config ATM_DUMMY
13         tristate "Dummy ATM driver"
14         help
15           Dummy ATM driver. Useful for proxy signalling, testing,
16           and development.  If unsure, say N.
17
18 config ATM_TCP
19         tristate "ATM over TCP"
20         depends on INET
21         help
22           ATM over TCP driver. Useful mainly for development and for
23           experiments. If unsure, say N.
24
25 config ATM_LANAI
26         tristate "Efficient Networks Speedstream 3010"
27         depends on PCI && ATM
28         help
29           Supports ATM cards based on the Efficient Networks "Lanai"
30           chipset such as the Speedstream 3010 and the ENI-25p.  The
31           Speedstream 3060 is currently not supported since we don't
32           have the code to drive the on-board Alcatel DSL chipset (yet).
33
34 config ATM_ENI
35         tristate "Efficient Networks ENI155P"
36         depends on PCI
37         ---help---
38           Driver for the Efficient Networks ENI155p series and SMC ATM
39           Power155 155 Mbps ATM adapters. Both, the versions with 512KB and
40           2MB on-board RAM (Efficient calls them "C" and "S", respectively),
41           and the FPGA and the ASIC Tonga versions of the board are supported.
42           The driver works with MMF (-MF or ...F) and UTP-5 (-U5 or ...D)
43           adapters.
44
45           To compile this driver as a module, choose M here: the module will
46           be called eni.
47
48 config ATM_ENI_DEBUG
49         bool "Enable extended debugging"
50         depends on ATM_ENI
51         help
52           Extended debugging records various events and displays that list
53           when an inconsistency is detected. This mechanism is faster than
54           generally using printks, but still has some impact on performance.
55           Note that extended debugging may create certain race conditions
56           itself. Enable this ONLY if you suspect problems with the driver.
57
58 config ATM_ENI_TUNE_BURST
59         bool "Fine-tune burst settings"
60         depends on ATM_ENI
61         ---help---
62           In order to obtain good throughput, the ENI NIC can transfer
63           multiple words of data per PCI bus access cycle. Such a multi-word
64           transfer is called a burst.
65
66           The default settings for the burst sizes are suitable for most PCI
67           chipsets. However, in some cases, large bursts may overrun buffers
68           in the PCI chipset and cause data corruption. In such cases, large
69           bursts must be disabled and only (slower) small bursts can be used.
70           The burst sizes can be set independently in the send (TX) and
71           receive (RX) direction.
72
73           Note that enabling many different burst sizes in the same direction
74           may increase the cost of setting up a transfer such that the
75           resulting throughput is lower than when using only the largest
76           available burst size.
77
78           Also, sometimes larger bursts lead to lower throughput, e.g. on an
79           Intel 440FX board, a drop from 135 Mbps to 103 Mbps was observed
80           when going from 8W to 16W bursts.
81
82 config ATM_ENI_BURST_TX_16W
83         bool "Enable 16W TX bursts (discouraged)"
84         depends on ATM_ENI_TUNE_BURST
85         help
86           Burst sixteen words at once in the send direction. This may work
87           with recent PCI chipsets, but is known to fail with older chipsets.
88
89 config ATM_ENI_BURST_TX_8W
90         bool "Enable 8W TX bursts (recommended)"
91         depends on ATM_ENI_TUNE_BURST
92         help
93           Burst eight words at once in the send direction. This is the default
94           setting.
95
96 config ATM_ENI_BURST_TX_4W
97         bool "Enable 4W TX bursts (optional)"
98         depends on ATM_ENI_TUNE_BURST
99         help
100           Burst four words at once in the send direction. You may want to try
101           this if you have disabled 8W bursts. Enabling 4W if 8W is also set
102           may or may not improve throughput.
103
104 config ATM_ENI_BURST_TX_2W
105         bool "Enable 2W TX bursts (optional)"
106         depends on ATM_ENI_TUNE_BURST
107         help
108           Burst two words at once in the send direction. You may want to try
109           this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W
110           are also set may or may not improve throughput.
111
112 config ATM_ENI_BURST_RX_16W
113         bool "Enable 16W RX bursts (discouraged)"
114         depends on ATM_ENI_TUNE_BURST
115         help
116           Burst sixteen words at once in the receive direction. This may work
117           with recent PCI chipsets, but is known to fail with older chipsets.
118
119 config ATM_ENI_BURST_RX_8W
120         bool "Enable 8W RX bursts (discouraged)"
121         depends on ATM_ENI_TUNE_BURST
122         help
123           Burst eight words at once in the receive direction. This may work
124           with recent PCI chipsets, but is known to fail with older chipsets,
125           such as the Intel Neptune series.
126
127 config ATM_ENI_BURST_RX_4W
128         bool "Enable 4W RX bursts (recommended)"
129         depends on ATM_ENI_TUNE_BURST
130         help
131           Burst four words at once in the receive direction. This is the
132           default setting. Enabling 4W if 8W is also set may or may not
133           improve throughput.
134
135 config ATM_ENI_BURST_RX_2W
136         bool "Enable 2W RX bursts (optional)"
137         depends on ATM_ENI_TUNE_BURST
138         help
139           Burst two words at once in the receive direction. You may want to
140           try this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or
141           8W are also set may or may not improve throughput.
142
143 config ATM_FIRESTREAM
144         tristate "Fujitsu FireStream (FS50/FS155) "
145         depends on PCI
146         help
147           Driver for the Fujitsu FireStream 155 (MB86697) and
148           FireStream 50 (MB86695) ATM PCI chips.
149
150           To compile this driver as a module, choose M here: the module will
151           be called firestream.
152
153 config ATM_ZATM
154         tristate "ZeitNet ZN1221/ZN1225"
155         depends on PCI
156         help
157           Driver for the ZeitNet ZN1221 (MMF) and ZN1225 (UTP-5) 155 Mbps ATM
158           adapters.
159
160           To compile this driver as a module, choose M here: the module will
161           be called zatm.
162
163 config ATM_ZATM_DEBUG
164         bool "Enable extended debugging"
165         depends on ATM_ZATM
166         help
167           Extended debugging records various events and displays that list
168           when an inconsistency is detected. This mechanism is faster than
169           generally using printks, but still has some impact on performance.
170           Note that extended debugging may create certain race conditions
171           itself. Enable this ONLY if you suspect problems with the driver.
172
173 config ATM_NICSTAR
174         tristate "IDT 77201 (NICStAR) (ForeRunnerLE)"
175         depends on PCI && !64BIT
176         help
177           The NICStAR chipset family is used in a large number of ATM NICs for
178           25 and for 155 Mbps, including IDT cards and the Fore ForeRunnerLE
179           series. Say Y if you have one of those.
180
181           To compile this driver as a module, choose M here: the module will
182           be called nicstar.
183
184 config ATM_NICSTAR_USE_SUNI
185         bool "Use suni PHY driver (155Mbps)"
186         depends on ATM_NICSTAR
187         help
188           Support for the S-UNI and compatible PHYsical layer chips. These are
189           found in most 155Mbps NICStAR based ATM cards, namely in the
190           ForeRunner LE155 cards. This driver provides detection of cable~
191           removal and reinsertion and provides some statistics. This driver
192           doesn't have removal capability when compiled as a module, so if you
193           need that capability don't include S-UNI support (it's not needed to
194           make the card work).
195
196 config ATM_NICSTAR_USE_IDT77105
197         bool "Use IDT77015 PHY driver (25Mbps)"
198         depends on ATM_NICSTAR
199         help
200           Support for the PHYsical layer chip in ForeRunner LE25 cards. In
201           addition to cable removal/reinsertion detection, this driver allows
202           you to control the loopback mode of the chip via a dedicated IOCTL.
203           This driver is required for proper handling of temporary carrier
204           loss, so if you have a 25Mbps NICStAR based ATM card you must say Y.
205
206 config ATM_IDT77252
207         tristate "IDT 77252 (NICStAR II)"
208         depends on PCI
209         help
210           Driver for the IDT 77252 ATM PCI chips.
211
212           To compile this driver as a module, choose M here: the module will
213           be called idt77252.
214
215 config ATM_IDT77252_DEBUG
216         bool "Enable debugging messages"
217         depends on ATM_IDT77252
218         help
219           Somewhat useful debugging messages are available. The choice of
220           messages is controlled by a bitmap.  This may be specified as a
221           module argument.  See the file <file:drivers/atm/idt77252.h> for
222           the meanings of the bits in the mask.
223
224           When active, these messages can have a significant impact on the
225           speed of the driver, and the size of your syslog files! When
226           inactive, they will have only a modest impact on performance.
227
228 config ATM_IDT77252_RCV_ALL
229         bool "Receive ALL cells in raw queue"
230         depends on ATM_IDT77252
231         help
232           Enable receiving of all cells on the ATM link, that do not match
233           an open connection in the raw cell queue of the driver.  Useful
234           for debugging or special applications only, so the safe answer is N.
235
236 config ATM_IDT77252_USE_SUNI
237         bool
238         depends on ATM_IDT77252
239         default y
240
241 config ATM_AMBASSADOR
242         tristate "Madge Ambassador (Collage PCI 155 Server)"
243         depends on PCI
244         select BITREVERSE
245         help
246           This is a driver for ATMizer based ATM card produced by Madge
247           Networks Ltd. Say Y (or M to compile as a module named ambassador)
248           here if you have one of these cards.
249
250 config ATM_AMBASSADOR_DEBUG
251         bool "Enable debugging messages"
252         depends on ATM_AMBASSADOR
253         ---help---
254           Somewhat useful debugging messages are available. The choice of
255           messages is controlled by a bitmap.  This may be specified as a
256           module argument (kernel command line argument as well?), changed
257           dynamically using an ioctl (not yet) or changed by sending the
258           string "Dxxxx" to VCI 1023 (where x is a hex digit).  See the file
259           <file:drivers/atm/ambassador.h> for the meanings of the bits in the
260           mask.
261
262           When active, these messages can have a significant impact on the
263           speed of the driver, and the size of your syslog files! When
264           inactive, they will have only a modest impact on performance.
265
266 config ATM_HORIZON
267         tristate "Madge Horizon [Ultra] (Collage PCI 25 and Collage PCI 155 Client)"
268         depends on PCI
269         help
270           This is a driver for the Horizon chipset ATM adapter cards once
271           produced by Madge Networks Ltd. Say Y (or M to compile as a module
272           named horizon) here if you have one of these cards.
273
274 config ATM_HORIZON_DEBUG
275         bool "Enable debugging messages"
276         depends on ATM_HORIZON
277         ---help---
278           Somewhat useful debugging messages are available. The choice of
279           messages is controlled by a bitmap.  This may be specified as a
280           module argument (kernel command line argument as well?), changed
281           dynamically using an ioctl (not yet) or changed by sending the
282           string "Dxxxx" to VCI 1023 (where x is a hex digit).  See the file
283           <file:drivers/atm/horizon.h> for the meanings of the bits in the
284           mask.
285
286           When active, these messages can have a significant impact on the
287           speed of the driver, and the size of your syslog files! When
288           inactive, they will have only a modest impact on performance.
289
290 config ATM_IA
291         tristate "Interphase ATM PCI x575/x525/x531"
292         depends on PCI && !64BIT
293         ---help---
294           This is a driver for the Interphase (i)ChipSAR adapter cards
295           which include a variety of variants in term of the size of the
296           control memory (128K-1KVC, 512K-4KVC), the size of the packet
297           memory (128K, 512K, 1M), and the PHY type (Single/Multi mode OC3,
298           UTP155, UTP25, DS3 and E3). Go to:
299                 <http://www.iphase.com/products/ClassSheet.cfm?ClassID=ATM>
300           for more info about the cards. Say Y (or M to compile as a module
301           named iphase) here if you have one of these cards.
302
303           See the file <file:Documentation/networking/iphase.txt> for further
304           details.
305
306 config ATM_IA_DEBUG
307         bool "Enable debugging messages"
308         depends on ATM_IA
309         ---help---
310           Somewhat useful debugging messages are available. The choice of
311           messages is controlled by a bitmap. This may be specified as a
312           module argument (kernel command line argument as well?), changed
313           dynamically using an ioctl (Get the debug utility, iadbg, from
314           <ftp://ftp.iphase.com/pub/atm/pci/>).
315
316           See the file <file:drivers/atm/iphase.h> for the meanings of the
317           bits in the mask.
318
319           When active, these messages can have a significant impact on the
320           speed of the driver, and the size of your syslog files! When
321           inactive, they will have only a modest impact on performance.
322
323 config ATM_FORE200E_MAYBE
324         tristate "FORE Systems 200E-series"
325         depends on PCI || SBUS
326         ---help---
327           This is a driver for the FORE Systems 200E-series ATM adapter
328           cards. It simultaneously supports PCA-200E and SBA-200E models
329           on PCI and SBUS hosts. Say Y (or M to compile as a module
330           named fore_200e) here if you have one of these ATM adapters.
331
332           Note that the driver will actually be compiled only if you
333           additionally enable the support for PCA-200E and/or SBA-200E
334           cards.
335
336           See the file <file:Documentation/networking/fore200e.txt> for
337           further details.
338
339 config ATM_FORE200E_PCA
340         bool "PCA-200E support"
341         depends on ATM_FORE200E_MAYBE && PCI
342         help
343           Say Y here if you want your PCA-200E cards to be probed.
344
345 config ATM_FORE200E_PCA_DEFAULT_FW
346         bool "Use default PCA-200E firmware (normally enabled)"
347         depends on ATM_FORE200E_PCA
348         help
349           Use the default PCA-200E firmware data shipped with the driver.
350
351           Normal users do not have to deal with the firmware stuff, so
352           they should say Y here.
353
354 config ATM_FORE200E_PCA_FW
355         string "Pathname of user-supplied binary firmware"
356         depends on ATM_FORE200E_PCA && !ATM_FORE200E_PCA_DEFAULT_FW
357         default ""
358         help
359           This defines the pathname of an alternative PCA-200E binary
360           firmware image supplied by the user. This pathname may be
361           absolute or relative to the drivers/atm directory.
362
363           The driver comes with an adequate firmware image, so normal users do
364           not have to supply an alternative one. They just say Y to "Use
365           default PCA-200E firmware" instead.
366
367 config ATM_FORE200E_SBA
368         bool "SBA-200E support"
369         depends on ATM_FORE200E_MAYBE && SBUS
370         help
371           Say Y here if you want your SBA-200E cards to be probed.
372
373 config ATM_FORE200E_SBA_DEFAULT_FW
374         bool "Use default SBA-200E firmware (normally enabled)"
375         depends on ATM_FORE200E_SBA
376         help
377           Use the default SBA-200E firmware data shipped with the driver.
378
379           Normal users do not have to deal with the firmware stuff, so
380           they should say Y here.
381
382 config ATM_FORE200E_SBA_FW
383         string "Pathname of user-supplied binary firmware"
384         depends on ATM_FORE200E_SBA && !ATM_FORE200E_SBA_DEFAULT_FW
385         default ""
386         help
387           This defines the pathname of an alternative SBA-200E binary
388           firmware image supplied by the user. This pathname may be
389           absolute or relative to the drivers/atm directory.
390
391           The driver comes with an adequate firmware image, so normal users do
392           not have to supply an alternative one. They just say Y to "Use
393           default SBA-200E firmware", above.
394
395 config ATM_FORE200E_USE_TASKLET
396         bool "Defer interrupt work to a tasklet"
397         depends on (PCI || SBUS) && (ATM_FORE200E_PCA || ATM_FORE200E_SBA)
398         default n
399         help
400           This defers work to be done by the interrupt handler to a
401           tasklet instead of handling everything at interrupt time.  This
402           may improve the responsive of the host.
403
404 config ATM_FORE200E_TX_RETRY
405         int "Maximum number of tx retries"
406         depends on (PCI || SBUS) && (ATM_FORE200E_PCA || ATM_FORE200E_SBA)
407         default "16"
408         ---help---
409           Specifies the number of times the driver attempts to transmit
410           a message before giving up, if the transmit queue of the ATM card
411           is transiently saturated.
412
413           Saturation of the transmit queue may occur only under extreme
414           conditions, e.g. when a fast host continuously submits very small
415           frames (<64 bytes) or raw AAL0 cells (48 bytes) to the ATM adapter.
416
417           Note that under common conditions, it is unlikely that you encounter
418           a saturation of the transmit queue, so the retry mechanism never
419           comes into play.
420
421 config ATM_FORE200E_DEBUG
422         int "Debugging level (0-3)"
423         depends on (PCI || SBUS) && (ATM_FORE200E_PCA || ATM_FORE200E_SBA)
424         default "0"
425         help
426           Specifies the level of debugging messages issued by the driver.
427           The verbosity of the driver increases with the value of this
428           parameter.
429
430           When active, these messages can have a significant impact on
431           the performances of the driver, and the size of your syslog files!
432           Keep the debugging level to 0 during normal operations.
433
434 config ATM_FORE200E
435         tristate
436         depends on (PCI || SBUS) && (ATM_FORE200E_PCA || ATM_FORE200E_SBA)
437         default m if ATM_FORE200E_MAYBE!=y
438         default y if ATM_FORE200E_MAYBE=y
439
440 config ATM_HE
441         tristate "ForeRunner HE Series"
442         depends on PCI
443         help
444           This is a driver for the Marconi ForeRunner HE-series ATM adapter
445           cards. It simultaneously supports the 155 and 622 versions.
446
447 config ATM_HE_USE_SUNI
448         bool "Use S/UNI PHY driver"
449         depends on ATM_HE
450         help
451           Support for the S/UNI-Ultra and S/UNI-622 found in the ForeRunner
452           HE cards.  This driver provides carrier detection some statistics.
453
454 endif # ATM