xref: /linux/drivers/atm/Kconfig (revision a997157e42e3119b13c644549a3d8381a1d825d6)
1# SPDX-License-Identifier: GPL-2.0
2#
3# ATM device configuration
4#
5
6menuconfig 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
16if ATM_DRIVERS && NETDEVICES && ATM
17
18config 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
24config 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
31config 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
40config 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
54config 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
64config 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
88config 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
95config 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
102config 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
110config 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
118config 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
125config 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
133config 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
141config 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
149config ATM_FIRESTREAM
150	tristate "Fujitsu FireStream (FS50/FS155) "
151	depends on PCI && VIRT_TO_BUS
152	help
153	  Driver for the Fujitsu FireStream 155 (MB86697) and
154	  FireStream 50 (MB86695) ATM PCI chips.
155
156	  To compile this driver as a module, choose M here: the module will
157	  be called firestream.
158
159config ATM_ZATM
160	tristate "ZeitNet ZN1221/ZN1225"
161	depends on PCI && VIRT_TO_BUS
162	help
163	  Driver for the ZeitNet ZN1221 (MMF) and ZN1225 (UTP-5) 155 Mbps ATM
164	  adapters.
165
166	  To compile this driver as a module, choose M here: the module will
167	  be called zatm.
168
169config ATM_ZATM_DEBUG
170	bool "Enable extended debugging"
171	depends on ATM_ZATM
172	help
173	  Extended debugging records various events and displays that list
174	  when an inconsistency is detected. This mechanism is faster than
175	  generally using printks, but still has some impact on performance.
176	  Note that extended debugging may create certain race conditions
177	  itself. Enable this ONLY if you suspect problems with the driver.
178
179config ATM_NICSTAR
180	tristate "IDT 77201 (NICStAR) (ForeRunnerLE)"
181	depends on PCI
182	help
183	  The NICStAR chipset family is used in a large number of ATM NICs for
184	  25 and for 155 Mbps, including IDT cards and the Fore ForeRunnerLE
185	  series. Say Y if you have one of those.
186
187	  To compile this driver as a module, choose M here: the module will
188	  be called nicstar.
189
190config ATM_NICSTAR_USE_SUNI
191	bool "Use suni PHY driver (155Mbps)"
192	depends on ATM_NICSTAR
193	help
194	  Support for the S-UNI and compatible PHYsical layer chips. These are
195	  found in most 155Mbps NICStAR based ATM cards, namely in the
196	  ForeRunner LE155 cards. This driver provides detection of cable~
197	  removal and reinsertion and provides some statistics. This driver
198	  doesn't have removal capability when compiled as a module, so if you
199	  need that capability don't include S-UNI support (it's not needed to
200	  make the card work).
201
202config ATM_NICSTAR_USE_IDT77105
203	bool "Use IDT77105 PHY driver (25Mbps)"
204	depends on ATM_NICSTAR
205	help
206	  Support for the PHYsical layer chip in ForeRunner LE25 cards. In
207	  addition to cable removal/reinsertion detection, this driver allows
208	  you to control the loopback mode of the chip via a dedicated IOCTL.
209	  This driver is required for proper handling of temporary carrier
210	  loss, so if you have a 25Mbps NICStAR based ATM card you must say Y.
211
212config ATM_IDT77252
213	tristate "IDT 77252 (NICStAR II)"
214	depends on PCI
215	help
216	  Driver for the IDT 77252 ATM PCI chips.
217
218	  To compile this driver as a module, choose M here: the module will
219	  be called idt77252.
220
221config ATM_IDT77252_DEBUG
222	bool "Enable debugging messages"
223	depends on ATM_IDT77252
224	help
225	  Somewhat useful debugging messages are available. The choice of
226	  messages is controlled by a bitmap.  This may be specified as a
227	  module argument.  See the file <file:drivers/atm/idt77252.h> for
228	  the meanings of the bits in the mask.
229
230	  When active, these messages can have a significant impact on the
231	  speed of the driver, and the size of your syslog files! When
232	  inactive, they will have only a modest impact on performance.
233
234config ATM_IDT77252_RCV_ALL
235	bool "Receive ALL cells in raw queue"
236	depends on ATM_IDT77252
237	help
238	  Enable receiving of all cells on the ATM link, that do not match
239	  an open connection in the raw cell queue of the driver.  Useful
240	  for debugging or special applications only, so the safe answer is N.
241
242config ATM_IDT77252_USE_SUNI
243	bool
244	depends on ATM_IDT77252
245	default y
246
247config ATM_HORIZON
248	tristate "Madge Horizon [Ultra] (Collage PCI 25 and Collage PCI 155 Client)"
249	depends on PCI && VIRT_TO_BUS
250	help
251	  This is a driver for the Horizon chipset ATM adapter cards once
252	  produced by Madge Networks Ltd. Say Y (or M to compile as a module
253	  named horizon) here if you have one of these cards.
254
255config ATM_HORIZON_DEBUG
256	bool "Enable debugging messages"
257	depends on ATM_HORIZON
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/horizon.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_IA
272	tristate "Interphase ATM PCI x575/x525/x531"
273	depends on PCI
274	help
275	  This is a driver for the Interphase (i)ChipSAR adapter cards
276	  which include a variety of variants in term of the size of the
277	  control memory (128K-1KVC, 512K-4KVC), the size of the packet
278	  memory (128K, 512K, 1M), and the PHY type (Single/Multi mode OC3,
279	  UTP155, UTP25, DS3 and E3). Go to:
280	  	<http://www.iphase.com/>
281	  for more info about the cards. Say Y (or M to compile as a module
282	  named iphase) here if you have one of these cards.
283
284	  See the file
285	  <file:Documentation/networking/device_drivers/atm/iphase.rst>
286	  for further details.
287
288config ATM_IA_DEBUG
289	bool "Enable debugging messages"
290	depends on ATM_IA
291	help
292	  Somewhat useful debugging messages are available. The choice of
293	  messages is controlled by a bitmap. This may be specified as a
294	  module argument (kernel command line argument as well?), changed
295	  dynamically using an ioctl (Get the debug utility, iadbg, from
296	  <ftp://ftp.iphase.com/pub/atm/pci/>).
297
298	  See the file <file:drivers/atm/iphase.h> for the meanings of the
299	  bits in the mask.
300
301	  When active, these messages can have a significant impact on the
302	  speed of the driver, and the size of your syslog files! When
303	  inactive, they will have only a modest impact on performance.
304
305config ATM_FORE200E
306	tristate "FORE Systems 200E-series"
307	depends on (PCI || SBUS)
308	select FW_LOADER
309	help
310	  This is a driver for the FORE Systems 200E-series ATM adapter
311	  cards. It simultaneously supports PCA-200E and SBA-200E models
312	  on PCI and SBUS hosts. Say Y (or M to compile as a module
313	  named fore_200e) here if you have one of these ATM adapters.
314
315	  See the file
316	  <file:Documentation/networking/device_drivers/atm/fore200e.rst> for
317	  further details.
318
319config ATM_FORE200E_USE_TASKLET
320	bool "Defer interrupt work to a tasklet"
321	depends on ATM_FORE200E
322	default n
323	help
324	  This defers work to be done by the interrupt handler to a
325	  tasklet instead of handling everything at interrupt time.  This
326	  may improve the responsive of the host.
327
328config ATM_FORE200E_TX_RETRY
329	int "Maximum number of tx retries"
330	depends on ATM_FORE200E
331	default "16"
332	help
333	  Specifies the number of times the driver attempts to transmit
334	  a message before giving up, if the transmit queue of the ATM card
335	  is transiently saturated.
336
337	  Saturation of the transmit queue may occur only under extreme
338	  conditions, e.g. when a fast host continuously submits very small
339	  frames (<64 bytes) or raw AAL0 cells (48 bytes) to the ATM adapter.
340
341	  Note that under common conditions, it is unlikely that you encounter
342	  a saturation of the transmit queue, so the retry mechanism never
343	  comes into play.
344
345config ATM_FORE200E_DEBUG
346	int "Debugging level (0-3)"
347	depends on ATM_FORE200E
348	default "0"
349	help
350	  Specifies the level of debugging messages issued by the driver.
351	  The verbosity of the driver increases with the value of this
352	  parameter.
353
354	  When active, these messages can have a significant impact on
355	  the performances of the driver, and the size of your syslog files!
356	  Keep the debugging level to 0 during normal operations.
357
358config ATM_HE
359	tristate "ForeRunner HE Series"
360	depends on PCI
361	help
362	  This is a driver for the Marconi ForeRunner HE-series ATM adapter
363	  cards. It simultaneously supports the 155 and 622 versions.
364
365config ATM_HE_USE_SUNI
366	bool "Use S/UNI PHY driver"
367	depends on ATM_HE
368	help
369	  Support for the S/UNI-Ultra and S/UNI-622 found in the ForeRunner
370	  HE cards.  This driver provides carrier detection some statistics.
371
372config ATM_SOLOS
373	tristate "Solos ADSL2+ PCI Multiport card driver"
374	depends on PCI
375	select FW_LOADER
376	help
377	  Support for the Solos multiport ADSL2+ card.
378
379endif # ATM
380