Kconfig revision d9fb9f384292d848ad9db386bcf97f1e06e60264
1#
2# Network device configuration
3#
4
5config HAVE_NET_MACB
6	bool
7
8menuconfig NETDEVICES
9	default y if UML
10	depends on NET
11	bool "Network device support"
12	---help---
13	  You can say N here if you don't intend to connect your Linux box to
14	  any other computer at all.
15
16	  You'll have to say Y if your computer contains a network card that
17	  you want to use under Linux. If you are going to run SLIP or PPP over
18	  telephone line or null modem cable you need say Y here. Connecting
19	  two machines with parallel ports using PLIP needs this, as well as
20	  AX.25/KISS for sending Internet traffic over amateur radio links.
21
22	  See also "The Linux Network Administrator's Guide" by Olaf Kirch and
23	  Terry Dawson. Available at <http://www.tldp.org/guides.html>.
24
25	  If unsure, say Y.
26
27# All the following symbols are dependent on NETDEVICES - do not repeat
28# that for each of the symbols.
29if NETDEVICES
30
31config IFB
32	tristate "Intermediate Functional Block support"
33	depends on NET_CLS_ACT
34	---help---
35	  This is an intermediate driver that allows sharing of
36	  resources.
37	  To compile this driver as a module, choose M here: the module
38	  will be called ifb.  If you want to use more than one ifb
39	  device at a time, you need to compile this driver as a module.
40	  Instead of 'ifb', the devices will then be called 'ifb0',
41	  'ifb1' etc.
42	  Look at the iproute2 documentation directory for usage etc
43
44config DUMMY
45	tristate "Dummy net driver support"
46	---help---
47	  This is essentially a bit-bucket device (i.e. traffic you send to
48	  this device is consigned into oblivion) with a configurable IP
49	  address. It is most commonly used in order to make your currently
50	  inactive SLIP address seem like a real address for local programs.
51	  If you use SLIP or PPP, you might want to say Y here. Since this
52	  thing often comes in handy, the default is Y. It won't enlarge your
53	  kernel either. What a deal. Read about it in the Network
54	  Administrator's Guide, available from
55	  <http://www.tldp.org/docs.html#guide>.
56
57	  To compile this driver as a module, choose M here: the module
58	  will be called dummy.  If you want to use more than one dummy
59	  device at a time, you need to compile this driver as a module.
60	  Instead of 'dummy', the devices will then be called 'dummy0',
61	  'dummy1' etc.
62
63config BONDING
64	tristate "Bonding driver support"
65	depends on INET
66	depends on IPV6 || IPV6=n
67	---help---
68	  Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet
69	  Channels together. This is called 'Etherchannel' by Cisco,
70	  'Trunking' by Sun, 802.3ad by the IEEE, and 'Bonding' in Linux.
71
72	  The driver supports multiple bonding modes to allow for both high
73	  performance and high availability operation.
74
75	  Refer to <file:Documentation/networking/bonding.txt> for more
76	  information.
77
78	  To compile this driver as a module, choose M here: the module
79	  will be called bonding.
80
81config MACVLAN
82	tristate "MAC-VLAN support (EXPERIMENTAL)"
83	depends on EXPERIMENTAL
84	---help---
85	  This allows one to create virtual interfaces that map packets to
86	  or from specific MAC addresses to a particular interface.
87
88	  Macvlan devices can be added using the "ip" command from the
89	  iproute2 package starting with the iproute2-2.6.23 release:
90
91	  "ip link add link <real dev> [ address MAC ] [ NAME ] type macvlan"
92
93	  To compile this driver as a module, choose M here: the module
94	  will be called macvlan.
95
96config MACVTAP
97	tristate "MAC-VLAN based tap driver (EXPERIMENTAL)"
98	depends on MACVLAN
99	help
100	  This adds a specialized tap character device driver that is based
101	  on the MAC-VLAN network interface, called macvtap. A macvtap device
102	  can be added in the same way as a macvlan device, using 'type
103	  macvlan', and then be accessed through the tap user space interface.
104
105	  To compile this driver as a module, choose M here: the module
106	  will be called macvtap.
107
108config EQUALIZER
109	tristate "EQL (serial line load balancing) support"
110	---help---
111	  If you have two serial connections to some other computer (this
112	  usually requires two modems and two telephone lines) and you use
113	  SLIP (the protocol for sending Internet traffic over telephone
114	  lines) or PPP (a better SLIP) on them, you can make them behave like
115	  one double speed connection using this driver.  Naturally, this has
116	  to be supported at the other end as well, either with a similar EQL
117	  Linux driver or with a Livingston Portmaster 2e.
118
119	  Say Y if you want this and read
120	  <file:Documentation/networking/eql.txt>.  You may also want to read
121	  section 6.2 of the NET-3-HOWTO, available from
122	  <http://www.tldp.org/docs.html#howto>.
123
124	  To compile this driver as a module, choose M here: the module
125	  will be called eql.  If unsure, say N.
126
127config TUN
128	tristate "Universal TUN/TAP device driver support"
129	select CRC32
130	---help---
131	  TUN/TAP provides packet reception and transmission for user space
132	  programs.  It can be viewed as a simple Point-to-Point or Ethernet
133	  device, which instead of receiving packets from a physical media,
134	  receives them from user space program and instead of sending packets
135	  via physical media writes them to the user space program.
136
137	  When a program opens /dev/net/tun, driver creates and registers
138	  corresponding net device tunX or tapX.  After a program closed above
139	  devices, driver will automatically delete tunXX or tapXX device and
140	  all routes corresponding to it.
141
142	  Please read <file:Documentation/networking/tuntap.txt> for more
143	  information.
144
145	  To compile this driver as a module, choose M here: the module
146	  will be called tun.
147
148	  If you don't know what to use this for, you don't need it.
149
150config VETH
151	tristate "Virtual ethernet pair device"
152	---help---
153	  This device is a local ethernet tunnel. Devices are created in pairs.
154	  When one end receives the packet it appears on its pair and vice
155	  versa.
156
157config NET_SB1000
158	tristate "General Instruments Surfboard 1000"
159	depends on PNP
160	---help---
161	  This is a driver for the General Instrument (also known as
162	  NextLevel) SURFboard 1000 internal
163	  cable modem. This is an ISA card which is used by a number of cable
164	  TV companies to provide cable modem access. It's a one-way
165	  downstream-only cable modem, meaning that your upstream net link is
166	  provided by your regular phone modem.
167
168	  At present this driver only compiles as a module, so say M here if
169	  you have this card. The module will be called sb1000. Then read
170	  <file:Documentation/networking/README.sb1000> for information on how
171	  to use this module, as it needs special ppp scripts for establishing
172	  a connection. Further documentation and the necessary scripts can be
173	  found at:
174
175	  <http://www.jacksonville.net/~fventuri/>
176	  <http://home.adelphia.net/~siglercm/sb1000.html>
177	  <http://linuxpower.cx/~cable/>
178
179	  If you don't have this card, of course say N.
180
181source "drivers/net/arcnet/Kconfig"
182
183config MII
184	tristate "Generic Media Independent Interface device support"
185	help
186	  Most ethernet controllers have MII transceiver either as an external
187	  or internal device.  It is safe to say Y or M here even if your
188	  ethernet card lacks MII.
189
190source "drivers/net/phy/Kconfig"
191
192#
193#	Ethernet
194#
195
196source "drivers/net/ethernet/Kconfig"
197
198menuconfig NET_ETHERNET
199	bool "Ethernet (10 or 100Mbit)"
200	depends on !UML
201	---help---
202	  Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
203	  type of Local Area Network (LAN) in universities and companies.
204
205	  Common varieties of Ethernet are: 10BASE-2 or Thinnet (10 Mbps over
206	  coaxial cable, linking computers in a chain), 10BASE-T or twisted
207	  pair (10 Mbps over twisted pair cable, linking computers to central
208	  hubs), 10BASE-F (10 Mbps over optical fiber links, using hubs),
209	  100BASE-TX (100 Mbps over two twisted pair cables, using hubs),
210	  100BASE-T4 (100 Mbps over 4 standard voice-grade twisted pair
211	  cables, using hubs), 100BASE-FX (100 Mbps over optical fiber links)
212	  [the 100BASE varieties are also known as Fast Ethernet], and Gigabit
213	  Ethernet (1 Gbps over optical fiber or short copper links).
214
215	  If your Linux machine will be connected to an Ethernet and you have
216	  an Ethernet network interface card (NIC) installed in your computer,
217	  say Y here and read the Ethernet-HOWTO, available from
218	  <http://www.tldp.org/docs.html#howto>. You will then also have
219	  to say Y to the driver for your particular NIC.
220
221	  Note that the answer to this question won't directly affect the
222	  kernel: saying N will just cause the configurator to skip all
223	  the questions about Ethernet network cards. If unsure, say N.
224
225if NET_ETHERNET
226
227config MACB
228	tristate "Atmel MACB support"
229	depends on HAVE_NET_MACB
230	select PHYLIB
231	help
232	  The Atmel MACB ethernet interface is found on many AT32 and AT91
233	  parts. Say Y to include support for the MACB chip.
234
235	  To compile this driver as a module, choose M here: the module
236	  will be called macb.
237
238source "drivers/net/arm/Kconfig"
239
240config KORINA
241	tristate "Korina (IDT RC32434) Ethernet support"
242	depends on NET_ETHERNET && MIKROTIK_RB532
243	help
244	  If you have a Mikrotik RouterBoard 500 or IDT RC32434
245	  based system say Y. Otherwise say N.
246
247config SGI_IOC3_ETH
248	bool "SGI IOC3 Ethernet"
249	depends on PCI && SGI_IP27
250	select CRC32
251	select MII
252	help
253	  If you have a network (Ethernet) card of this type, say Y and read
254	  the Ethernet-HOWTO, available from
255	  <http://www.tldp.org/docs.html#howto>.
256
257config MIPS_SIM_NET
258	tristate "MIPS simulator Network device"
259	depends on MIPS_SIM
260	help
261	  The MIPSNET device is a simple Ethernet network device which is
262	  emulated by the MIPS Simulator.
263	  If you are not using a MIPSsim or are unsure, say N.
264
265config SGI_O2MACE_ETH
266	tristate "SGI O2 MACE Fast Ethernet support"
267	depends on SGI_IP32=y
268
269config SH_ETH
270	tristate "Renesas SuperH Ethernet support"
271	depends on SUPERH && \
272		(CPU_SUBTYPE_SH7710 || CPU_SUBTYPE_SH7712 || \
273		 CPU_SUBTYPE_SH7763 || CPU_SUBTYPE_SH7619 || \
274		 CPU_SUBTYPE_SH7724 || CPU_SUBTYPE_SH7757)
275	select CRC32
276	select MII
277	select MDIO_BITBANG
278	select PHYLIB
279	help
280	  Renesas SuperH Ethernet device driver.
281	  This driver supporting CPUs are:
282		- SH7710, SH7712, SH7763, SH7619, SH7724, and SH7757.
283
284config BFIN_MAC
285	tristate "Blackfin on-chip MAC support"
286	depends on NET_ETHERNET && (BF516 || BF518 || BF526 || BF527 || BF536 || BF537)
287	select CRC32
288	select MII
289	select PHYLIB
290	select BFIN_MAC_USE_L1 if DMA_UNCACHED_NONE
291	help
292	  This is the driver for Blackfin on-chip mac device. Say Y if you want it
293	  compiled into the kernel. This driver is also available as a module
294	  ( = code which can be inserted in and removed from the running kernel
295	  whenever you want). The module will be called bfin_mac.
296
297config BFIN_MAC_USE_L1
298	bool "Use L1 memory for rx/tx packets"
299	depends on BFIN_MAC && (BF527 || BF537)
300	default y
301	help
302	  To get maximum network performance, you should use L1 memory as rx/tx buffers.
303	  Say N here if you want to reserve L1 memory for other uses.
304
305config BFIN_TX_DESC_NUM
306	int "Number of transmit buffer packets"
307	depends on BFIN_MAC
308	range 6 10 if BFIN_MAC_USE_L1
309	range 10 100
310	default "10"
311	help
312	  Set the number of buffer packets used in driver.
313
314config BFIN_RX_DESC_NUM
315	int "Number of receive buffer packets"
316	depends on BFIN_MAC
317	range 20 100 if BFIN_MAC_USE_L1
318	range 20 800
319	default "20"
320	help
321	  Set the number of buffer packets used in driver.
322
323config BFIN_MAC_USE_HWSTAMP
324	bool "Use IEEE 1588 hwstamp"
325	depends on BFIN_MAC && BF518
326	default y
327	help
328	  To support the IEEE 1588 Precision Time Protocol (PTP), select y here
329
330config PXA168_ETH
331	tristate "Marvell pxa168 ethernet support"
332	depends on CPU_PXA168
333	select PHYLIB
334	help
335	  This driver supports the pxa168 Ethernet ports.
336
337	  To compile this driver as a module, choose M here. The module
338	  will be called pxa168_eth.
339
340config NET_NETX
341	tristate "NetX Ethernet support"
342	select MII
343	depends on ARCH_NETX
344	help
345	  This is support for the Hilscher netX builtin Ethernet ports
346
347	  To compile this driver as a module, choose M here. The module
348	  will be called netx-eth.
349
350config TI_DAVINCI_EMAC
351	tristate "TI DaVinci EMAC Support"
352	depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
353	select TI_DAVINCI_MDIO
354	select TI_DAVINCI_CPDMA
355	select PHYLIB
356	help
357	  This driver supports TI's DaVinci Ethernet .
358
359	  To compile this driver as a module, choose M here: the module
360	  will be called davinci_emac_driver.  This is recommended.
361
362config TI_DAVINCI_MDIO
363	tristate "TI DaVinci MDIO Support"
364	depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
365	select PHYLIB
366	help
367	  This driver supports TI's DaVinci MDIO module.
368
369	  To compile this driver as a module, choose M here: the module
370	  will be called davinci_mdio.  This is recommended.
371
372config TI_DAVINCI_CPDMA
373	tristate "TI DaVinci CPDMA Support"
374	depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
375	help
376	  This driver supports TI's DaVinci CPDMA dma engine.
377
378	  To compile this driver as a module, choose M here: the module
379	  will be called davinci_cpdma.  This is recommended.
380
381config DM9000
382	tristate "DM9000 support"
383	depends on ARM || BLACKFIN || MIPS
384	select CRC32
385	select MII
386	---help---
387	  Support for DM9000 chipset.
388
389	  To compile this driver as a module, choose M here.  The module
390	  will be called dm9000.
391
392config DM9000_DEBUGLEVEL
393	int "DM9000 maximum debug level"
394	depends on DM9000
395	default 4
396	help
397	  The maximum level of debugging code compiled into the DM9000
398	  driver.
399
400config DM9000_FORCE_SIMPLE_PHY_POLL
401	bool "Force simple NSR based PHY polling"
402	depends on DM9000
403	---help---
404	  This configuration forces the DM9000 to use the NSR's LinkStatus
405	  bit to determine if the link is up or down instead of the more
406	  costly MII PHY reads. Note, this will not work if the chip is
407	  operating with an external PHY.
408
409config ENC28J60
410	tristate "ENC28J60 support"
411	depends on EXPERIMENTAL && SPI && NET_ETHERNET
412	select CRC32
413	---help---
414	  Support for the Microchip EN28J60 ethernet chip.
415
416	  To compile this driver as a module, choose M here. The module will be
417	  called enc28j60.
418
419config ENC28J60_WRITEVERIFY
420	bool "Enable write verify"
421	depends on ENC28J60
422	---help---
423	  Enable the verify after the buffer write useful for debugging purpose.
424	  If unsure, say N.
425
426config ETHOC
427	tristate "OpenCores 10/100 Mbps Ethernet MAC support"
428	depends on NET_ETHERNET && HAS_IOMEM && HAS_DMA
429	select MII
430	select PHYLIB
431	select CRC32
432	select BITREVERSE
433	help
434	  Say Y here if you want to use the OpenCores 10/100 Mbps Ethernet MAC.
435
436config GRETH
437	tristate "Aeroflex Gaisler GRETH Ethernet MAC support"
438	depends on SPARC
439	select PHYLIB
440	select CRC32
441	help
442	  Say Y here if you want to use the Aeroflex Gaisler GRETH Ethernet MAC.
443
444config DNET
445	tristate "Dave ethernet support (DNET)"
446	depends on NET_ETHERNET && HAS_IOMEM
447	select PHYLIB
448	help
449	  The Dave ethernet interface (DNET) is found on Qong Board FPGA.
450	  Say Y to include support for the DNET chip.
451
452	  To compile this driver as a module, choose M here: the module
453	  will be called dnet.
454
455source "drivers/net/tulip/Kconfig"
456
457config AT1700
458	tristate "AT1700/1720 support (EXPERIMENTAL)"
459	depends on (ISA || MCA_LEGACY) && EXPERIMENTAL
460	select CRC32
461	---help---
462	  If you have a network (Ethernet) card of this type, say Y and read
463	  the Ethernet-HOWTO, available from
464	  <http://www.tldp.org/docs.html#howto>.
465
466	  To compile this driver as a module, choose M here. The module
467	  will be called at1700.
468
469config HP100
470	tristate "HP 10/100VG PCLAN (ISA, EISA, PCI) support"
471	depends on ISA || EISA || PCI
472	help
473	  If you have a network (Ethernet) card of this type, say Y and read
474	  the Ethernet-HOWTO, available from
475	  <http://www.tldp.org/docs.html#howto>.
476
477	  To compile this driver as a module, choose M here. The module
478	  will be called hp100.
479
480config NET_ISA
481	bool "Other ISA cards"
482	depends on ISA
483	---help---
484	  If your network (Ethernet) card hasn't been mentioned yet and its
485	  bus system (that's the way the cards talks to the other components
486	  of your computer) is ISA (as opposed to EISA, VLB or PCI), say Y.
487	  Make sure you know the name of your card. Read the Ethernet-HOWTO,
488	  available from <http://www.tldp.org/docs.html#howto>.
489
490	  If unsure, say Y.
491
492	  Note that the answer to this question doesn't directly affect the
493	  kernel: saying N will just cause the configurator to skip all
494	  the remaining ISA network card questions. If you say Y, you will be
495	  asked for your specific card in the following questions.
496
497config EWRK3
498	tristate "EtherWORKS 3 (DE203, DE204, DE205) support"
499	depends on NET_ISA
500	select CRC32
501	---help---
502	  This driver supports the DE203, DE204 and DE205 network (Ethernet)
503	  cards. If this is for you, say Y and read
504	  <file:Documentation/networking/ewrk3.txt> in the kernel source as
505	  well as the Ethernet-HOWTO, available from
506	  <http://www.tldp.org/docs.html#howto>.
507
508	  To compile this driver as a module, choose M here. The module
509	  will be called ewrk3.
510
511config ETH16I
512	tristate "ICL EtherTeam 16i/32 support"
513	depends on NET_ISA
514	help
515	  If you have a network (Ethernet) card of this type, say Y and read
516	  the Ethernet-HOWTO, available from
517	  <http://www.tldp.org/docs.html#howto>.
518
519	  To compile this driver as a module, choose M here. The module
520	  will be called eth16i.
521
522config SEEQ8005
523	tristate "SEEQ8005 support (EXPERIMENTAL)"
524	depends on NET_ISA && EXPERIMENTAL
525	help
526	  This is a driver for the SEEQ 8005 network (Ethernet) card.  If this
527	  is for you, read the Ethernet-HOWTO, available from
528	  <http://www.tldp.org/docs.html#howto>.
529
530	  To compile this driver as a module, choose M here. The module
531	  will be called seeq8005.
532
533config NET_PCI
534	bool "EISA, VLB, PCI and on board controllers"
535	depends on ISA || EISA || PCI
536	help
537	  This is another class of network cards which attach directly to the
538	  bus. If you have one of those, say Y and read the Ethernet-HOWTO,
539	  available from <http://www.tldp.org/docs.html#howto>.
540
541	  Note that the answer to this question doesn't directly affect the
542	  kernel: saying N will just cause the configurator to skip all
543	  the questions about this class of network cards. If you say Y, you
544	  will be asked for your specific card in the following questions. If
545	  you are unsure, say Y.
546
547config ADAPTEC_STARFIRE
548	tristate "Adaptec Starfire/DuraLAN support"
549	depends on NET_PCI && PCI
550	select CRC32
551	select MII
552	help
553	  Say Y here if you have an Adaptec Starfire (or DuraLAN) PCI network
554	  adapter. The DuraLAN chip is used on the 64 bit PCI boards from
555	  Adaptec e.g. the ANA-6922A. The older 32 bit boards use the tulip
556	  driver.
557
558	  To compile this driver as a module, choose M here: the module
559	  will be called starfire.  This is recommended.
560
561config KSZ884X_PCI
562	tristate "Micrel KSZ8841/2 PCI"
563	depends on NET_PCI && PCI
564	select MII
565	select CRC32
566	help
567	  This PCI driver is for Micrel KSZ8841/KSZ8842 PCI Ethernet chip.
568
569	  To compile this driver as a module, choose M here. The module
570	  will be called ksz884x.
571
572config FORCEDETH
573	tristate "nForce Ethernet support"
574	depends on NET_PCI && PCI
575	help
576	  If you have a network (Ethernet) controller of this type, say Y and
577	  read the Ethernet-HOWTO, available from
578	  <http://www.tldp.org/docs.html#howto>.
579
580	  To compile this driver as a module, choose M here. The module
581	  will be called forcedeth.
582
583config TC35815
584	tristate "TOSHIBA TC35815 Ethernet support"
585	depends on NET_PCI && PCI && MIPS
586	select PHYLIB
587
588config FEALNX
589	tristate "Myson MTD-8xx PCI Ethernet support"
590	depends on NET_PCI && PCI
591	select CRC32
592	select MII
593	help
594	  Say Y here to support the Myson MTD-800 family of PCI-based Ethernet 
595	  cards. <http://www.myson.com.tw/>
596
597config 8139CP
598	tristate "RealTek RTL-8139 C+ PCI Fast Ethernet Adapter support (EXPERIMENTAL)"
599	depends on NET_PCI && PCI && EXPERIMENTAL
600	select CRC32
601	select MII
602	help
603	  This is a driver for the Fast Ethernet PCI network cards based on
604	  the RTL8139C+ chips. If you have one of those, say Y and read
605	  the Ethernet-HOWTO, available from
606	  <http://www.tldp.org/docs.html#howto>.
607
608	  To compile this driver as a module, choose M here: the module
609	  will be called 8139cp.  This is recommended.
610
611config 8139TOO
612	tristate "RealTek RTL-8129/8130/8139 PCI Fast Ethernet Adapter support"
613	depends on NET_PCI && PCI
614	select CRC32
615	select MII
616	---help---
617	  This is a driver for the Fast Ethernet PCI network cards based on
618	  the RTL 8129/8130/8139 chips. If you have one of those, say Y and
619	  read the Ethernet-HOWTO <http://www.tldp.org/docs.html#howto>.
620
621	  To compile this driver as a module, choose M here: the module
622	  will be called 8139too.  This is recommended.
623
624config 8139TOO_PIO
625	bool "Use PIO instead of MMIO"
626	default y
627	depends on 8139TOO
628	help
629	  This instructs the driver to use programmed I/O ports (PIO) instead
630	  of PCI shared memory (MMIO).  This can possibly solve some problems
631	  in case your mainboard has memory consistency issues.  If unsure,
632	  say N.
633
634config 8139TOO_TUNE_TWISTER
635	bool "Support for uncommon RTL-8139 rev. K (automatic channel equalization)"
636	depends on 8139TOO
637	help
638	  This implements a function which might come in handy in case you
639	  are using low quality on long cabling. It is required for RealTek
640	  RTL-8139 revision K boards, and totally unused otherwise.  It tries
641	  to match the transceiver to the cable characteristics. This is
642	  experimental since hardly documented by the manufacturer.
643	  If unsure, say Y.
644
645config 8139TOO_8129
646	bool "Support for older RTL-8129/8130 boards"
647	depends on 8139TOO
648	help
649	  This enables support for the older and uncommon RTL-8129 and
650	  RTL-8130 chips, which support MII via an external transceiver,
651	  instead of an internal one.  Disabling this option will save some
652	  memory by making the code size smaller.  If unsure, say Y.
653
654config 8139_OLD_RX_RESET
655	bool "Use older RX-reset method"
656	depends on 8139TOO
657	help
658	  The 8139too driver was recently updated to contain a more rapid
659	  reset sequence, in the face of severe receive errors.  This "new"
660	  RX-reset method should be adequate for all boards.  But if you
661	  experience problems, you can enable this option to restore the
662	  old RX-reset behavior.  If unsure, say N.
663
664config R6040
665	tristate "RDC R6040 Fast Ethernet Adapter support"
666	depends on NET_PCI && PCI
667	select CRC32
668	select MII
669	select PHYLIB
670	help
671	  This is a driver for the R6040 Fast Ethernet MACs found in the
672	  the RDC R-321x System-on-chips.
673
674	  To compile this driver as a module, choose M here: the module
675	  will be called r6040. This is recommended.
676
677config SIS900
678	tristate "SiS 900/7016 PCI Fast Ethernet Adapter support"
679	depends on NET_PCI && PCI
680	select CRC32
681	select MII
682	---help---
683	  This is a driver for the Fast Ethernet PCI network cards based on
684	  the SiS 900 and SiS 7016 chips. The SiS 900 core is also embedded in
685	  SiS 630 and SiS 540 chipsets.
686
687	  This driver also supports AMD 79C901 HomePNA so that you can use
688	  your phone line as a network cable.
689
690	  To compile this driver as a module, choose M here: the module
691	  will be called sis900.  This is recommended.
692
693config SUNDANCE
694	tristate "Sundance Alta support"
695	depends on NET_PCI && PCI
696	select CRC32
697	select MII
698	help
699	  This driver is for the Sundance "Alta" chip.
700	  More specific information and updates are available from
701	  <http://www.scyld.com/network/sundance.html>.
702
703config SUNDANCE_MMIO
704	bool "Use MMIO instead of PIO"
705	depends on SUNDANCE
706	help
707	  Enable memory-mapped I/O for interaction with Sundance NIC registers.
708	  Do NOT enable this by default, PIO (enabled when MMIO is disabled)
709	  is known to solve bugs on certain chips.
710
711	  If unsure, say N.
712
713config TLAN
714	tristate "TI ThunderLAN support"
715	depends on NET_PCI && (PCI || EISA)
716	---help---
717	  If you have a PCI Ethernet network card based on the ThunderLAN chip
718	  which is supported by this driver, say Y and read the
719	  Ethernet-HOWTO, available from
720	  <http://www.tldp.org/docs.html#howto>.
721
722	  Devices currently supported by this driver are Compaq Netelligent,
723	  Compaq NetFlex and Olicom cards.  Please read the file
724	  <file:Documentation/networking/tlan.txt> for more details.
725
726	  To compile this driver as a module, choose M here. The module
727	  will be called tlan.
728
729	  Please email feedback to <torben.mathiasen@compaq.com>.
730
731config KS8842
732	tristate "Micrel KSZ8841/42 with generic bus interface"
733	depends on HAS_IOMEM && DMA_ENGINE
734	help
735	  This platform driver is for KSZ8841(1-port) / KS8842(2-port)
736	  ethernet switch chip (managed, VLAN, QoS) from Micrel or
737	  Timberdale(FPGA).
738
739config KS8851
740	tristate "Micrel KS8851 SPI"
741	depends on SPI
742	select MII
743	select CRC32
744	help
745	  SPI driver for Micrel KS8851 SPI attached network chip.
746
747config KS8851_MLL
748	tristate "Micrel KS8851 MLL"
749	depends on HAS_IOMEM
750	select MII
751	help
752	  This platform driver is for Micrel KS8851 Address/data bus
753	  multiplexed network chip.
754
755config VIA_RHINE
756	tristate "VIA Rhine support"
757	depends on NET_PCI && PCI
758	select CRC32
759	select MII
760	help
761	  If you have a VIA "Rhine" based network card (Rhine-I (VT86C100A),
762	  Rhine-II (VT6102), or Rhine-III (VT6105)), say Y here. Rhine-type
763	  Ethernet functions can also be found integrated on South Bridges
764	  (e.g. VT8235).
765
766	  To compile this driver as a module, choose M here. The module
767	  will be called via-rhine.
768
769config VIA_RHINE_MMIO
770	bool "Use MMIO instead of PIO"
771	depends on VIA_RHINE
772	help
773	  This instructs the driver to use PCI shared memory (MMIO) instead of
774	  programmed I/O ports (PIO). Enabling this gives an improvement in
775	  processing time in parts of the driver.
776
777	  If unsure, say Y.
778
779config SC92031
780	tristate "Silan SC92031 PCI Fast Ethernet Adapter driver (EXPERIMENTAL)"
781	depends on NET_PCI && PCI && EXPERIMENTAL
782	select CRC32
783	---help---
784	  This is a driver for the Fast Ethernet PCI network cards based on
785	  the Silan SC92031 chip (sometimes also called Rsltek 8139D). If you
786	  have one of these, say Y here.
787
788	  To compile this driver as a module, choose M here: the module
789	  will be called sc92031.  This is recommended.
790
791config CPMAC
792	tristate "TI AR7 CPMAC Ethernet support (EXPERIMENTAL)"
793	depends on NET_ETHERNET && EXPERIMENTAL && AR7
794	select PHYLIB
795	help
796	  TI AR7 CPMAC Ethernet support
797
798config NET_POCKET
799	bool "Pocket and portable adapters"
800	depends on PARPORT
801	---help---
802	  Cute little network (Ethernet) devices which attach to the parallel
803	  port ("pocket adapters"), commonly used with laptops. If you have
804	  one of those, say Y and read the Ethernet-HOWTO, available from
805	  <http://www.tldp.org/docs.html#howto>.
806
807	  If you want to plug a network (or some other) card into the PCMCIA
808	  (or PC-card) slot of your laptop instead (PCMCIA is the standard for
809	  credit card size extension cards used by all modern laptops), you
810	  need the pcmcia-cs package (location contained in the file
811	  <file:Documentation/Changes>) and you can say N here.
812
813	  Laptop users should read the Linux Laptop home page at
814	  <http://www.linux-on-laptops.com/> or
815	  Tuxmobil - Linux on Mobile Computers at <http://www.tuxmobil.org/>.
816
817	  Note that the answer to this question doesn't directly affect the
818	  kernel: saying N will just cause the configurator to skip all
819	  the questions about this class of network devices. If you say Y, you
820	  will be asked for your specific device in the following questions.
821
822config ATP
823	tristate "AT-LAN-TEC/RealTek pocket adapter support"
824	depends on NET_POCKET && PARPORT && X86
825	select CRC32
826	---help---
827	  This is a network (Ethernet) device which attaches to your parallel
828	  port. Read <file:drivers/net/atp.c> as well as the Ethernet-HOWTO,
829	  available from <http://www.tldp.org/docs.html#howto>, if you
830	  want to use this.  If you intend to use this driver, you should have
831	  said N to the "Parallel printer support", because the two drivers
832	  don't like each other.
833
834	  To compile this driver as a module, choose M here: the module
835	  will be called atp.
836
837config DE600
838	tristate "D-Link DE600 pocket adapter support"
839	depends on NET_POCKET && PARPORT
840	---help---
841	  This is a network (Ethernet) device which attaches to your parallel
842	  port. Read <file:Documentation/networking/DLINK.txt> as well as the
843	  Ethernet-HOWTO, available from
844	  <http://www.tldp.org/docs.html#howto>, if you want to use
845	  this. It is possible to have several devices share a single parallel
846	  port and it is safe to compile the corresponding drivers into the
847	  kernel.
848
849	  To compile this driver as a module, choose M here: the module
850	  will be called de600.
851
852config DE620
853	tristate "D-Link DE620 pocket adapter support"
854	depends on NET_POCKET && PARPORT
855	---help---
856	  This is a network (Ethernet) device which attaches to your parallel
857	  port. Read <file:Documentation/networking/DLINK.txt> as well as the
858	  Ethernet-HOWTO, available from
859	  <http://www.tldp.org/docs.html#howto>, if you want to use
860	  this. It is possible to have several devices share a single parallel
861	  port and it is safe to compile the corresponding drivers into the
862	  kernel.
863
864	  To compile this driver as a module, choose M here: the module
865	  will be called de620.
866
867config SGISEEQ
868	tristate "SGI Seeq ethernet controller support"
869	depends on SGI_HAS_SEEQ
870	help
871	  Say Y here if you have an Seeq based Ethernet network card. This is
872	  used in many Silicon Graphics machines.
873
874config FEC
875	bool "FEC ethernet controller (of ColdFire and some i.MX CPUs)"
876	depends on M523x || M527x || M5272 || M528x || M520x || M532x || \
877		IMX_HAVE_PLATFORM_FEC || MXS_HAVE_PLATFORM_FEC
878	default IMX_HAVE_PLATFORM_FEC || MXS_HAVE_PLATFORM_FEC if ARM
879	select PHYLIB
880	help
881	  Say Y here if you want to use the built-in 10/100 Fast ethernet
882	  controller on some Motorola ColdFire and Freescale i.MX processors.
883
884config FEC_MPC52xx
885	tristate "MPC52xx FEC driver"
886	depends on PPC_MPC52xx && PPC_BESTCOMM
887	select CRC32
888	select PHYLIB
889	select PPC_BESTCOMM_FEC
890	---help---
891	  This option enables support for the MPC5200's on-chip
892	  Fast Ethernet Controller
893	  If compiled as module, it will be called fec_mpc52xx.
894
895config FEC_MPC52xx_MDIO
896	bool "MPC52xx FEC MDIO bus driver"
897	depends on FEC_MPC52xx
898	default y
899	---help---
900	  The MPC5200's FEC can connect to the Ethernet either with
901	  an external MII PHY chip or 10 Mbps 7-wire interface
902	  (Motorola? industry standard).
903	  If your board uses an external PHY connected to FEC, enable this.
904	  If not sure, enable.
905	  If compiled as module, it will be called fec_mpc52xx_phy.
906
907config ATL2
908	tristate "Atheros L2 Fast Ethernet support"
909	depends on PCI
910	select CRC32
911	select MII
912	help
913	  This driver supports the Atheros L2 fast ethernet adapter.
914
915	  To compile this driver as a module, choose M here.  The module
916	  will be called atl2.
917
918config XILINX_EMACLITE
919	tristate "Xilinx 10/100 Ethernet Lite support"
920	depends on PPC32 || MICROBLAZE
921	select PHYLIB
922	help
923	  This driver supports the 10/100 Ethernet Lite from Xilinx.
924
925config FTMAC100
926	tristate "Faraday FTMAC100 10/100 Ethernet support"
927	depends on ARM
928	select MII
929	help
930	  This driver supports the FTMAC100 10/100 Ethernet controller
931	  from Faraday. It is used on Faraday A320, Andes AG101 and some
932	  other ARM/NDS32 SoC's.
933
934config LANTIQ_ETOP
935	tristate "Lantiq SoC ETOP driver"
936	depends on SOC_TYPE_XWAY
937	help
938	  Support for the MII0 inside the Lantiq SoC
939
940
941source "drivers/net/fs_enet/Kconfig"
942
943source "drivers/net/octeon/Kconfig"
944
945endif # NET_ETHERNET
946
947#
948#	Gigabit Ethernet
949#
950
951menuconfig NETDEV_1000
952	bool "Ethernet (1000 Mbit)"
953	depends on !UML
954	default y
955	---help---
956	  Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common
957	  type of Local Area Network (LAN) in universities and companies.
958
959	  Say Y here to get to see options for Gigabit Ethernet drivers.
960	  This option alone does not add any kernel code.
961	  Note that drivers supporting both 100 and 1000 MBit may be listed
962	  under "Ethernet (10 or 100MBit)" instead.
963
964	  If you say N, all options in this submenu will be skipped and disabled.
965
966if NETDEV_1000
967
968config DL2K
969	tristate "DL2000/TC902x-based Gigabit Ethernet support"
970	depends on PCI
971	select CRC32
972	help
973	  This driver supports DL2000/TC902x-based Gigabit ethernet cards,
974	  which includes
975	  D-Link DGE-550T Gigabit Ethernet Adapter.
976	  D-Link DL2000-based Gigabit Ethernet Adapter.
977	  Sundance/Tamarack TC902x Gigabit Ethernet Adapter.
978
979	  To compile this driver as a module, choose M here: the
980	  module will be called dl2k.
981
982config IP1000
983	tristate "IP1000 Gigabit Ethernet support"
984	depends on PCI && EXPERIMENTAL
985	select MII
986	---help---
987	  This driver supports IP1000 gigabit Ethernet cards.
988
989	  To compile this driver as a module, choose M here: the module
990	  will be called ipg.  This is recommended.
991
992source "drivers/net/ixp2000/Kconfig"
993
994config HAMACHI
995	tristate "Packet Engines Hamachi GNIC-II support"
996	depends on PCI
997	select MII
998	help
999	  If you have a Gigabit Ethernet card of this type, say Y and read
1000	  the Ethernet-HOWTO, available from
1001	  <http://www.tldp.org/docs.html#howto>.
1002
1003	  To compile this driver as a module, choose M here. The module will be
1004	  called hamachi.
1005
1006config YELLOWFIN
1007	tristate "Packet Engines Yellowfin Gigabit-NIC support (EXPERIMENTAL)"
1008	depends on PCI && EXPERIMENTAL
1009	select CRC32
1010	---help---
1011	  Say Y here if you have a Packet Engines G-NIC PCI Gigabit Ethernet
1012	  adapter or the SYM53C885 Ethernet controller. The Gigabit adapter is
1013	  used by the Beowulf Linux cluster project.  See
1014	  <http://cesdis.gsfc.nasa.gov/linux/drivers/yellowfin.html> for more
1015	  information about this driver in particular and Beowulf in general.
1016
1017	  To compile this driver as a module, choose M here: the module
1018	  will be called yellowfin.  This is recommended.
1019
1020config R8169
1021	tristate "Realtek 8169 gigabit ethernet support"
1022	depends on PCI
1023	select FW_LOADER
1024	select CRC32
1025	select MII
1026	---help---
1027	  Say Y here if you have a Realtek 8169 PCI Gigabit Ethernet adapter.
1028
1029	  To compile this driver as a module, choose M here: the module
1030	  will be called r8169.  This is recommended.
1031
1032config SIS190
1033	tristate "SiS190/SiS191 gigabit ethernet support"
1034	depends on PCI
1035	select CRC32
1036	select MII
1037	---help---
1038	  Say Y here if you have a SiS 190 PCI Fast Ethernet adapter or
1039	  a SiS 191 PCI Gigabit Ethernet adapter. Both are expected to
1040	  appear in lan on motherboard designs which are based on SiS 965
1041	  and SiS 966 south bridge.
1042
1043	  To compile this driver as a module, choose M here: the module
1044	  will be called sis190.  This is recommended.
1045
1046config SKGE
1047	tristate "Marvell Yukon Gigabit Ethernet support"
1048	depends on PCI
1049	select CRC32
1050	---help---
1051	  This driver support the Marvell Yukon or SysKonnect SK-98xx/SK-95xx
1052	  and related Gigabit Ethernet adapters. It is a new smaller driver
1053	  with better performance and more complete ethtool support.
1054
1055	  It does not support the link failover and network management 
1056	  features that "portable" vendor supplied sk98lin driver does.
1057
1058	  This driver supports adapters based on the original Yukon chipset:
1059	  Marvell 88E8001, Belkin F5D5005, CNet GigaCard, DLink DGE-530T,
1060	  Linksys EG1032/EG1064, 3Com 3C940/3C940B, SysKonnect SK-9871/9872.
1061
1062	  It does not support the newer Yukon2 chipset: a separate driver,
1063	  sky2, is provided for these adapters.
1064
1065	  To compile this driver as a module, choose M here: the module
1066	  will be called skge.  This is recommended.
1067
1068config SKGE_DEBUG
1069	bool "Debugging interface"
1070	depends on SKGE && DEBUG_FS
1071	help
1072	  This option adds the ability to dump driver state for debugging.
1073	  The file /sys/kernel/debug/skge/ethX displays the state of the internal
1074	  transmit and receive rings.
1075
1076	  If unsure, say N.
1077
1078config SKGE_GENESIS
1079       bool "Support for older SysKonnect Genesis boards"
1080       depends on SKGE
1081       help
1082         This enables support for the older and uncommon SysKonnect Genesis
1083	 chips, which support MII via an external transceiver, instead of
1084	 an internal one. Disabling this option will save some memory
1085	 by making code smaller. If unsure say Y.
1086
1087config SKY2
1088	tristate "Marvell Yukon 2 support"
1089	depends on PCI
1090	select CRC32
1091	---help---
1092	  This driver supports Gigabit Ethernet adapters based on the
1093	  Marvell Yukon 2 chipset:
1094	  Marvell 88E8021/88E8022/88E8035/88E8036/88E8038/88E8050/88E8052/
1095	  88E8053/88E8055/88E8061/88E8062, SysKonnect SK-9E21D/SK-9S21
1096
1097	  There is companion driver for the older Marvell Yukon and
1098	  SysKonnect Genesis based adapters: skge.
1099
1100	  To compile this driver as a module, choose M here: the module
1101	  will be called sky2.  This is recommended.
1102
1103config SKY2_DEBUG
1104	bool "Debugging interface"
1105	depends on SKY2 && DEBUG_FS
1106	help
1107	  This option adds the ability to dump driver state for debugging.
1108	  The file /sys/kernel/debug/sky2/ethX displays the state of the internal
1109	  transmit and receive rings.
1110
1111	  If unsure, say N.
1112
1113config VIA_VELOCITY
1114	tristate "VIA Velocity support"
1115	depends on PCI
1116	select CRC32
1117	select CRC_CCITT
1118	select MII
1119	help
1120	  If you have a VIA "Velocity" based network card say Y here.
1121
1122	  To compile this driver as a module, choose M here. The module
1123	  will be called via-velocity.
1124
1125config SPIDER_NET
1126	tristate "Spider Gigabit Ethernet driver"
1127	depends on PCI && (PPC_IBM_CELL_BLADE || PPC_CELLEB)
1128	select FW_LOADER
1129	help
1130	  This driver supports the Gigabit Ethernet chips present on the
1131	  Cell Processor-Based Blades from IBM.
1132
1133config TSI108_ETH
1134	tristate "Tundra TSI108 gigabit Ethernet support"
1135	depends on TSI108_BRIDGE
1136	help
1137	  This driver supports Tundra TSI108 gigabit Ethernet ports.
1138	  To compile this driver as a module, choose M here: the module
1139	  will be called tsi108_eth.
1140
1141config GELIC_NET
1142	tristate "PS3 Gigabit Ethernet driver"
1143	depends on PPC_PS3
1144	select PS3_SYS_MANAGER
1145	help
1146	  This driver supports the network device on the PS3 game
1147	  console.  This driver has built-in support for Ethernet.
1148
1149	  To compile this driver as a module, choose M here: the
1150	  module will be called ps3_gelic.
1151
1152config GELIC_WIRELESS
1153	bool "PS3 Wireless support"
1154	depends on WLAN
1155	depends on GELIC_NET
1156	select WIRELESS_EXT
1157	help
1158	  This option adds the support for the wireless feature of PS3.
1159	  If you have the wireless-less model of PS3 or have no plan to
1160	  use wireless feature, disabling this option saves memory.  As
1161	  the driver automatically distinguishes the models, you can
1162	  safely enable this option even if you have a wireless-less model.
1163
1164config FSL_PQ_MDIO
1165	tristate "Freescale PQ MDIO"
1166	depends on FSL_SOC
1167	select PHYLIB
1168	help
1169	  This driver supports the MDIO bus used by the gianfar and UCC drivers.
1170
1171config GIANFAR
1172	tristate "Gianfar Ethernet"
1173	depends on FSL_SOC
1174	select FSL_PQ_MDIO
1175	select PHYLIB
1176	select CRC32
1177	help
1178	  This driver supports the Gigabit TSEC on the MPC83xx, MPC85xx,
1179	  and MPC86xx family of chips, and the FEC on the 8540.
1180
1181config UCC_GETH
1182	tristate "Freescale QE Gigabit Ethernet"
1183	depends on QUICC_ENGINE
1184	select FSL_PQ_MDIO
1185	select PHYLIB
1186	help
1187	  This driver supports the Gigabit Ethernet mode of the QUICC Engine,
1188	  which is available on some Freescale SOCs.
1189
1190config UGETH_TX_ON_DEMAND
1191	bool "Transmit on Demand support"
1192	depends on UCC_GETH
1193
1194config MV643XX_ETH
1195	tristate "Marvell Discovery (643XX) and Orion ethernet support"
1196	depends on (MV64X60 || PPC32 || PLAT_ORION) && INET
1197	select INET_LRO
1198	select PHYLIB
1199	help
1200	  This driver supports the gigabit ethernet MACs in the
1201	  Marvell Discovery PPC/MIPS chipset family (MV643XX) and
1202	  in the Marvell Orion ARM SoC family.
1203
1204	  Some boards that use the Discovery chipset are the Momenco
1205	  Ocelot C and Jaguar ATX and Pegasos II.
1206
1207config XILINX_LL_TEMAC
1208	tristate "Xilinx LL TEMAC (LocalLink Tri-mode Ethernet MAC) driver"
1209	depends on PPC || MICROBLAZE
1210	select PHYLIB
1211	help
1212	  This driver supports the Xilinx 10/100/1000 LocalLink TEMAC
1213	  core used in Xilinx Spartan and Virtex FPGAs
1214
1215config ATL1
1216	tristate "Atheros/Attansic L1 Gigabit Ethernet support"
1217	depends on PCI
1218	select CRC32
1219	select MII
1220	help
1221	  This driver supports the Atheros/Attansic L1 gigabit ethernet
1222	  adapter.
1223
1224	  To compile this driver as a module, choose M here.  The module
1225	  will be called atl1.
1226
1227config ATL1E
1228	tristate "Atheros L1E Gigabit Ethernet support (EXPERIMENTAL)"
1229	depends on PCI && EXPERIMENTAL
1230	select CRC32
1231	select MII
1232	help
1233	  This driver supports the Atheros L1E gigabit ethernet adapter.
1234
1235	  To compile this driver as a module, choose M here.  The module
1236	  will be called atl1e.
1237
1238config ATL1C
1239	tristate "Atheros L1C Gigabit Ethernet support (EXPERIMENTAL)"
1240	depends on PCI && EXPERIMENTAL
1241	select CRC32
1242	select MII
1243	help
1244	  This driver supports the Atheros L1C gigabit ethernet adapter.
1245
1246	  To compile this driver as a module, choose M here.  The module
1247	  will be called atl1c.
1248
1249config JME
1250	tristate "JMicron(R) PCI-Express Gigabit Ethernet support"
1251	depends on PCI
1252	select CRC32
1253	select MII
1254	---help---
1255	  This driver supports the PCI-Express gigabit ethernet adapters
1256	  based on JMicron JMC250 chipset.
1257
1258	  To compile this driver as a module, choose M here. The module
1259	  will be called jme.
1260
1261config S6GMAC
1262	tristate "S6105 GMAC ethernet support"
1263	depends on XTENSA_VARIANT_S6000
1264	select PHYLIB
1265	help
1266	  This driver supports the on chip ethernet device on the
1267	  S6105 xtensa processor.
1268
1269	  To compile this driver as a module, choose M here. The module
1270	  will be called s6gmac.
1271
1272config PCH_GBE
1273	tristate "Intel EG20T PCH / OKI SEMICONDUCTOR ML7223 IOH GbE"
1274	depends on PCI
1275	select MII
1276	---help---
1277	  This is a gigabit ethernet driver for EG20T PCH.
1278	  EG20T PCH is the platform controller hub that is used in Intel's
1279	  general embedded platform.
1280	  EG20T PCH has Gigabit Ethernet interface.
1281	  Using this interface, it is able to access system devices connected
1282	  to Gigabit Ethernet.
1283	  This driver enables Gigabit Ethernet function.
1284
1285	  This driver also can be used for OKI SEMICONDUCTOR IOH(Input/
1286	  Output Hub), ML7223.
1287	  ML7223 IOH is for MP(Media Phone) use.
1288	  ML7223 is companion chip for Intel Atom E6xx series.
1289	  ML7223 is completely compatible for Intel EG20T PCH.
1290
1291config FTGMAC100
1292	tristate "Faraday FTGMAC100 Gigabit Ethernet support"
1293	depends on ARM
1294	select PHYLIB
1295	help
1296	  This driver supports the FTGMAC100 Gigabit Ethernet controller
1297	  from Faraday. It is used on Faraday A369, Andes AG102 and some
1298	  other ARM/NDS32 SoC's.
1299
1300endif # NETDEV_1000
1301
1302#
1303#	10 Gigabit Ethernet
1304#
1305
1306menuconfig NETDEV_10000
1307	bool "Ethernet (10000 Mbit)"
1308	depends on !UML
1309	default y
1310	---help---
1311	  Say Y here to get to see options for 10 Gigabit Ethernet drivers.
1312	  This option alone does not add any kernel code.
1313
1314	  If you say N, all options in this submenu will be skipped and disabled.
1315
1316if NETDEV_10000
1317
1318config MDIO
1319	tristate
1320
1321endif # NETDEV_10000
1322
1323source "drivers/net/tokenring/Kconfig"
1324
1325source "drivers/net/wireless/Kconfig"
1326
1327source "drivers/net/wimax/Kconfig"
1328
1329source "drivers/net/usb/Kconfig"
1330
1331source "drivers/net/pcmcia/Kconfig"
1332
1333source "drivers/net/wan/Kconfig"
1334
1335source "drivers/atm/Kconfig"
1336
1337source "drivers/ieee802154/Kconfig"
1338
1339source "drivers/s390/net/Kconfig"
1340
1341source "drivers/net/caif/Kconfig"
1342
1343config TILE_NET
1344	tristate "Tilera GBE/XGBE network driver support"
1345	depends on TILE
1346	default y
1347	select CRC32
1348	help
1349	  This is a standard Linux network device driver for the
1350	  on-chip Tilera Gigabit Ethernet and XAUI interfaces.
1351
1352	  To compile this driver as a module, choose M here: the module
1353	  will be called tile_net.
1354
1355config XEN_NETDEV_FRONTEND
1356	tristate "Xen network device frontend driver"
1357	depends on XEN
1358	select XEN_XENBUS_FRONTEND
1359	default y
1360	help
1361	  This driver provides support for Xen paravirtual network
1362	  devices exported by a Xen network driver domain (often
1363	  domain 0).
1364
1365	  The corresponding Linux backend driver is enabled by the
1366	  CONFIG_XEN_NETDEV_BACKEND option.
1367
1368	  If you are compiling a kernel for use as Xen guest, you
1369	  should say Y here. To compile this driver as a module, chose
1370	  M here: the module will be called xen-netfront.
1371
1372config XEN_NETDEV_BACKEND
1373	tristate "Xen backend network device"
1374	depends on XEN_BACKEND
1375	help
1376	  This driver allows the kernel to act as a Xen network driver
1377	  domain which exports paravirtual network devices to other
1378	  Xen domains. These devices can be accessed by any operating
1379	  system that implements a compatible front end.
1380
1381	  The corresponding Linux frontend driver is enabled by the
1382	  CONFIG_XEN_NETDEV_FRONTEND configuration option.
1383
1384	  The backend driver presents a standard network device
1385	  endpoint for each paravirtual network device to the driver
1386	  domain network stack. These can then be bridged or routed
1387	  etc in order to provide full network connectivity.
1388
1389	  If you are compiling a kernel to run in a Xen network driver
1390	  domain (often this is domain 0) you should say Y here. To
1391	  compile this driver as a module, chose M here: the module
1392	  will be called xen-netback.
1393
1394config RIONET
1395	tristate "RapidIO Ethernet over messaging driver support"
1396	depends on RAPIDIO
1397
1398config RIONET_TX_SIZE
1399	int "Number of outbound queue entries"
1400	depends on RIONET
1401	default "128"
1402
1403config RIONET_RX_SIZE
1404	int "Number of inbound queue entries"
1405	depends on RIONET
1406	default "128"
1407
1408config FDDI
1409	tristate "FDDI driver support"
1410	depends on (PCI || EISA || TC)
1411	help
1412	  Fiber Distributed Data Interface is a high speed local area network
1413	  design; essentially a replacement for high speed Ethernet. FDDI can
1414	  run over copper or fiber. If you are connected to such a network and
1415	  want a driver for the FDDI card in your computer, say Y here (and
1416	  then also Y to the driver for your FDDI card, below). Most people
1417	  will say N.
1418
1419config DEFXX
1420	tristate "Digital DEFTA/DEFEA/DEFPA adapter support"
1421	depends on FDDI && (PCI || EISA || TC)
1422	---help---
1423	  This is support for the DIGITAL series of TURBOchannel (DEFTA),
1424	  EISA (DEFEA) and PCI (DEFPA) controllers which can connect you
1425	  to a local FDDI network.
1426
1427	  To compile this driver as a module, choose M here: the module
1428	  will be called defxx.  If unsure, say N.
1429
1430config DEFXX_MMIO
1431	bool
1432	prompt "Use MMIO instead of PIO" if PCI || EISA
1433	depends on DEFXX
1434	default n if PCI || EISA
1435	default y
1436	---help---
1437	  This instructs the driver to use EISA or PCI memory-mapped I/O
1438	  (MMIO) as appropriate instead of programmed I/O ports (PIO).
1439	  Enabling this gives an improvement in processing time in parts
1440	  of the driver, but it may cause problems with EISA (DEFEA)
1441	  adapters.  TURBOchannel does not have the concept of I/O ports,
1442	  so MMIO is always used for these (DEFTA) adapters.
1443
1444	  If unsure, say N.
1445
1446config SKFP
1447	tristate "SysKonnect FDDI PCI support"
1448	depends on FDDI && PCI
1449	select BITREVERSE
1450	---help---
1451	  Say Y here if you have a SysKonnect FDDI PCI adapter.
1452	  The following adapters are supported by this driver:
1453	  - SK-5521 (SK-NET FDDI-UP)
1454	  - SK-5522 (SK-NET FDDI-UP DAS)
1455	  - SK-5541 (SK-NET FDDI-FP)
1456	  - SK-5543 (SK-NET FDDI-LP)
1457	  - SK-5544 (SK-NET FDDI-LP DAS)
1458	  - SK-5821 (SK-NET FDDI-UP64)
1459	  - SK-5822 (SK-NET FDDI-UP64 DAS)
1460	  - SK-5841 (SK-NET FDDI-FP64)
1461	  - SK-5843 (SK-NET FDDI-LP64)
1462	  - SK-5844 (SK-NET FDDI-LP64 DAS)
1463	  - Netelligent 100 FDDI DAS Fibre SC
1464	  - Netelligent 100 FDDI SAS Fibre SC
1465	  - Netelligent 100 FDDI DAS UTP
1466	  - Netelligent 100 FDDI SAS UTP
1467	  - Netelligent 100 FDDI SAS Fibre MIC
1468
1469	  Read <file:Documentation/networking/skfp.txt> for information about
1470	  the driver.
1471
1472	  Questions concerning this driver can be addressed to:
1473	  <linux@syskonnect.de>
1474
1475	  To compile this driver as a module, choose M here: the module
1476	  will be called skfp.  This is recommended.
1477
1478config HIPPI
1479	bool "HIPPI driver support (EXPERIMENTAL)"
1480	depends on EXPERIMENTAL && INET && PCI
1481	help
1482	  HIgh Performance Parallel Interface (HIPPI) is a 800Mbit/sec and
1483	  1600Mbit/sec dual-simplex switched or point-to-point network. HIPPI
1484	  can run over copper (25m) or fiber (300m on multi-mode or 10km on
1485	  single-mode). HIPPI networks are commonly used for clusters and to
1486	  connect to super computers. If you are connected to a HIPPI network
1487	  and have a HIPPI network card in your computer that you want to use
1488	  under Linux, say Y here (you must also remember to enable the driver
1489	  for your HIPPI card below). Most people will say N here.
1490
1491config ROADRUNNER
1492	tristate "Essential RoadRunner HIPPI PCI adapter support (EXPERIMENTAL)"
1493	depends on HIPPI && PCI
1494	help
1495	  Say Y here if this is your PCI HIPPI network card.
1496
1497	  To compile this driver as a module, choose M here: the module
1498	  will be called rrunner.  If unsure, say N.
1499
1500config ROADRUNNER_LARGE_RINGS
1501	bool "Use large TX/RX rings (EXPERIMENTAL)"
1502	depends on ROADRUNNER
1503	help
1504	  If you say Y here, the RoadRunner driver will preallocate up to 2 MB
1505	  of additional memory to allow for fastest operation, both for
1506	  transmitting and receiving. This memory cannot be used by any other
1507	  kernel code or by user space programs. Say Y here only if you have
1508	  the memory.
1509
1510config PLIP
1511	tristate "PLIP (parallel port) support"
1512	depends on PARPORT
1513	---help---
1514	  PLIP (Parallel Line Internet Protocol) is used to create a
1515	  reasonably fast mini network consisting of two (or, rarely, more)
1516	  local machines.  A PLIP link from a Linux box is a popular means to
1517	  install a Linux distribution on a machine which doesn't have a
1518	  CD-ROM drive (a minimal system has to be transferred with floppies
1519	  first). The kernels on both machines need to have this PLIP option
1520	  enabled for this to work.
1521
1522	  The PLIP driver has two modes, mode 0 and mode 1.  The parallel
1523	  ports (the connectors at the computers with 25 holes) are connected
1524	  with "null printer" or "Turbo Laplink" cables which can transmit 4
1525	  bits at a time (mode 0) or with special PLIP cables, to be used on
1526	  bidirectional parallel ports only, which can transmit 8 bits at a
1527	  time (mode 1); you can find the wiring of these cables in
1528	  <file:Documentation/networking/PLIP.txt>.  The cables can be up to
1529	  15m long.  Mode 0 works also if one of the machines runs DOS/Windows
1530	  and has some PLIP software installed, e.g. the Crynwr PLIP packet
1531	  driver (<http://oak.oakland.edu/simtel.net/msdos/pktdrvr-pre.html>)
1532	  and winsock or NCSA's telnet.
1533
1534	  If you want to use PLIP, say Y and read the PLIP mini-HOWTO as well
1535	  as the NET-3-HOWTO, both available from
1536	  <http://www.tldp.org/docs.html#howto>.  Note that the PLIP
1537	  protocol has been changed and this PLIP driver won't work together
1538	  with the PLIP support in Linux versions 1.0.x.  This option enlarges
1539	  your kernel by about 8 KB.
1540
1541	  To compile this driver as a module, choose M here. The module
1542	  will be called plip. If unsure, say Y or M, in case you buy
1543	  a laptop later.
1544
1545config PPP
1546	tristate "PPP (point-to-point protocol) support"
1547	select SLHC
1548	---help---
1549	  PPP (Point to Point Protocol) is a newer and better SLIP.  It serves
1550	  the same purpose: sending Internet traffic over telephone (and other
1551	  serial) lines.  Ask your access provider if they support it, because
1552	  otherwise you can't use it; most Internet access providers these
1553	  days support PPP rather than SLIP.
1554
1555	  To use PPP, you need an additional program called pppd as described
1556	  in the PPP-HOWTO, available at
1557	  <http://www.tldp.org/docs.html#howto>.  Make sure that you have
1558	  the version of pppd recommended in <file:Documentation/Changes>.
1559	  The PPP option enlarges your kernel by about 16 KB.
1560
1561	  There are actually two versions of PPP: the traditional PPP for
1562	  asynchronous lines, such as regular analog phone lines, and
1563	  synchronous PPP which can be used over digital ISDN lines for
1564	  example.  If you want to use PPP over phone lines or other
1565	  asynchronous serial lines, you need to say Y (or M) here and also to
1566	  the next option, "PPP support for async serial ports".  For PPP over
1567	  synchronous lines, you should say Y (or M) here and to "Support
1568	  synchronous PPP", below.
1569
1570	  If you said Y to "Version information on all symbols" above, then
1571	  you cannot compile the PPP driver into the kernel; you can then only
1572	  compile it as a module. To compile this driver as a module, choose M
1573	  here. The module will be called ppp_generic.
1574
1575config PPP_MULTILINK
1576	bool "PPP multilink support (EXPERIMENTAL)"
1577	depends on PPP && EXPERIMENTAL
1578	help
1579	  PPP multilink is a protocol (defined in RFC 1990) which allows you
1580	  to combine several (logical or physical) lines into one logical PPP
1581	  connection, so that you can utilize your full bandwidth.
1582
1583	  This has to be supported at the other end as well and you need a
1584	  version of the pppd daemon which understands the multilink protocol.
1585
1586	  If unsure, say N.
1587
1588config PPP_FILTER
1589	bool "PPP filtering"
1590	depends on PPP
1591	help
1592	  Say Y here if you want to be able to filter the packets passing over
1593	  PPP interfaces.  This allows you to control which packets count as
1594	  activity (i.e. which packets will reset the idle timer or bring up
1595	  a demand-dialed link) and which packets are to be dropped entirely.
1596	  You need to say Y here if you wish to use the pass-filter and
1597	  active-filter options to pppd.
1598
1599	  If unsure, say N.
1600
1601config PPP_ASYNC
1602	tristate "PPP support for async serial ports"
1603	depends on PPP
1604	select CRC_CCITT
1605	---help---
1606	  Say Y (or M) here if you want to be able to use PPP over standard
1607	  asynchronous serial ports, such as COM1 or COM2 on a PC.  If you use
1608	  a modem (not a synchronous or ISDN modem) to contact your ISP, you
1609	  need this option.
1610
1611	  To compile this driver as a module, choose M here.
1612
1613	  If unsure, say Y.
1614
1615config PPP_SYNC_TTY
1616	tristate "PPP support for sync tty ports"
1617	depends on PPP
1618	help
1619	  Say Y (or M) here if you want to be able to use PPP over synchronous
1620	  (HDLC) tty devices, such as the SyncLink adapter. These devices
1621	  are often used for high-speed leased lines like T1/E1.
1622
1623	  To compile this driver as a module, choose M here.
1624
1625config PPP_DEFLATE
1626	tristate "PPP Deflate compression"
1627	depends on PPP
1628	select ZLIB_INFLATE
1629	select ZLIB_DEFLATE
1630	---help---
1631	  Support for the Deflate compression method for PPP, which uses the
1632	  Deflate algorithm (the same algorithm that gzip uses) to compress
1633	  each PPP packet before it is sent over the wire.  The machine at the
1634	  other end of the PPP link (usually your ISP) has to support the
1635	  Deflate compression method as well for this to be useful.  Even if
1636	  they don't support it, it is safe to say Y here.
1637
1638	  To compile this driver as a module, choose M here.
1639
1640config PPP_BSDCOMP
1641	tristate "PPP BSD-Compress compression"
1642	depends on PPP
1643	---help---
1644	  Support for the BSD-Compress compression method for PPP, which uses
1645	  the LZW compression method to compress each PPP packet before it is
1646	  sent over the wire. The machine at the other end of the PPP link
1647	  (usually your ISP) has to support the BSD-Compress compression
1648	  method as well for this to be useful. Even if they don't support it,
1649	  it is safe to say Y here.
1650
1651	  The PPP Deflate compression method ("PPP Deflate compression",
1652	  above) is preferable to BSD-Compress, because it compresses better
1653	  and is patent-free.
1654
1655	  Note that the BSD compression code will always be compiled as a
1656	  module; it is called bsd_comp and will show up in the directory
1657	  modules once you have said "make modules". If unsure, say N.
1658
1659config PPP_MPPE
1660	tristate "PPP MPPE compression (encryption) (EXPERIMENTAL)"
1661	depends on PPP && EXPERIMENTAL
1662	select CRYPTO
1663	select CRYPTO_SHA1
1664	select CRYPTO_ARC4
1665	select CRYPTO_ECB
1666	---help---
1667	  Support for the MPPE Encryption protocol, as employed by the
1668	  Microsoft Point-to-Point Tunneling Protocol.
1669
1670	  See http://pptpclient.sourceforge.net/ for information on
1671	  configuring PPTP clients and servers to utilize this method.
1672
1673config PPPOE
1674	tristate "PPP over Ethernet (EXPERIMENTAL)"
1675	depends on EXPERIMENTAL && PPP
1676	help
1677	  Support for PPP over Ethernet.
1678
1679	  This driver requires the latest version of pppd from the CVS
1680	  repository at cvs.samba.org.  Alternatively, see the 
1681	  RoaringPenguin package (<http://www.roaringpenguin.com/pppoe>)
1682	  which contains instruction on how to use this driver (under 
1683	  the heading "Kernel mode PPPoE").
1684
1685config PPTP
1686	tristate "PPP over IPv4 (PPTP) (EXPERIMENTAL)"
1687	depends on EXPERIMENTAL && PPP && NET_IPGRE_DEMUX
1688	help
1689	  Support for PPP over IPv4.(Point-to-Point Tunneling Protocol)
1690
1691	  This driver requires pppd plugin to work in client mode or
1692	  modified pptpd (poptop) to work in server mode.
1693	  See http://accel-pptp.sourceforge.net/ for information how to
1694	  utilize this module.
1695
1696config PPPOATM
1697	tristate "PPP over ATM"
1698	depends on ATM && PPP
1699	help
1700	  Support PPP (Point to Point Protocol) encapsulated in ATM frames.
1701	  This implementation does not yet comply with section 8 of RFC2364,
1702	  which can lead to bad results if the ATM peer loses state and
1703	  changes its encapsulation unilaterally.
1704
1705config PPPOL2TP
1706	tristate "PPP over L2TP (EXPERIMENTAL)"
1707	depends on EXPERIMENTAL && L2TP && PPP
1708	help
1709	  Support for PPP-over-L2TP socket family. L2TP is a protocol
1710	  used by ISPs and enterprises to tunnel PPP traffic over UDP
1711	  tunnels. L2TP is replacing PPTP for VPN uses.
1712
1713config SLIP
1714	tristate "SLIP (serial line) support"
1715	---help---
1716	  Say Y if you intend to use SLIP or CSLIP (compressed SLIP) to
1717	  connect to your Internet service provider or to connect to some
1718	  other local Unix box or if you want to configure your Linux box as a
1719	  Slip/CSlip server for other people to dial in. SLIP (Serial Line
1720	  Internet Protocol) is a protocol used to send Internet traffic over
1721	  serial connections such as telephone lines or null modem cables;
1722	  nowadays, the protocol PPP is more commonly used for this same
1723	  purpose.
1724
1725	  Normally, your access provider has to support SLIP in order for you
1726	  to be able to use it, but there is now a SLIP emulator called SLiRP
1727	  around (available from
1728	  <ftp://ibiblio.org/pub/Linux/system/network/serial/>) which
1729	  allows you to use SLIP over a regular dial up shell connection. If
1730	  you plan to use SLiRP, make sure to say Y to CSLIP, below. The
1731	  NET-3-HOWTO, available from
1732	  <http://www.tldp.org/docs.html#howto>, explains how to
1733	  configure SLIP. Note that you don't need this option if you just
1734	  want to run term (term is a program which gives you almost full
1735	  Internet connectivity if you have a regular dial up shell account on
1736	  some Internet connected Unix computer. Read
1737	  <http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>). SLIP
1738	  support will enlarge your kernel by about 4 KB. If unsure, say N.
1739
1740	  To compile this driver as a module, choose M here. The module
1741	  will be called slip.
1742
1743config SLIP_COMPRESSED
1744	bool "CSLIP compressed headers"
1745	depends on SLIP
1746	select SLHC
1747	---help---
1748	  This protocol is faster than SLIP because it uses compression on the
1749	  TCP/IP headers (not on the data itself), but it has to be supported
1750	  on both ends. Ask your access provider if you are not sure and
1751	  answer Y, just in case. You will still be able to use plain SLIP. If
1752	  you plan to use SLiRP, the SLIP emulator (available from
1753	  <ftp://ibiblio.org/pub/Linux/system/network/serial/>) which
1754	  allows you to use SLIP over a regular dial up shell connection, you
1755	  definitely want to say Y here. The NET-3-HOWTO, available from
1756	  <http://www.tldp.org/docs.html#howto>, explains how to configure
1757	  CSLIP. This won't enlarge your kernel.
1758
1759config SLHC
1760	tristate
1761	help
1762	  This option enables Van Jacobsen serial line header compression
1763	  routines.
1764
1765config SLIP_SMART
1766	bool "Keepalive and linefill"
1767	depends on SLIP
1768	help
1769	  Adds additional capabilities to the SLIP driver to support the
1770	  RELCOM line fill and keepalive monitoring. Ideal on poor quality
1771	  analogue lines.
1772
1773config SLIP_MODE_SLIP6
1774	bool "Six bit SLIP encapsulation"
1775	depends on SLIP
1776	help
1777	  Just occasionally you may need to run IP over hostile serial
1778	  networks that don't pass all control characters or are only seven
1779	  bit. Saying Y here adds an extra mode you can use with SLIP:
1780	  "slip6". In this mode, SLIP will only send normal ASCII symbols over
1781	  the serial device. Naturally, this has to be supported at the other
1782	  end of the link as well. It's good enough, for example, to run IP
1783	  over the async ports of a Camtec JNT Pad. If unsure, say N.
1784
1785config NET_FC
1786	bool "Fibre Channel driver support"
1787	depends on SCSI && PCI
1788	help
1789	  Fibre Channel is a high speed serial protocol mainly used to connect
1790	  large storage devices to the computer; it is compatible with and
1791	  intended to replace SCSI.
1792
1793	  If you intend to use Fibre Channel, you need to have a Fibre channel
1794	  adaptor card in your computer; say Y here and to the driver for your
1795	  adaptor below. You also should have said Y to "SCSI support" and
1796	  "SCSI generic support".
1797
1798config NETCONSOLE
1799	tristate "Network console logging support"
1800	---help---
1801	If you want to log kernel messages over the network, enable this.
1802	See <file:Documentation/networking/netconsole.txt> for details.
1803
1804config NETCONSOLE_DYNAMIC
1805	bool "Dynamic reconfiguration of logging targets"
1806	depends on NETCONSOLE && SYSFS && CONFIGFS_FS && \
1807			!(NETCONSOLE=y && CONFIGFS_FS=m)
1808	help
1809	  This option enables the ability to dynamically reconfigure target
1810	  parameters (interface, IP addresses, port numbers, MAC addresses)
1811	  at runtime through a userspace interface exported using configfs.
1812	  See <file:Documentation/networking/netconsole.txt> for details.
1813
1814config NETPOLL
1815	def_bool NETCONSOLE
1816
1817config NETPOLL_TRAP
1818	bool "Netpoll traffic trapping"
1819	default n
1820	depends on NETPOLL
1821
1822config NET_POLL_CONTROLLER
1823	def_bool NETPOLL
1824
1825config VIRTIO_NET
1826	tristate "Virtio network driver (EXPERIMENTAL)"
1827	depends on EXPERIMENTAL && VIRTIO
1828	---help---
1829	  This is the virtual network driver for virtio.  It can be used with
1830	  lguest or QEMU based VMMs (like KVM or Xen).  Say Y or M.
1831
1832config VMXNET3
1833	tristate "VMware VMXNET3 ethernet driver"
1834	depends on PCI && INET
1835	help
1836	  This driver supports VMware's vmxnet3 virtual ethernet NIC.
1837	  To compile this driver as a module, choose M here: the
1838	  module will be called vmxnet3.
1839
1840endif # NETDEVICES
1841