1#
2# ATM device configuration
3#
4
5menuconfig ATM_DRIVERS
6	bool "ATM drivers"
7	depends on NETDEVICES && ATM
8	default y
9
10if ATM_DRIVERS && NETDEVICES && ATM
11
12config 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
18config 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
25config 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
34config 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
48config 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
58config 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
82config 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
89config 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
96config 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
104config 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
112config 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
119config 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
127config 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
135config 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
143config 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
153config 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
163config 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
173config 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
184config 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
196config 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
206config 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
215config 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
228config 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
236config ATM_IDT77252_USE_SUNI
237	bool
238	depends on ATM_IDT77252
239	default y
240
241config 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
250config 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
266config 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
274config 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
290config 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
306config 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
323config 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
339config 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
345config 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
354config 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
367config 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
373config 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
382config 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
395config 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
404config 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
421config 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
434config 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
440config 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
447config 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
454endif # ATM
455