blob: 5db9acbc0cae31efb3c845c3c1d4949467113879 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# Network device configuration
3#
4
Jan Engelhardtd1c0a652007-06-13 12:48:53 -07005menuconfig NETDEVICES
Paolo 'Blaisorblade' Giarrussoce2d2ae2006-01-18 17:42:59 -08006 default y if UML
Jan Engelhardte0009822007-07-21 19:11:35 -07007 depends on NET
Linus Torvalds1da177e2005-04-16 15:20:36 -07008 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
Randy Dunlap1618cb02006-09-25 23:11:21 -070024# All the following symbols are dependent on NETDEVICES - do not repeat
25# that for each of the symbols.
26if NETDEVICES
Randy Dunlapcbcd2a42005-07-27 13:04:35 -070027
Jeff Kirsher88491d82011-08-23 00:42:10 -070028config NET_CORE
29 default y
30 bool "Network core driver support"
Jamal Hadi Salim253af422006-01-08 22:34:25 -080031 ---help---
Jeff Kirsher88491d82011-08-23 00:42:10 -070032 You can say N here if you do not intend to use any of the
33 networking core drivers (i.e. VLAN, bridging, bonding, etc.)
34
35if NET_CORE
36
37config BONDING
38 tristate "Bonding driver support"
39 depends on INET
40 depends on IPV6 || IPV6=n
41 ---help---
42 Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet
43 Channels together. This is called 'Etherchannel' by Cisco,
44 'Trunking' by Sun, 802.3ad by the IEEE, and 'Bonding' in Linux.
45
46 The driver supports multiple bonding modes to allow for both high
47 performance and high availability operation.
48
49 Refer to <file:Documentation/networking/bonding.txt> for more
50 information.
51
Jamal Hadi Salim253af422006-01-08 22:34:25 -080052 To compile this driver as a module, choose M here: the module
Jeff Kirsher88491d82011-08-23 00:42:10 -070053 will be called bonding.
Jamal Hadi Salim253af422006-01-08 22:34:25 -080054
Linus Torvalds1da177e2005-04-16 15:20:36 -070055config DUMMY
56 tristate "Dummy net driver support"
Linus Torvalds1da177e2005-04-16 15:20:36 -070057 ---help---
58 This is essentially a bit-bucket device (i.e. traffic you send to
59 this device is consigned into oblivion) with a configurable IP
60 address. It is most commonly used in order to make your currently
61 inactive SLIP address seem like a real address for local programs.
62 If you use SLIP or PPP, you might want to say Y here. Since this
63 thing often comes in handy, the default is Y. It won't enlarge your
64 kernel either. What a deal. Read about it in the Network
65 Administrator's Guide, available from
66 <http://www.tldp.org/docs.html#guide>.
67
68 To compile this driver as a module, choose M here: the module
Alan Cox9f486612012-05-14 03:57:31 +000069 will be called dummy.
Linus Torvalds1da177e2005-04-16 15:20:36 -070070
Jeff Kirsher88491d82011-08-23 00:42:10 -070071config EQUALIZER
72 tristate "EQL (serial line load balancing) support"
Linus Torvalds1da177e2005-04-16 15:20:36 -070073 ---help---
Jeff Kirsher88491d82011-08-23 00:42:10 -070074 If you have two serial connections to some other computer (this
75 usually requires two modems and two telephone lines) and you use
76 SLIP (the protocol for sending Internet traffic over telephone
77 lines) or PPP (a better SLIP) on them, you can make them behave like
78 one double speed connection using this driver. Naturally, this has
79 to be supported at the other end as well, either with a similar EQL
80 Linux driver or with a Livingston Portmaster 2e.
Linus Torvalds1da177e2005-04-16 15:20:36 -070081
Jeff Kirsher88491d82011-08-23 00:42:10 -070082 Say Y if you want this and read
83 <file:Documentation/networking/eql.txt>. You may also want to read
84 section 6.2 of the NET-3-HOWTO, available from
85 <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -070086
87 To compile this driver as a module, choose M here: the module
Jeff Kirsher88491d82011-08-23 00:42:10 -070088 will be called eql. If unsure, say N.
89
90config NET_FC
91 bool "Fibre Channel driver support"
92 depends on SCSI && PCI
93 help
94 Fibre Channel is a high speed serial protocol mainly used to connect
95 large storage devices to the computer; it is compatible with and
96 intended to replace SCSI.
97
98 If you intend to use Fibre Channel, you need to have a Fibre channel
99 adaptor card in your computer; say Y here and to the driver for your
100 adaptor below. You also should have said Y to "SCSI support" and
101 "SCSI generic support".
102
103config MII
104 tristate "Generic Media Independent Interface device support"
105 help
106 Most ethernet controllers have MII transceiver either as an external
107 or internal device. It is safe to say Y or M here even if your
108 ethernet card lacks MII.
109
Jeff Kirsher88491d82011-08-23 00:42:10 -0700110config IFB
111 tristate "Intermediate Functional Block support"
112 depends on NET_CLS_ACT
113 ---help---
114 This is an intermediate driver that allows sharing of
115 resources.
116 To compile this driver as a module, choose M here: the module
117 will be called ifb. If you want to use more than one ifb
118 device at a time, you need to compile this driver as a module.
119 Instead of 'ifb', the devices will then be called 'ifb0',
120 'ifb1' etc.
121 Look at the iproute2 documentation directory for usage etc
Linus Torvalds1da177e2005-04-16 15:20:36 -0700122
Jiri Pirko3d249d42011-11-11 22:16:48 +0000123source "drivers/net/team/Kconfig"
124
Patrick McHardyb863ceb2007-07-14 18:55:06 -0700125config MACVLAN
126 tristate "MAC-VLAN support (EXPERIMENTAL)"
127 depends on EXPERIMENTAL
128 ---help---
129 This allows one to create virtual interfaces that map packets to
130 or from specific MAC addresses to a particular interface.
131
Patrick McHardy3dbf8d52008-02-26 17:52:05 -0800132 Macvlan devices can be added using the "ip" command from the
133 iproute2 package starting with the iproute2-2.6.23 release:
134
135 "ip link add link <real dev> [ address MAC ] [ NAME ] type macvlan"
136
Patrick McHardyb863ceb2007-07-14 18:55:06 -0700137 To compile this driver as a module, choose M here: the module
138 will be called macvlan.
139
Arnd Bergmann20d29d72010-01-30 12:24:26 +0000140config MACVTAP
141 tristate "MAC-VLAN based tap driver (EXPERIMENTAL)"
142 depends on MACVLAN
143 help
144 This adds a specialized tap character device driver that is based
145 on the MAC-VLAN network interface, called macvtap. A macvtap device
146 can be added in the same way as a macvlan device, using 'type
147 macvlan', and then be accessed through the tap user space interface.
148
149 To compile this driver as a module, choose M here: the module
150 will be called macvtap.
151
stephen hemmingerd3428942012-10-01 12:32:35 +0000152config VXLAN
153 tristate "Virtual eXtensible Local Area Network (VXLAN)"
David S. Milleraaba1f52012-10-02 14:37:31 -0400154 depends on EXPERIMENTAL && INET
stephen hemmingerd3428942012-10-01 12:32:35 +0000155 ---help---
156 This allows one to create vxlan virtual interfaces that provide
157 Layer 2 Networks over Layer 3 Networks. VXLAN is often used
158 to tunnel virtual network infrastructure in virtualized environments.
159 For more information see:
160 http://tools.ietf.org/html/draft-mahalingam-dutt-dcops-vxlan-02
161
162 To compile this driver as a module, choose M here: the module
163 will be called vxlan.
164
Jeff Kirsher88491d82011-08-23 00:42:10 -0700165config NETCONSOLE
166 tristate "Network console logging support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700167 ---help---
Jeff Kirsher88491d82011-08-23 00:42:10 -0700168 If you want to log kernel messages over the network, enable this.
169 See <file:Documentation/networking/netconsole.txt> for details.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700170
Jeff Kirsher88491d82011-08-23 00:42:10 -0700171config NETCONSOLE_DYNAMIC
172 bool "Dynamic reconfiguration of logging targets"
173 depends on NETCONSOLE && SYSFS && CONFIGFS_FS && \
174 !(NETCONSOLE=y && CONFIGFS_FS=m)
175 help
176 This option enables the ability to dynamically reconfigure target
177 parameters (interface, IP addresses, port numbers, MAC addresses)
178 at runtime through a userspace interface exported using configfs.
179 See <file:Documentation/networking/netconsole.txt> for details.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700180
Jeff Kirsher88491d82011-08-23 00:42:10 -0700181config NETPOLL
182 def_bool NETCONSOLE
183
184config NETPOLL_TRAP
185 bool "Netpoll traffic trapping"
186 default n
187 depends on NETPOLL
188
189config NET_POLL_CONTROLLER
190 def_bool NETPOLL
191
Jon Mason548c2372012-11-16 19:27:13 -0700192config NTB_NETDEV
193 tristate "Virtual Ethernet over NTB"
194 depends on NTB
195
Jeff Kirsher88491d82011-08-23 00:42:10 -0700196config RIONET
197 tristate "RapidIO Ethernet over messaging driver support"
198 depends on RAPIDIO
199
200config RIONET_TX_SIZE
201 int "Number of outbound queue entries"
202 depends on RIONET
203 default "128"
204
205config RIONET_RX_SIZE
206 int "Number of inbound queue entries"
207 depends on RIONET
208 default "128"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700209
210config TUN
211 tristate "Universal TUN/TAP device driver support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700212 select CRC32
213 ---help---
214 TUN/TAP provides packet reception and transmission for user space
215 programs. It can be viewed as a simple Point-to-Point or Ethernet
216 device, which instead of receiving packets from a physical media,
217 receives them from user space program and instead of sending packets
218 via physical media writes them to the user space program.
219
220 When a program opens /dev/net/tun, driver creates and registers
221 corresponding net device tunX or tapX. After a program closed above
222 devices, driver will automatically delete tunXX or tapXX device and
223 all routes corresponding to it.
224
225 Please read <file:Documentation/networking/tuntap.txt> for more
226 information.
227
228 To compile this driver as a module, choose M here: the module
229 will be called tun.
230
231 If you don't know what to use this for, you don't need it.
232
Pavel Emelyanove314dbd2007-09-25 16:14:46 -0700233config VETH
Rusty Russell6a9a0252007-11-06 20:35:55 -0800234 tristate "Virtual ethernet pair device"
Pavel Emelyanove314dbd2007-09-25 16:14:46 -0700235 ---help---
Rusty Russell6a9a0252007-11-06 20:35:55 -0800236 This device is a local ethernet tunnel. Devices are created in pairs.
237 When one end receives the packet it appears on its pair and vice
238 versa.
Pavel Emelyanove314dbd2007-09-25 16:14:46 -0700239
Jeff Kirsher88491d82011-08-23 00:42:10 -0700240config VIRTIO_NET
241 tristate "Virtio network driver (EXPERIMENTAL)"
242 depends on EXPERIMENTAL && VIRTIO
243 ---help---
244 This is the virtual network driver for virtio. It can be used with
245 lguest or QEMU based VMMs (like KVM or Xen). Say Y or M.
246
247endif # NET_CORE
248
249config SUNGEM_PHY
250 tristate
251
252source "drivers/net/arcnet/Kconfig"
253
254source "drivers/atm/Kconfig"
255
256source "drivers/net/caif/Kconfig"
257
Ben Hutchings3b158852011-11-27 17:08:33 +0000258source "drivers/net/dsa/Kconfig"
259
Jeff Kirsher88491d82011-08-23 00:42:10 -0700260source "drivers/net/ethernet/Kconfig"
261
262source "drivers/net/fddi/Kconfig"
263
Paul Bollefecc7352011-11-08 10:31:10 +0000264source "drivers/net/hippi/Kconfig"
265
Linus Torvalds1da177e2005-04-16 15:20:36 -0700266config NET_SB1000
267 tristate "General Instruments Surfboard 1000"
Randy Dunlapcbcd2a42005-07-27 13:04:35 -0700268 depends on PNP
Linus Torvalds1da177e2005-04-16 15:20:36 -0700269 ---help---
270 This is a driver for the General Instrument (also known as
271 NextLevel) SURFboard 1000 internal
272 cable modem. This is an ISA card which is used by a number of cable
273 TV companies to provide cable modem access. It's a one-way
274 downstream-only cable modem, meaning that your upstream net link is
275 provided by your regular phone modem.
276
277 At present this driver only compiles as a module, so say M here if
278 you have this card. The module will be called sb1000. Then read
279 <file:Documentation/networking/README.sb1000> for information on how
280 to use this module, as it needs special ppp scripts for establishing
281 a connection. Further documentation and the necessary scripts can be
282 found at:
283
284 <http://www.jacksonville.net/~fventuri/>
285 <http://home.adelphia.net/~siglercm/sb1000.html>
286 <http://linuxpower.cx/~cable/>
287
288 If you don't have this card, of course say N.
289
Andy Fleming00db8182005-07-30 19:31:23 -0400290source "drivers/net/phy/Kconfig"
291
Jeff Kirsher18e635f2011-08-03 03:01:58 -0700292source "drivers/net/plip/Kconfig"
293
Jeff Kirsher88491d82011-08-23 00:42:10 -0700294source "drivers/net/ppp/Kconfig"
295
Jeff Kirsherb5451d72011-08-03 03:17:13 -0700296source "drivers/net/slip/Kconfig"
297
Jeff Kirsher88491d82011-08-23 00:42:10 -0700298source "drivers/s390/net/Kconfig"
299
Jeff Kirsher88491d82011-08-23 00:42:10 -0700300source "drivers/net/usb/Kconfig"
301
Linus Torvalds1da177e2005-04-16 15:20:36 -0700302source "drivers/net/wireless/Kconfig"
303
Inaky Perez-Gonzalez143ee2d2008-12-23 16:18:48 -0800304source "drivers/net/wimax/Kconfig"
305
Linus Torvalds1da177e2005-04-16 15:20:36 -0700306source "drivers/net/wan/Kconfig"
307
alex.bluesman.smirnov@gmail.com0739d642012-08-26 05:10:11 +0000308source "drivers/net/ieee802154/Kconfig"
309
Jeremy Fitzhardinge0d160212007-07-17 18:37:06 -0700310config XEN_NETDEV_FRONTEND
311 tristate "Xen network device frontend driver"
312 depends on XEN
Jeremy Fitzhardinge70030872009-03-27 16:28:34 -0700313 select XEN_XENBUS_FRONTEND
Jeremy Fitzhardinge0d160212007-07-17 18:37:06 -0700314 default y
315 help
Ian Campbellf942dc22011-03-15 00:06:18 +0000316 This driver provides support for Xen paravirtual network
317 devices exported by a Xen network driver domain (often
318 domain 0).
319
320 The corresponding Linux backend driver is enabled by the
321 CONFIG_XEN_NETDEV_BACKEND option.
322
323 If you are compiling a kernel for use as Xen guest, you
324 should say Y here. To compile this driver as a module, chose
325 M here: the module will be called xen-netfront.
326
327config XEN_NETDEV_BACKEND
328 tristate "Xen backend network device"
329 depends on XEN_BACKEND
330 help
331 This driver allows the kernel to act as a Xen network driver
332 domain which exports paravirtual network devices to other
333 Xen domains. These devices can be accessed by any operating
334 system that implements a compatible front end.
335
336 The corresponding Linux frontend driver is enabled by the
337 CONFIG_XEN_NETDEV_FRONTEND configuration option.
338
339 The backend driver presents a standard network device
340 endpoint for each paravirtual network device to the driver
341 domain network stack. These can then be bridged or routed
342 etc in order to provide full network connectivity.
343
344 If you are compiling a kernel to run in a Xen network driver
345 domain (often this is domain 0) you should say Y here. To
346 compile this driver as a module, chose M here: the module
347 will be called xen-netback.
Jeremy Fitzhardinge0d160212007-07-17 18:37:06 -0700348
Shreyas Bhatewarad1a890fa2009-10-13 00:15:51 -0700349config VMXNET3
Philippe De Muytere85eb112010-11-11 12:31:21 +0000350 tristate "VMware VMXNET3 ethernet driver"
351 depends on PCI && INET
352 help
353 This driver supports VMware's vmxnet3 virtual ethernet NIC.
354 To compile this driver as a module, choose M here: the
355 module will be called vmxnet3.
Shreyas Bhatewarad1a890fa2009-10-13 00:15:51 -0700356
Haiyang Zhang95fa0402011-11-28 13:35:35 -0800357source "drivers/net/hyperv/Kconfig"
358
Jan Engelhardtd1c0a652007-06-13 12:48:53 -0700359endif # NETDEVICES