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