blob: 3b19452f3a23695cf75b2e8bc919412c4b187ba5 [file] [log] [blame]
lh9ed821d2023-04-07 01:36:19 -07001#
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 NET_CORE
29 default y
30 bool "Network core driver support"
31 ---help---
32 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
52 To compile this driver as a module, choose M here: the module
53 will be called bonding.
54
55config DUMMY
56 tristate "Dummy net driver support"
57 ---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
69 will be called dummy. If you want to use more than one dummy
70 device at a time, you need to compile this driver as a module.
71 Instead of 'dummy', the devices will then be called 'dummy0',
72 'dummy1' etc.
73
74config EQUALIZER
75 tristate "EQL (serial line load balancing) support"
76 ---help---
77 If you have two serial connections to some other computer (this
78 usually requires two modems and two telephone lines) and you use
79 SLIP (the protocol for sending Internet traffic over telephone
80 lines) or PPP (a better SLIP) on them, you can make them behave like
81 one double speed connection using this driver. Naturally, this has
82 to be supported at the other end as well, either with a similar EQL
83 Linux driver or with a Livingston Portmaster 2e.
84
85 Say Y if you want this and read
86 <file:Documentation/networking/eql.txt>. You may also want to read
87 section 6.2 of the NET-3-HOWTO, available from
88 <http://www.tldp.org/docs.html#howto>.
89
90 To compile this driver as a module, choose M here: the module
91 will be called eql. If unsure, say N.
92
93config NET_FC
94 bool "Fibre Channel driver support"
95 depends on SCSI && PCI
96 help
97 Fibre Channel is a high speed serial protocol mainly used to connect
98 large storage devices to the computer; it is compatible with and
99 intended to replace SCSI.
100
101 If you intend to use Fibre Channel, you need to have a Fibre channel
102 adaptor card in your computer; say Y here and to the driver for your
103 adaptor below. You also should have said Y to "SCSI support" and
104 "SCSI generic support".
105
106config MII
107 tristate "Generic Media Independent Interface device support"
108 help
109 Most ethernet controllers have MII transceiver either as an external
110 or internal device. It is safe to say Y or M here even if your
111 ethernet card lacks MII.
112
113source "drivers/ieee802154/Kconfig"
114
115config IFB
116 tristate "Intermediate Functional Block support"
117 depends on NET_CLS_ACT
118 ---help---
119 This is an intermediate driver that allows sharing of
120 resources.
121 To compile this driver as a module, choose M here: the module
122 will be called ifb. If you want to use more than one ifb
123 device at a time, you need to compile this driver as a module.
124 Instead of 'ifb', the devices will then be called 'ifb0',
125 'ifb1' etc.
126 Look at the iproute2 documentation directory for usage etc
127
128source "drivers/net/team/Kconfig"
129
130config MACVLAN
131 tristate "MAC-VLAN support (EXPERIMENTAL)"
132 depends on EXPERIMENTAL
133 ---help---
134 This allows one to create virtual interfaces that map packets to
135 or from specific MAC addresses to a particular interface.
136
137 Macvlan devices can be added using the "ip" command from the
138 iproute2 package starting with the iproute2-2.6.23 release:
139
140 "ip link add link <real dev> [ address MAC ] [ NAME ] type macvlan"
141
142 To compile this driver as a module, choose M here: the module
143 will be called macvlan.
144
145config MACVTAP
146 tristate "MAC-VLAN based tap driver (EXPERIMENTAL)"
147 depends on MACVLAN
148 help
149 This adds a specialized tap character device driver that is based
150 on the MAC-VLAN network interface, called macvtap. A macvtap device
151 can be added in the same way as a macvlan device, using 'type
152 macvlan', and then be accessed through the tap user space interface.
153
154 To compile this driver as a module, choose M here: the module
155 will be called macvtap.
156
157config NETCONSOLE
158 tristate "Network console logging support"
159 depends on !PREEMPT_RT_FULL
160 ---help---
161 If you want to log kernel messages over the network, enable this.
162 See <file:Documentation/networking/netconsole.txt> for details.
163
164config NETCONSOLE_DYNAMIC
165 bool "Dynamic reconfiguration of logging targets"
166 depends on NETCONSOLE && SYSFS && CONFIGFS_FS && \
167 !(NETCONSOLE=y && CONFIGFS_FS=m)
168 help
169 This option enables the ability to dynamically reconfigure target
170 parameters (interface, IP addresses, port numbers, MAC addresses)
171 at runtime through a userspace interface exported using configfs.
172 See <file:Documentation/networking/netconsole.txt> for details.
173
174config NETPOLL
175 def_bool NETCONSOLE
176
177config NETPOLL_TRAP
178 bool "Netpoll traffic trapping"
179 default n
180 depends on NETPOLL
181
182config NET_POLL_CONTROLLER
183 def_bool NETPOLL
184
185config RIONET
186 tristate "RapidIO Ethernet over messaging driver support"
187 depends on RAPIDIO
188
189config RIONET_TX_SIZE
190 int "Number of outbound queue entries"
191 depends on RIONET
192 default "128"
193
194config RIONET_RX_SIZE
195 int "Number of inbound queue entries"
196 depends on RIONET
197 default "128"
198
199config TUN
200 tristate "Universal TUN/TAP device driver support"
201 select CRC32
202 ---help---
203 TUN/TAP provides packet reception and transmission for user space
204 programs. It can be viewed as a simple Point-to-Point or Ethernet
205 device, which instead of receiving packets from a physical media,
206 receives them from user space program and instead of sending packets
207 via physical media writes them to the user space program.
208
209 When a program opens /dev/net/tun, driver creates and registers
210 corresponding net device tunX or tapX. After a program closed above
211 devices, driver will automatically delete tunXX or tapXX device and
212 all routes corresponding to it.
213
214 Please read <file:Documentation/networking/tuntap.txt> for more
215 information.
216
217 To compile this driver as a module, choose M here: the module
218 will be called tun.
219
220 If you don't know what to use this for, you don't need it.
221
222config VETH
223 tristate "Virtual ethernet pair device"
224 ---help---
225 This device is a local ethernet tunnel. Devices are created in pairs.
226 When one end receives the packet it appears on its pair and vice
227 versa.
228
229config VIRTIO_NET
230 tristate "Virtio network driver (EXPERIMENTAL)"
231 depends on EXPERIMENTAL && VIRTIO
232 ---help---
233 This is the virtual network driver for virtio. It can be used with
234 lguest or QEMU based VMMs (like KVM or Xen). Say Y or M.
235
236endif # NET_CORE
237
238config SUNGEM_PHY
239 tristate
240
241source "drivers/net/arcnet/Kconfig"
242
243source "drivers/atm/Kconfig"
244
245source "drivers/net/caif/Kconfig"
246
247source "drivers/net/dsa/Kconfig"
248
249source "drivers/net/ethernet/Kconfig"
250
251source "drivers/net/fddi/Kconfig"
252
253source "drivers/net/hippi/Kconfig"
254
255source "drivers/net/gmac/Kconfig"
256
257config NET_SB1000
258 tristate "General Instruments Surfboard 1000"
259 depends on PNP
260 ---help---
261 This is a driver for the General Instrument (also known as
262 NextLevel) SURFboard 1000 internal
263 cable modem. This is an ISA card which is used by a number of cable
264 TV companies to provide cable modem access. It's a one-way
265 downstream-only cable modem, meaning that your upstream net link is
266 provided by your regular phone modem.
267
268 At present this driver only compiles as a module, so say M here if
269 you have this card. The module will be called sb1000. Then read
270 <file:Documentation/networking/README.sb1000> for information on how
271 to use this module, as it needs special ppp scripts for establishing
272 a connection. Further documentation and the necessary scripts can be
273 found at:
274
275 <http://www.jacksonville.net/~fventuri/>
276 <http://home.adelphia.net/~siglercm/sb1000.html>
277 <http://linuxpower.cx/~cable/>
278
279 If you don't have this card, of course say N.
280
281source "drivers/net/phy/Kconfig"
282
283source "drivers/net/plip/Kconfig"
284
285source "drivers/net/ppp/Kconfig"
286
287source "drivers/net/slip/Kconfig"
288
289source "drivers/s390/net/Kconfig"
290
291source "drivers/net/tokenring/Kconfig"
292
293source "drivers/net/usb/Kconfig"
294
295source "drivers/net/wireless/Kconfig"
296
297source "drivers/net/wimax/Kconfig"
298
299source "drivers/net/wan/Kconfig"
300
301config XEN_NETDEV_FRONTEND
302 tristate "Xen network device frontend driver"
303 depends on XEN
304 select XEN_XENBUS_FRONTEND
305 default y
306 help
307 This driver provides support for Xen paravirtual network
308 devices exported by a Xen network driver domain (often
309 domain 0).
310
311 The corresponding Linux backend driver is enabled by the
312 CONFIG_XEN_NETDEV_BACKEND option.
313
314 If you are compiling a kernel for use as Xen guest, you
315 should say Y here. To compile this driver as a module, chose
316 M here: the module will be called xen-netfront.
317
318config XEN_NETDEV_BACKEND
319 tristate "Xen backend network device"
320 depends on XEN_BACKEND
321 help
322 This driver allows the kernel to act as a Xen network driver
323 domain which exports paravirtual network devices to other
324 Xen domains. These devices can be accessed by any operating
325 system that implements a compatible front end.
326
327 The corresponding Linux frontend driver is enabled by the
328 CONFIG_XEN_NETDEV_FRONTEND configuration option.
329
330 The backend driver presents a standard network device
331 endpoint for each paravirtual network device to the driver
332 domain network stack. These can then be bridged or routed
333 etc in order to provide full network connectivity.
334
335 If you are compiling a kernel to run in a Xen network driver
336 domain (often this is domain 0) you should say Y here. To
337 compile this driver as a module, chose M here: the module
338 will be called xen-netback.
339
340config VMXNET3
341 tristate "VMware VMXNET3 ethernet driver"
342 depends on PCI && INET
343 help
344 This driver supports VMware's vmxnet3 virtual ethernet NIC.
345 To compile this driver as a module, choose M here: the
346 module will be called vmxnet3.
347
348source "drivers/net/hyperv/Kconfig"
349
350source "drivers/net/ddr/Kconfig"
351
352source "drivers/net/at_ps/Kconfig"
353
354source "drivers/net/psnet/Kconfig"
355
356source "drivers/net/zvnet/Kconfig"
357endif # NETDEVICES