xref: /openbmc/linux/drivers/net/Kconfig (revision d7058a79c56abf58bb33a5c2eee2f7cde6f5ec36)
1#
2# Network device configuration
3#
4
5menuconfig NETDEVICES
6	default y if UML
7	depends on NET
8	bool "Network device support"
9	---help---
10	  You can say N here if you don't intend to connect your Linux box to
11	  any other computer at all.
12
13	  You'll have to say Y if your computer contains a network card that
14	  you want to use under Linux. If you are going to run SLIP or PPP over
15	  telephone line or null modem cable you need say Y here. Connecting
16	  two machines with parallel ports using PLIP needs this, as well as
17	  AX.25/KISS for sending Internet traffic over amateur radio links.
18
19	  See also "The Linux Network Administrator's Guide" by Olaf Kirch and
20	  Terry Dawson. Available at <http://www.tldp.org/guides.html>.
21
22	  If unsure, say Y.
23
24# All the following symbols are dependent on NETDEVICES - do not repeat
25# that for each of the symbols.
26if NETDEVICES
27
28config IFB
29	tristate "Intermediate Functional Block support"
30	depends on NET_CLS_ACT
31	---help---
32	  This is an intermediate driver that allows sharing of
33	  resources.
34	  To compile this driver as a module, choose M here: the module
35	  will be called ifb.  If you want to use more than one ifb
36	  device at a time, you need to compile this driver as a module.
37	  Instead of 'ifb', the devices will then be called 'ifb0',
38	  'ifb1' etc.
39	  Look at the iproute2 documentation directory for usage etc
40
41config DUMMY
42	tristate "Dummy net driver support"
43	---help---
44	  This is essentially a bit-bucket device (i.e. traffic you send to
45	  this device is consigned into oblivion) with a configurable IP
46	  address. It is most commonly used in order to make your currently
47	  inactive SLIP address seem like a real address for local programs.
48	  If you use SLIP or PPP, you might want to say Y here. Since this
49	  thing often comes in handy, the default is Y. It won't enlarge your
50	  kernel either. What a deal. Read about it in the Network
51	  Administrator's Guide, available from
52	  <http://www.tldp.org/docs.html#guide>.
53
54	  To compile this driver as a module, choose M here: the module
55	  will be called dummy.  If you want to use more than one dummy
56	  device at a time, you need to compile this driver as a module.
57	  Instead of 'dummy', the devices will then be called 'dummy0',
58	  'dummy1' etc.
59
60config BONDING
61	tristate "Bonding driver support"
62	depends on INET
63	depends on IPV6 || IPV6=n
64	---help---
65	  Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet
66	  Channels together. This is called 'Etherchannel' by Cisco,
67	  'Trunking' by Sun, 802.3ad by the IEEE, and 'Bonding' in Linux.
68
69	  The driver supports multiple bonding modes to allow for both high
70	  performance and high availability operation.
71
72	  Refer to <file:Documentation/networking/bonding.txt> for more
73	  information.
74
75	  To compile this driver as a module, choose M here: the module
76	  will be called bonding.
77
78config MACVLAN
79	tristate "MAC-VLAN support (EXPERIMENTAL)"
80	depends on EXPERIMENTAL
81	---help---
82	  This allows one to create virtual interfaces that map packets to
83	  or from specific MAC addresses to a particular interface.
84
85	  Macvlan devices can be added using the "ip" command from the
86	  iproute2 package starting with the iproute2-2.6.23 release:
87
88	  "ip link add link <real dev> [ address MAC ] [ NAME ] type macvlan"
89
90	  To compile this driver as a module, choose M here: the module
91	  will be called macvlan.
92
93config MACVTAP
94	tristate "MAC-VLAN based tap driver (EXPERIMENTAL)"
95	depends on MACVLAN
96	help
97	  This adds a specialized tap character device driver that is based
98	  on the MAC-VLAN network interface, called macvtap. A macvtap device
99	  can be added in the same way as a macvlan device, using 'type
100	  macvlan', and then be accessed through the tap user space interface.
101
102	  To compile this driver as a module, choose M here: the module
103	  will be called macvtap.
104
105config EQUALIZER
106	tristate "EQL (serial line load balancing) support"
107	---help---
108	  If you have two serial connections to some other computer (this
109	  usually requires two modems and two telephone lines) and you use
110	  SLIP (the protocol for sending Internet traffic over telephone
111	  lines) or PPP (a better SLIP) on them, you can make them behave like
112	  one double speed connection using this driver.  Naturally, this has
113	  to be supported at the other end as well, either with a similar EQL
114	  Linux driver or with a Livingston Portmaster 2e.
115
116	  Say Y if you want this and read
117	  <file:Documentation/networking/eql.txt>.  You may also want to read
118	  section 6.2 of the NET-3-HOWTO, available from
119	  <http://www.tldp.org/docs.html#howto>.
120
121	  To compile this driver as a module, choose M here: the module
122	  will be called eql.  If unsure, say N.
123
124config TUN
125	tristate "Universal TUN/TAP device driver support"
126	select CRC32
127	---help---
128	  TUN/TAP provides packet reception and transmission for user space
129	  programs.  It can be viewed as a simple Point-to-Point or Ethernet
130	  device, which instead of receiving packets from a physical media,
131	  receives them from user space program and instead of sending packets
132	  via physical media writes them to the user space program.
133
134	  When a program opens /dev/net/tun, driver creates and registers
135	  corresponding net device tunX or tapX.  After a program closed above
136	  devices, driver will automatically delete tunXX or tapXX device and
137	  all routes corresponding to it.
138
139	  Please read <file:Documentation/networking/tuntap.txt> for more
140	  information.
141
142	  To compile this driver as a module, choose M here: the module
143	  will be called tun.
144
145	  If you don't know what to use this for, you don't need it.
146
147config VETH
148	tristate "Virtual ethernet pair device"
149	---help---
150	  This device is a local ethernet tunnel. Devices are created in pairs.
151	  When one end receives the packet it appears on its pair and vice
152	  versa.
153
154config NET_SB1000
155	tristate "General Instruments Surfboard 1000"
156	depends on PNP
157	---help---
158	  This is a driver for the General Instrument (also known as
159	  NextLevel) SURFboard 1000 internal
160	  cable modem. This is an ISA card which is used by a number of cable
161	  TV companies to provide cable modem access. It's a one-way
162	  downstream-only cable modem, meaning that your upstream net link is
163	  provided by your regular phone modem.
164
165	  At present this driver only compiles as a module, so say M here if
166	  you have this card. The module will be called sb1000. Then read
167	  <file:Documentation/networking/README.sb1000> for information on how
168	  to use this module, as it needs special ppp scripts for establishing
169	  a connection. Further documentation and the necessary scripts can be
170	  found at:
171
172	  <http://www.jacksonville.net/~fventuri/>
173	  <http://home.adelphia.net/~siglercm/sb1000.html>
174	  <http://linuxpower.cx/~cable/>
175
176	  If you don't have this card, of course say N.
177
178source "drivers/net/arcnet/Kconfig"
179
180config MII
181	tristate "Generic Media Independent Interface device support"
182	help
183	  Most ethernet controllers have MII transceiver either as an external
184	  or internal device.  It is safe to say Y or M here even if your
185	  ethernet card lacks MII.
186
187source "drivers/net/phy/Kconfig"
188
189#
190#	Ethernet
191#
192
193source "drivers/net/ethernet/Kconfig"
194
195menuconfig NET_ETHERNET
196	bool "Ethernet (10 or 100Mbit)"
197	depends on !UML
198	---help---
199	  Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
200	  type of Local Area Network (LAN) in universities and companies.
201
202	  Common varieties of Ethernet are: 10BASE-2 or Thinnet (10 Mbps over
203	  coaxial cable, linking computers in a chain), 10BASE-T or twisted
204	  pair (10 Mbps over twisted pair cable, linking computers to central
205	  hubs), 10BASE-F (10 Mbps over optical fiber links, using hubs),
206	  100BASE-TX (100 Mbps over two twisted pair cables, using hubs),
207	  100BASE-T4 (100 Mbps over 4 standard voice-grade twisted pair
208	  cables, using hubs), 100BASE-FX (100 Mbps over optical fiber links)
209	  [the 100BASE varieties are also known as Fast Ethernet], and Gigabit
210	  Ethernet (1 Gbps over optical fiber or short copper links).
211
212	  If your Linux machine will be connected to an Ethernet and you have
213	  an Ethernet network interface card (NIC) installed in your computer,
214	  say Y here and read the Ethernet-HOWTO, available from
215	  <http://www.tldp.org/docs.html#howto>. You will then also have
216	  to say Y to the driver for your particular NIC.
217
218	  Note that the answer to this question won't directly affect the
219	  kernel: saying N will just cause the configurator to skip all
220	  the questions about Ethernet network cards. If unsure, say N.
221
222if NET_ETHERNET
223
224config SH_ETH
225	tristate "Renesas SuperH Ethernet support"
226	depends on SUPERH && \
227		(CPU_SUBTYPE_SH7710 || CPU_SUBTYPE_SH7712 || \
228		 CPU_SUBTYPE_SH7763 || CPU_SUBTYPE_SH7619 || \
229		 CPU_SUBTYPE_SH7724 || CPU_SUBTYPE_SH7757)
230	select CRC32
231	select MII
232	select MDIO_BITBANG
233	select PHYLIB
234	help
235	  Renesas SuperH Ethernet device driver.
236	  This driver supporting CPUs are:
237		- SH7710, SH7712, SH7763, SH7619, SH7724, and SH7757.
238
239config NET_NETX
240	tristate "NetX Ethernet support"
241	select MII
242	depends on ARCH_NETX
243	help
244	  This is support for the Hilscher netX builtin Ethernet ports
245
246	  To compile this driver as a module, choose M here. The module
247	  will be called netx-eth.
248
249config NET_PCI
250	bool "EISA, VLB, PCI and on board controllers"
251	depends on ISA || EISA || PCI
252	help
253	  This is another class of network cards which attach directly to the
254	  bus. If you have one of those, say Y and read the Ethernet-HOWTO,
255	  available from <http://www.tldp.org/docs.html#howto>.
256
257	  Note that the answer to this question doesn't directly affect the
258	  kernel: saying N will just cause the configurator to skip all
259	  the questions about this class of network cards. If you say Y, you
260	  will be asked for your specific card in the following questions. If
261	  you are unsure, say Y.
262
263config NET_POCKET
264	bool "Pocket and portable adapters"
265	depends on PARPORT
266	---help---
267	  Cute little network (Ethernet) devices which attach to the parallel
268	  port ("pocket adapters"), commonly used with laptops. If you have
269	  one of those, say Y and read the Ethernet-HOWTO, available from
270	  <http://www.tldp.org/docs.html#howto>.
271
272	  If you want to plug a network (or some other) card into the PCMCIA
273	  (or PC-card) slot of your laptop instead (PCMCIA is the standard for
274	  credit card size extension cards used by all modern laptops), you
275	  need the pcmcia-cs package (location contained in the file
276	  <file:Documentation/Changes>) and you can say N here.
277
278	  Laptop users should read the Linux Laptop home page at
279	  <http://www.linux-on-laptops.com/> or
280	  Tuxmobil - Linux on Mobile Computers at <http://www.tuxmobil.org/>.
281
282	  Note that the answer to this question doesn't directly affect the
283	  kernel: saying N will just cause the configurator to skip all
284	  the questions about this class of network devices. If you say Y, you
285	  will be asked for your specific device in the following questions.
286
287endif # NET_ETHERNET
288
289#
290#	Gigabit Ethernet
291#
292
293menuconfig NETDEV_1000
294	bool "Ethernet (1000 Mbit)"
295	depends on !UML
296	default y
297	---help---
298	  Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
299	  type of Local Area Network (LAN) in universities and companies.
300
301	  Say Y here to get to see options for Gigabit Ethernet drivers.
302	  This option alone does not add any kernel code.
303	  Note that drivers supporting both 100 and 1000 MBit may be listed
304	  under "Ethernet (10 or 100MBit)" instead.
305
306	  If you say N, all options in this submenu will be skipped and disabled.
307
308if NETDEV_1000
309
310endif # NETDEV_1000
311
312#
313#	10 Gigabit Ethernet
314#
315
316menuconfig NETDEV_10000
317	bool "Ethernet (10000 Mbit)"
318	depends on !UML
319	default y
320	---help---
321	  Say Y here to get to see options for 10 Gigabit Ethernet drivers.
322	  This option alone does not add any kernel code.
323
324	  If you say N, all options in this submenu will be skipped and disabled.
325
326if NETDEV_10000
327
328config MDIO
329	tristate
330
331config SUNGEM_PHY
332	tristate
333
334endif # NETDEV_10000
335
336source "drivers/net/tokenring/Kconfig"
337
338source "drivers/net/wireless/Kconfig"
339
340source "drivers/net/wimax/Kconfig"
341
342source "drivers/net/usb/Kconfig"
343
344source "drivers/net/pcmcia/Kconfig"
345
346source "drivers/net/wan/Kconfig"
347
348source "drivers/atm/Kconfig"
349
350source "drivers/ieee802154/Kconfig"
351
352source "drivers/s390/net/Kconfig"
353
354source "drivers/net/caif/Kconfig"
355
356config TILE_NET
357	tristate "Tilera GBE/XGBE network driver support"
358	depends on TILE
359	default y
360	select CRC32
361	help
362	  This is a standard Linux network device driver for the
363	  on-chip Tilera Gigabit Ethernet and XAUI interfaces.
364
365	  To compile this driver as a module, choose M here: the module
366	  will be called tile_net.
367
368config XEN_NETDEV_FRONTEND
369	tristate "Xen network device frontend driver"
370	depends on XEN
371	select XEN_XENBUS_FRONTEND
372	default y
373	help
374	  This driver provides support for Xen paravirtual network
375	  devices exported by a Xen network driver domain (often
376	  domain 0).
377
378	  The corresponding Linux backend driver is enabled by the
379	  CONFIG_XEN_NETDEV_BACKEND option.
380
381	  If you are compiling a kernel for use as Xen guest, you
382	  should say Y here. To compile this driver as a module, chose
383	  M here: the module will be called xen-netfront.
384
385config XEN_NETDEV_BACKEND
386	tristate "Xen backend network device"
387	depends on XEN_BACKEND
388	help
389	  This driver allows the kernel to act as a Xen network driver
390	  domain which exports paravirtual network devices to other
391	  Xen domains. These devices can be accessed by any operating
392	  system that implements a compatible front end.
393
394	  The corresponding Linux frontend driver is enabled by the
395	  CONFIG_XEN_NETDEV_FRONTEND configuration option.
396
397	  The backend driver presents a standard network device
398	  endpoint for each paravirtual network device to the driver
399	  domain network stack. These can then be bridged or routed
400	  etc in order to provide full network connectivity.
401
402	  If you are compiling a kernel to run in a Xen network driver
403	  domain (often this is domain 0) you should say Y here. To
404	  compile this driver as a module, chose M here: the module
405	  will be called xen-netback.
406
407config RIONET
408	tristate "RapidIO Ethernet over messaging driver support"
409	depends on RAPIDIO
410
411config RIONET_TX_SIZE
412	int "Number of outbound queue entries"
413	depends on RIONET
414	default "128"
415
416config RIONET_RX_SIZE
417	int "Number of inbound queue entries"
418	depends on RIONET
419	default "128"
420
421config FDDI
422	tristate "FDDI driver support"
423	depends on (PCI || EISA || TC)
424	help
425	  Fiber Distributed Data Interface is a high speed local area network
426	  design; essentially a replacement for high speed Ethernet. FDDI can
427	  run over copper or fiber. If you are connected to such a network and
428	  want a driver for the FDDI card in your computer, say Y here (and
429	  then also Y to the driver for your FDDI card, below). Most people
430	  will say N.
431
432config DEFXX
433	tristate "Digital DEFTA/DEFEA/DEFPA adapter support"
434	depends on FDDI && (PCI || EISA || TC)
435	---help---
436	  This is support for the DIGITAL series of TURBOchannel (DEFTA),
437	  EISA (DEFEA) and PCI (DEFPA) controllers which can connect you
438	  to a local FDDI network.
439
440	  To compile this driver as a module, choose M here: the module
441	  will be called defxx.  If unsure, say N.
442
443config DEFXX_MMIO
444	bool
445	prompt "Use MMIO instead of PIO" if PCI || EISA
446	depends on DEFXX
447	default n if PCI || EISA
448	default y
449	---help---
450	  This instructs the driver to use EISA or PCI memory-mapped I/O
451	  (MMIO) as appropriate instead of programmed I/O ports (PIO).
452	  Enabling this gives an improvement in processing time in parts
453	  of the driver, but it may cause problems with EISA (DEFEA)
454	  adapters.  TURBOchannel does not have the concept of I/O ports,
455	  so MMIO is always used for these (DEFTA) adapters.
456
457	  If unsure, say N.
458
459config SKFP
460	tristate "SysKonnect FDDI PCI support"
461	depends on FDDI && PCI
462	select BITREVERSE
463	---help---
464	  Say Y here if you have a SysKonnect FDDI PCI adapter.
465	  The following adapters are supported by this driver:
466	  - SK-5521 (SK-NET FDDI-UP)
467	  - SK-5522 (SK-NET FDDI-UP DAS)
468	  - SK-5541 (SK-NET FDDI-FP)
469	  - SK-5543 (SK-NET FDDI-LP)
470	  - SK-5544 (SK-NET FDDI-LP DAS)
471	  - SK-5821 (SK-NET FDDI-UP64)
472	  - SK-5822 (SK-NET FDDI-UP64 DAS)
473	  - SK-5841 (SK-NET FDDI-FP64)
474	  - SK-5843 (SK-NET FDDI-LP64)
475	  - SK-5844 (SK-NET FDDI-LP64 DAS)
476	  - Netelligent 100 FDDI DAS Fibre SC
477	  - Netelligent 100 FDDI SAS Fibre SC
478	  - Netelligent 100 FDDI DAS UTP
479	  - Netelligent 100 FDDI SAS UTP
480	  - Netelligent 100 FDDI SAS Fibre MIC
481
482	  Read <file:Documentation/networking/skfp.txt> for information about
483	  the driver.
484
485	  Questions concerning this driver can be addressed to:
486	  <linux@syskonnect.de>
487
488	  To compile this driver as a module, choose M here: the module
489	  will be called skfp.  This is recommended.
490
491config HIPPI
492	bool "HIPPI driver support (EXPERIMENTAL)"
493	depends on EXPERIMENTAL && INET && PCI
494	help
495	  HIgh Performance Parallel Interface (HIPPI) is a 800Mbit/sec and
496	  1600Mbit/sec dual-simplex switched or point-to-point network. HIPPI
497	  can run over copper (25m) or fiber (300m on multi-mode or 10km on
498	  single-mode). HIPPI networks are commonly used for clusters and to
499	  connect to super computers. If you are connected to a HIPPI network
500	  and have a HIPPI network card in your computer that you want to use
501	  under Linux, say Y here (you must also remember to enable the driver
502	  for your HIPPI card below). Most people will say N here.
503
504config ROADRUNNER
505	tristate "Essential RoadRunner HIPPI PCI adapter support (EXPERIMENTAL)"
506	depends on HIPPI && PCI
507	help
508	  Say Y here if this is your PCI HIPPI network card.
509
510	  To compile this driver as a module, choose M here: the module
511	  will be called rrunner.  If unsure, say N.
512
513config ROADRUNNER_LARGE_RINGS
514	bool "Use large TX/RX rings (EXPERIMENTAL)"
515	depends on ROADRUNNER
516	help
517	  If you say Y here, the RoadRunner driver will preallocate up to 2 MB
518	  of additional memory to allow for fastest operation, both for
519	  transmitting and receiving. This memory cannot be used by any other
520	  kernel code or by user space programs. Say Y here only if you have
521	  the memory.
522
523config PLIP
524	tristate "PLIP (parallel port) support"
525	depends on PARPORT
526	---help---
527	  PLIP (Parallel Line Internet Protocol) is used to create a
528	  reasonably fast mini network consisting of two (or, rarely, more)
529	  local machines.  A PLIP link from a Linux box is a popular means to
530	  install a Linux distribution on a machine which doesn't have a
531	  CD-ROM drive (a minimal system has to be transferred with floppies
532	  first). The kernels on both machines need to have this PLIP option
533	  enabled for this to work.
534
535	  The PLIP driver has two modes, mode 0 and mode 1.  The parallel
536	  ports (the connectors at the computers with 25 holes) are connected
537	  with "null printer" or "Turbo Laplink" cables which can transmit 4
538	  bits at a time (mode 0) or with special PLIP cables, to be used on
539	  bidirectional parallel ports only, which can transmit 8 bits at a
540	  time (mode 1); you can find the wiring of these cables in
541	  <file:Documentation/networking/PLIP.txt>.  The cables can be up to
542	  15m long.  Mode 0 works also if one of the machines runs DOS/Windows
543	  and has some PLIP software installed, e.g. the Crynwr PLIP packet
544	  driver (<http://oak.oakland.edu/simtel.net/msdos/pktdrvr-pre.html>)
545	  and winsock or NCSA's telnet.
546
547	  If you want to use PLIP, say Y and read the PLIP mini-HOWTO as well
548	  as the NET-3-HOWTO, both available from
549	  <http://www.tldp.org/docs.html#howto>.  Note that the PLIP
550	  protocol has been changed and this PLIP driver won't work together
551	  with the PLIP support in Linux versions 1.0.x.  This option enlarges
552	  your kernel by about 8 KB.
553
554	  To compile this driver as a module, choose M here. The module
555	  will be called plip. If unsure, say Y or M, in case you buy
556	  a laptop later.
557
558config PPP
559	tristate "PPP (point-to-point protocol) support"
560	select SLHC
561	---help---
562	  PPP (Point to Point Protocol) is a newer and better SLIP.  It serves
563	  the same purpose: sending Internet traffic over telephone (and other
564	  serial) lines.  Ask your access provider if they support it, because
565	  otherwise you can't use it; most Internet access providers these
566	  days support PPP rather than SLIP.
567
568	  To use PPP, you need an additional program called pppd as described
569	  in the PPP-HOWTO, available at
570	  <http://www.tldp.org/docs.html#howto>.  Make sure that you have
571	  the version of pppd recommended in <file:Documentation/Changes>.
572	  The PPP option enlarges your kernel by about 16 KB.
573
574	  There are actually two versions of PPP: the traditional PPP for
575	  asynchronous lines, such as regular analog phone lines, and
576	  synchronous PPP which can be used over digital ISDN lines for
577	  example.  If you want to use PPP over phone lines or other
578	  asynchronous serial lines, you need to say Y (or M) here and also to
579	  the next option, "PPP support for async serial ports".  For PPP over
580	  synchronous lines, you should say Y (or M) here and to "Support
581	  synchronous PPP", below.
582
583	  If you said Y to "Version information on all symbols" above, then
584	  you cannot compile the PPP driver into the kernel; you can then only
585	  compile it as a module. To compile this driver as a module, choose M
586	  here. The module will be called ppp_generic.
587
588config PPP_MULTILINK
589	bool "PPP multilink support (EXPERIMENTAL)"
590	depends on PPP && EXPERIMENTAL
591	help
592	  PPP multilink is a protocol (defined in RFC 1990) which allows you
593	  to combine several (logical or physical) lines into one logical PPP
594	  connection, so that you can utilize your full bandwidth.
595
596	  This has to be supported at the other end as well and you need a
597	  version of the pppd daemon which understands the multilink protocol.
598
599	  If unsure, say N.
600
601config PPP_FILTER
602	bool "PPP filtering"
603	depends on PPP
604	help
605	  Say Y here if you want to be able to filter the packets passing over
606	  PPP interfaces.  This allows you to control which packets count as
607	  activity (i.e. which packets will reset the idle timer or bring up
608	  a demand-dialed link) and which packets are to be dropped entirely.
609	  You need to say Y here if you wish to use the pass-filter and
610	  active-filter options to pppd.
611
612	  If unsure, say N.
613
614config PPP_ASYNC
615	tristate "PPP support for async serial ports"
616	depends on PPP
617	select CRC_CCITT
618	---help---
619	  Say Y (or M) here if you want to be able to use PPP over standard
620	  asynchronous serial ports, such as COM1 or COM2 on a PC.  If you use
621	  a modem (not a synchronous or ISDN modem) to contact your ISP, you
622	  need this option.
623
624	  To compile this driver as a module, choose M here.
625
626	  If unsure, say Y.
627
628config PPP_SYNC_TTY
629	tristate "PPP support for sync tty ports"
630	depends on PPP
631	help
632	  Say Y (or M) here if you want to be able to use PPP over synchronous
633	  (HDLC) tty devices, such as the SyncLink adapter. These devices
634	  are often used for high-speed leased lines like T1/E1.
635
636	  To compile this driver as a module, choose M here.
637
638config PPP_DEFLATE
639	tristate "PPP Deflate compression"
640	depends on PPP
641	select ZLIB_INFLATE
642	select ZLIB_DEFLATE
643	---help---
644	  Support for the Deflate compression method for PPP, which uses the
645	  Deflate algorithm (the same algorithm that gzip uses) to compress
646	  each PPP packet before it is sent over the wire.  The machine at the
647	  other end of the PPP link (usually your ISP) has to support the
648	  Deflate compression method as well for this to be useful.  Even if
649	  they don't support it, it is safe to say Y here.
650
651	  To compile this driver as a module, choose M here.
652
653config PPP_BSDCOMP
654	tristate "PPP BSD-Compress compression"
655	depends on PPP
656	---help---
657	  Support for the BSD-Compress compression method for PPP, which uses
658	  the LZW compression method to compress each PPP packet before it is
659	  sent over the wire. The machine at the other end of the PPP link
660	  (usually your ISP) has to support the BSD-Compress compression
661	  method as well for this to be useful. Even if they don't support it,
662	  it is safe to say Y here.
663
664	  The PPP Deflate compression method ("PPP Deflate compression",
665	  above) is preferable to BSD-Compress, because it compresses better
666	  and is patent-free.
667
668	  Note that the BSD compression code will always be compiled as a
669	  module; it is called bsd_comp and will show up in the directory
670	  modules once you have said "make modules". If unsure, say N.
671
672config PPP_MPPE
673	tristate "PPP MPPE compression (encryption) (EXPERIMENTAL)"
674	depends on PPP && EXPERIMENTAL
675	select CRYPTO
676	select CRYPTO_SHA1
677	select CRYPTO_ARC4
678	select CRYPTO_ECB
679	---help---
680	  Support for the MPPE Encryption protocol, as employed by the
681	  Microsoft Point-to-Point Tunneling Protocol.
682
683	  See http://pptpclient.sourceforge.net/ for information on
684	  configuring PPTP clients and servers to utilize this method.
685
686config PPPOE
687	tristate "PPP over Ethernet (EXPERIMENTAL)"
688	depends on EXPERIMENTAL && PPP
689	help
690	  Support for PPP over Ethernet.
691
692	  This driver requires the latest version of pppd from the CVS
693	  repository at cvs.samba.org.  Alternatively, see the
694	  RoaringPenguin package (<http://www.roaringpenguin.com/pppoe>)
695	  which contains instruction on how to use this driver (under
696	  the heading "Kernel mode PPPoE").
697
698config PPTP
699	tristate "PPP over IPv4 (PPTP) (EXPERIMENTAL)"
700	depends on EXPERIMENTAL && PPP && NET_IPGRE_DEMUX
701	help
702	  Support for PPP over IPv4.(Point-to-Point Tunneling Protocol)
703
704	  This driver requires pppd plugin to work in client mode or
705	  modified pptpd (poptop) to work in server mode.
706	  See http://accel-pptp.sourceforge.net/ for information how to
707	  utilize this module.
708
709config PPPOATM
710	tristate "PPP over ATM"
711	depends on ATM && PPP
712	help
713	  Support PPP (Point to Point Protocol) encapsulated in ATM frames.
714	  This implementation does not yet comply with section 8 of RFC2364,
715	  which can lead to bad results if the ATM peer loses state and
716	  changes its encapsulation unilaterally.
717
718config PPPOL2TP
719	tristate "PPP over L2TP (EXPERIMENTAL)"
720	depends on EXPERIMENTAL && L2TP && PPP
721	help
722	  Support for PPP-over-L2TP socket family. L2TP is a protocol
723	  used by ISPs and enterprises to tunnel PPP traffic over UDP
724	  tunnels. L2TP is replacing PPTP for VPN uses.
725
726config SLIP
727	tristate "SLIP (serial line) support"
728	---help---
729	  Say Y if you intend to use SLIP or CSLIP (compressed SLIP) to
730	  connect to your Internet service provider or to connect to some
731	  other local Unix box or if you want to configure your Linux box as a
732	  Slip/CSlip server for other people to dial in. SLIP (Serial Line
733	  Internet Protocol) is a protocol used to send Internet traffic over
734	  serial connections such as telephone lines or null modem cables;
735	  nowadays, the protocol PPP is more commonly used for this same
736	  purpose.
737
738	  Normally, your access provider has to support SLIP in order for you
739	  to be able to use it, but there is now a SLIP emulator called SLiRP
740	  around (available from
741	  <ftp://ibiblio.org/pub/Linux/system/network/serial/>) which
742	  allows you to use SLIP over a regular dial up shell connection. If
743	  you plan to use SLiRP, make sure to say Y to CSLIP, below. The
744	  NET-3-HOWTO, available from
745	  <http://www.tldp.org/docs.html#howto>, explains how to
746	  configure SLIP. Note that you don't need this option if you just
747	  want to run term (term is a program which gives you almost full
748	  Internet connectivity if you have a regular dial up shell account on
749	  some Internet connected Unix computer. Read
750	  <http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>). SLIP
751	  support will enlarge your kernel by about 4 KB. If unsure, say N.
752
753	  To compile this driver as a module, choose M here. The module
754	  will be called slip.
755
756config SLIP_COMPRESSED
757	bool "CSLIP compressed headers"
758	depends on SLIP
759	select SLHC
760	---help---
761	  This protocol is faster than SLIP because it uses compression on the
762	  TCP/IP headers (not on the data itself), but it has to be supported
763	  on both ends. Ask your access provider if you are not sure and
764	  answer Y, just in case. You will still be able to use plain SLIP. If
765	  you plan to use SLiRP, the SLIP emulator (available from
766	  <ftp://ibiblio.org/pub/Linux/system/network/serial/>) which
767	  allows you to use SLIP over a regular dial up shell connection, you
768	  definitely want to say Y here. The NET-3-HOWTO, available from
769	  <http://www.tldp.org/docs.html#howto>, explains how to configure
770	  CSLIP. This won't enlarge your kernel.
771
772config SLHC
773	tristate
774	help
775	  This option enables Van Jacobsen serial line header compression
776	  routines.
777
778config SLIP_SMART
779	bool "Keepalive and linefill"
780	depends on SLIP
781	help
782	  Adds additional capabilities to the SLIP driver to support the
783	  RELCOM line fill and keepalive monitoring. Ideal on poor quality
784	  analogue lines.
785
786config SLIP_MODE_SLIP6
787	bool "Six bit SLIP encapsulation"
788	depends on SLIP
789	help
790	  Just occasionally you may need to run IP over hostile serial
791	  networks that don't pass all control characters or are only seven
792	  bit. Saying Y here adds an extra mode you can use with SLIP:
793	  "slip6". In this mode, SLIP will only send normal ASCII symbols over
794	  the serial device. Naturally, this has to be supported at the other
795	  end of the link as well. It's good enough, for example, to run IP
796	  over the async ports of a Camtec JNT Pad. If unsure, say N.
797
798config NET_FC
799	bool "Fibre Channel driver support"
800	depends on SCSI && PCI
801	help
802	  Fibre Channel is a high speed serial protocol mainly used to connect
803	  large storage devices to the computer; it is compatible with and
804	  intended to replace SCSI.
805
806	  If you intend to use Fibre Channel, you need to have a Fibre channel
807	  adaptor card in your computer; say Y here and to the driver for your
808	  adaptor below. You also should have said Y to "SCSI support" and
809	  "SCSI generic support".
810
811config NETCONSOLE
812	tristate "Network console logging support"
813	---help---
814	If you want to log kernel messages over the network, enable this.
815	See <file:Documentation/networking/netconsole.txt> for details.
816
817config NETCONSOLE_DYNAMIC
818	bool "Dynamic reconfiguration of logging targets"
819	depends on NETCONSOLE && SYSFS && CONFIGFS_FS && \
820			!(NETCONSOLE=y && CONFIGFS_FS=m)
821	help
822	  This option enables the ability to dynamically reconfigure target
823	  parameters (interface, IP addresses, port numbers, MAC addresses)
824	  at runtime through a userspace interface exported using configfs.
825	  See <file:Documentation/networking/netconsole.txt> for details.
826
827config NETPOLL
828	def_bool NETCONSOLE
829
830config NETPOLL_TRAP
831	bool "Netpoll traffic trapping"
832	default n
833	depends on NETPOLL
834
835config NET_POLL_CONTROLLER
836	def_bool NETPOLL
837
838config VIRTIO_NET
839	tristate "Virtio network driver (EXPERIMENTAL)"
840	depends on EXPERIMENTAL && VIRTIO
841	---help---
842	  This is the virtual network driver for virtio.  It can be used with
843	  lguest or QEMU based VMMs (like KVM or Xen).  Say Y or M.
844
845config VMXNET3
846	tristate "VMware VMXNET3 ethernet driver"
847	depends on PCI && INET
848	help
849	  This driver supports VMware's vmxnet3 virtual ethernet NIC.
850	  To compile this driver as a module, choose M here: the
851	  module will be called vmxnet3.
852
853endif # NETDEVICES
854