blob: cb600fe5eb482b59f41c564f7741d8adbf0cf7ad [file] [log] [blame]
Masahiro Yamadaf3e12b72014-09-16 16:32:58 +09001#
2# Network configuration
3#
4
5menuconfig NET
6 bool "Networking support"
Michal Simek2f785a12018-02-26 16:01:02 +01007 default y
Masahiro Yamadaf3e12b72014-09-16 16:32:58 +09008
9if NET
10
Tom Rinia8a77502022-03-11 09:12:01 -050011config ARP_TIMEOUT
12 int "Milliseconds before trying ARP again"
13 default 5000
14
Tom Rini26011a32022-03-11 09:12:02 -050015config NET_RETRY_COUNT
16 int "Number of timeouts before giving up"
17 default 5
18 help
19 This variable defines the number of retries for network operations
20 like ARP, RARP, TFTP, or BOOTP before giving up the operation.
21
Philippe Reynes6ec70bc2020-09-18 14:13:00 +020022config PROT_UDP
23 bool "Enable generic udp framework"
24 help
25 Enable a generic udp framework that allows defining a custom
26 handler for udp protocol.
27
Simon Glass4f840a22022-04-24 23:31:15 -060028config BOOTDEV_ETH
29 bool "Enable bootdev for ethernet"
30 depends on BOOTSTD
31 default y
32 help
33 Provide a bootdev for ethernet so that is it possible to boot
34 an operationg system over the network, using the PXE (Preboot
35 Execution Environment) protocol.
36
Adam Ford499c9f72020-07-03 09:00:14 -050037config BOOTP_SEND_HOSTNAME
38 bool "Send hostname to DNS server"
39 help
40 Some DHCP servers are capable to do a dynamic update of a
41 DNS server. To do this, they need the hostname of the DHCP
42 requester.
43 If CONFIG_BOOTP_SEND_HOSTNAME is defined, the content
44 of the "hostname" environment variable is passed as
45 option 12 to the DHCP server.
46
Joe Hershberger2dc2b5d2015-05-04 14:55:13 -050047config NET_RANDOM_ETHADDR
48 bool "Random ethaddr if unset"
49 help
Michal Simek2b254022022-01-11 10:28:09 +010050 Selecting this will allow the Ethernet interface to function even
51 when the ethaddr variable for that interface is unset. In this case,
52 a random MAC address in the locally administered address space is
53 generated. It will be saved to the appropriate environment variable,
54 too.
Joe Hershberger2dc2b5d2015-05-04 14:55:13 -050055
Bernhard Nortmanndeea30d2015-09-14 15:29:46 +020056config NETCONSOLE
57 bool "NetConsole support"
58 help
59 Support the 'nc' input/output device for networked console.
60 See README.NetConsole for details.
61
Marek Vasuta61efd82019-06-11 04:51:14 +020062config IP_DEFRAG
63 bool "Support IP datagram reassembly"
Marek Vasuta61efd82019-06-11 04:51:14 +020064 help
65 Selecting this will enable IP datagram reassembly according
66 to the algorithm in RFC815.
67
Rasmus Villemoesa94b3ac2020-02-07 15:17:42 +000068config NET_MAXDEFRAG
69 int "Size of buffer used for IP datagram reassembly"
70 depends on IP_DEFRAG
71 default 16384
72 range 1024 65536
73 help
74 This defines the size of the statically allocated buffer
75 used for reassembly, and thus an upper bound for the size of
76 IP datagrams that can be received.
77
Tom Rini97b04182022-03-18 08:38:21 -040078config SYS_FAULT_ECHO_LINK_DOWN
79 bool "Echo the inverted Ethernet link state to the fault LED"
80 help
81 Echo the inverted Ethernet link state to the fault LED. Note, if
82 this option is active, then CONFIG_SYS_FAULT_MII_ADDR also needs to
83 be configured.
84
Marek Vasut09b93a62019-06-11 04:51:15 +020085config TFTP_BLOCKSIZE
86 int "TFTP block size"
Andre Przywaraca234052019-11-23 17:58:59 +000087 default 1468
Marek Vasut09b93a62019-06-11 04:51:15 +020088 help
89 Default TFTP block size.
Patrick Delaunay1e51f3e2020-04-22 14:18:25 +020090 The MTU is typically 1500 for ethernet, so a TFTP block of
91 1468 (MTU minus eth.hdrs) provides a good throughput with
92 almost-MTU block sizes.
93 You can also activate CONFIG_IP_DEFRAG to set a larger block.
Marek Vasut09b93a62019-06-11 04:51:15 +020094
Tom Rinia9942c62022-03-18 08:38:23 -040095config TFTP_PORT
96 bool "Set TFTP UDP source/destination ports via the environment"
97 help
98 If this is defined, the environment variable tftpsrcp is used to
99 supply the TFTP UDP source port value. If tftpsrcp isn't defined,
100 the normal pseudo-random port number generator is used.
101
102 Also, the environment variable tftpdstp is used to supply the TFTP
103 UDP destination port value. If tftpdstp isn't defined, the normal
104 port 69 is used.
105
106 The purpose for tftpsrcp is to allow a TFTP server to blindly start
107 the TFTP transfer using the pre-configured target IP address and UDP
108 port. This has the effect of "punching through" the (Windows XP)
109 firewall, allowing the remainder of the TFTP transfer to proceed
110 normally. A better solution is to properly configure the firewall,
111 but sometimes that is not allowed.
112
Ramon Fried6e9aa542020-07-18 23:31:46 +0300113config TFTP_WINDOWSIZE
114 int "TFTP window size"
115 default 1
116 help
117 Default TFTP window size.
118 RFC7440 defines an optional window size of transmits,
119 before an ack response is required.
120 The default TFTP implementation implies a window size of 1.
121
Tero Kristo0624c812021-05-12 11:03:04 +0300122config TFTP_TSIZE
123 bool "Track TFTP transfers based on file size option"
124 depends on CMD_TFTPBOOT
125 default y if (ARCH_OMAP2PLUS || ARCH_K3)
126 help
127 By default, TFTP progress bar is increased for each received UDP
128 frame, which can lead into long time being spent for sending
129 data over the UART. Enabling this option, TFTP queries the file
130 size from server, and if supported, limits the progress bar to
131 50 characters total which fits on single line.
132
Lyle Franklin73fcbc72019-08-05 06:23:42 -0400133config SERVERIP_FROM_PROXYDHCP
134 bool "Get serverip value from Proxy DHCP response"
135 help
136 Allows bootfile config to be fetched from Proxy DHCP server
137 while IP is obtained from main DHCP server.
138
139config SERVERIP_FROM_PROXYDHCP_DELAY_MS
140 int "# of additional milliseconds to wait for ProxyDHCP response"
141 default 100
142 help
143 Amount of additional time to wait for ProxyDHCP response after
144 receiving response from main DHCP server. Has no effect if
145 SERVERIP_FROM_PROXYDHCP is false.
146
Simon Glasscc041b62021-12-18 11:27:48 -0700147config KEEP_SERVERADDR
148 bool "Write the server's MAC address to 'serveraddr'"
149 default y if SANDBOX
150 help
151 Keeps the server's MAC address, in the env 'serveraddr'
152 for passing to bootargs (like Linux's netconsole option). If this is
153 enabled, when an ARP reply is received, the server's IP address is
154 written there.
155
Simon Glasse0eb4ef2021-12-18 11:27:49 -0700156config UDP_CHECKSUM
157 bool "Check the UDP checksum"
Simon Glass65831d92021-12-18 11:27:50 -0700158 default y if SANDBOX
Simon Glasse0eb4ef2021-12-18 11:27:49 -0700159 help
160 Enable this to verify the checksum on UDP packets. If the checksum
Marek Vasut5933cee2022-05-01 18:43:55 +0200161 is wrong then the packet is discarded and an error is shown, like
Simon Glasse0eb4ef2021-12-18 11:27:49 -0700162 "UDP wrong checksum 29374a23 30ff3826"
163
Simon Glass1c383742021-12-18 11:27:51 -0700164config BOOTP_SERVERIP
165 bool "Use the 'serverip' env var for tftp, not bootp"
166 help
167 Enable this if the TFTP server will be the 'serverip' environment
168 variable, not the BOOTP server. This affects the operation of both
169 bootp and tftp.
170
Andre Kalbe9926e52022-01-28 09:40:32 +0100171config BOOTP_MAX_ROOT_PATH_LEN
172 int "Option 17 root path length"
173 default 64
174 help
175 Select maximal length of option 17 root path.
176
Ying-Chun Liu (PaulLiu)41efed12022-11-08 14:17:28 +0800177config PROT_TCP
178 bool "TCP stack"
179 help
180 Enable a generic tcp framework that allows defining a custom
181 handler for tcp protocol.
182
183config PROT_TCP_SACK
184 bool "TCP SACK support"
185 depends on PROT_TCP
186 help
187 TCP protocol with SACK. SACK means selective acknowledgements.
188 By turning this option on TCP will learn what segments are already
189 received. So that it improves TCP's retransmission efficiency.
190 This option should be turn on if you want to achieve the fastest
191 file transfer possible.
192
Masahiro Yamadaf3e12b72014-09-16 16:32:58 +0900193endif # if NET
Tom Rinif9d5e832022-03-18 08:38:25 -0400194
195config SYS_RX_ETH_BUFFER
196 int "Number of receive packet buffers"
197 default 4
198 help
199 Defines the number of Ethernet receive buffers. On some Ethernet
200 controllers it is recommended to set this value to 8 or even higher,
201 since all buffers can be full shortly after enabling the interface on
202 high Ethernet traffic.