Masahiro Yamada | f3e12b7 | 2014-09-16 16:32:58 +0900 | [diff] [blame] | 1 | # |
| 2 | # Network configuration |
| 3 | # |
| 4 | |
Masahiro Yamada | f3e12b7 | 2014-09-16 16:32:58 +0900 | [diff] [blame] | 5 | if NET |
| 6 | |
Tom Rini | a8a7750 | 2022-03-11 09:12:01 -0500 | [diff] [blame] | 7 | config ARP_TIMEOUT |
| 8 | int "Milliseconds before trying ARP again" |
| 9 | default 5000 |
| 10 | |
Tom Rini | 26011a3 | 2022-03-11 09:12:02 -0500 | [diff] [blame] | 11 | config NET_RETRY_COUNT |
| 12 | int "Number of timeouts before giving up" |
| 13 | default 5 |
| 14 | help |
| 15 | This variable defines the number of retries for network operations |
| 16 | like ARP, RARP, TFTP, or BOOTP before giving up the operation. |
| 17 | |
Philippe Reynes | 6ec70bc | 2020-09-18 14:13:00 +0200 | [diff] [blame] | 18 | config PROT_UDP |
| 19 | bool "Enable generic udp framework" |
| 20 | help |
| 21 | Enable a generic udp framework that allows defining a custom |
| 22 | handler for udp protocol. |
| 23 | |
Adam Ford | 499c9f7 | 2020-07-03 09:00:14 -0500 | [diff] [blame] | 24 | config BOOTP_SEND_HOSTNAME |
| 25 | bool "Send hostname to DNS server" |
| 26 | help |
| 27 | Some DHCP servers are capable to do a dynamic update of a |
| 28 | DNS server. To do this, they need the hostname of the DHCP |
| 29 | requester. |
| 30 | If CONFIG_BOOTP_SEND_HOSTNAME is defined, the content |
Anand Moon | 6c368f4 | 2024-06-23 23:10:21 +0530 | [diff] [blame] | 31 | of the "hostname" environment variable is passed as |
| 32 | option 12 to the DHCP server. |
Adam Ford | 499c9f7 | 2020-07-03 09:00:14 -0500 | [diff] [blame] | 33 | |
Bernhard Nortmann | deea30d | 2015-09-14 15:29:46 +0200 | [diff] [blame] | 34 | config NETCONSOLE |
| 35 | bool "NetConsole support" |
| 36 | help |
| 37 | Support the 'nc' input/output device for networked console. |
Baruch Siach | ed00860 | 2023-12-18 09:37:53 +0200 | [diff] [blame] | 38 | See doc/usage/netconsole.rst for details. |
Bernhard Nortmann | deea30d | 2015-09-14 15:29:46 +0200 | [diff] [blame] | 39 | |
Marek Vasut | a61efd8 | 2019-06-11 04:51:14 +0200 | [diff] [blame] | 40 | config IP_DEFRAG |
| 41 | bool "Support IP datagram reassembly" |
Marek Vasut | a61efd8 | 2019-06-11 04:51:14 +0200 | [diff] [blame] | 42 | help |
| 43 | Selecting this will enable IP datagram reassembly according |
| 44 | to the algorithm in RFC815. |
| 45 | |
Rasmus Villemoes | a94b3ac | 2020-02-07 15:17:42 +0000 | [diff] [blame] | 46 | config NET_MAXDEFRAG |
| 47 | int "Size of buffer used for IP datagram reassembly" |
| 48 | depends on IP_DEFRAG |
| 49 | default 16384 |
| 50 | range 1024 65536 |
| 51 | help |
| 52 | This defines the size of the statically allocated buffer |
| 53 | used for reassembly, and thus an upper bound for the size of |
| 54 | IP datagrams that can be received. |
| 55 | |
Tom Rini | 97b0418 | 2022-03-18 08:38:21 -0400 | [diff] [blame] | 56 | config SYS_FAULT_ECHO_LINK_DOWN |
| 57 | bool "Echo the inverted Ethernet link state to the fault LED" |
| 58 | help |
| 59 | Echo the inverted Ethernet link state to the fault LED. Note, if |
| 60 | this option is active, then CONFIG_SYS_FAULT_MII_ADDR also needs to |
| 61 | be configured. |
| 62 | |
Marek Vasut | 09b93a6 | 2019-06-11 04:51:15 +0200 | [diff] [blame] | 63 | config TFTP_BLOCKSIZE |
| 64 | int "TFTP block size" |
Andre Przywara | ca23405 | 2019-11-23 17:58:59 +0000 | [diff] [blame] | 65 | default 1468 |
Marek Vasut | 09b93a6 | 2019-06-11 04:51:15 +0200 | [diff] [blame] | 66 | help |
| 67 | Default TFTP block size. |
Patrick Delaunay | 1e51f3e | 2020-04-22 14:18:25 +0200 | [diff] [blame] | 68 | The MTU is typically 1500 for ethernet, so a TFTP block of |
| 69 | 1468 (MTU minus eth.hdrs) provides a good throughput with |
| 70 | almost-MTU block sizes. |
| 71 | You can also activate CONFIG_IP_DEFRAG to set a larger block. |
Marek Vasut | 09b93a6 | 2019-06-11 04:51:15 +0200 | [diff] [blame] | 72 | |
Tom Rini | a9942c6 | 2022-03-18 08:38:23 -0400 | [diff] [blame] | 73 | config TFTP_PORT |
| 74 | bool "Set TFTP UDP source/destination ports via the environment" |
| 75 | help |
| 76 | If this is defined, the environment variable tftpsrcp is used to |
| 77 | supply the TFTP UDP source port value. If tftpsrcp isn't defined, |
| 78 | the normal pseudo-random port number generator is used. |
| 79 | |
| 80 | Also, the environment variable tftpdstp is used to supply the TFTP |
| 81 | UDP destination port value. If tftpdstp isn't defined, the normal |
| 82 | port 69 is used. |
| 83 | |
| 84 | The purpose for tftpsrcp is to allow a TFTP server to blindly start |
| 85 | the TFTP transfer using the pre-configured target IP address and UDP |
| 86 | port. This has the effect of "punching through" the (Windows XP) |
| 87 | firewall, allowing the remainder of the TFTP transfer to proceed |
| 88 | normally. A better solution is to properly configure the firewall, |
| 89 | but sometimes that is not allowed. |
| 90 | |
Ramon Fried | 6e9aa54 | 2020-07-18 23:31:46 +0300 | [diff] [blame] | 91 | config TFTP_WINDOWSIZE |
| 92 | int "TFTP window size" |
| 93 | default 1 |
| 94 | help |
| 95 | Default TFTP window size. |
| 96 | RFC7440 defines an optional window size of transmits, |
| 97 | before an ack response is required. |
| 98 | The default TFTP implementation implies a window size of 1. |
| 99 | |
Tero Kristo | 0624c81 | 2021-05-12 11:03:04 +0300 | [diff] [blame] | 100 | config TFTP_TSIZE |
| 101 | bool "Track TFTP transfers based on file size option" |
| 102 | depends on CMD_TFTPBOOT |
| 103 | default y if (ARCH_OMAP2PLUS || ARCH_K3) |
| 104 | help |
| 105 | By default, TFTP progress bar is increased for each received UDP |
| 106 | frame, which can lead into long time being spent for sending |
| 107 | data over the UART. Enabling this option, TFTP queries the file |
| 108 | size from server, and if supported, limits the progress bar to |
| 109 | 50 characters total which fits on single line. |
| 110 | |
Lyle Franklin | 73fcbc7 | 2019-08-05 06:23:42 -0400 | [diff] [blame] | 111 | config SERVERIP_FROM_PROXYDHCP |
| 112 | bool "Get serverip value from Proxy DHCP response" |
| 113 | help |
| 114 | Allows bootfile config to be fetched from Proxy DHCP server |
| 115 | while IP is obtained from main DHCP server. |
| 116 | |
| 117 | config SERVERIP_FROM_PROXYDHCP_DELAY_MS |
| 118 | int "# of additional milliseconds to wait for ProxyDHCP response" |
| 119 | default 100 |
| 120 | help |
| 121 | Amount of additional time to wait for ProxyDHCP response after |
| 122 | receiving response from main DHCP server. Has no effect if |
| 123 | SERVERIP_FROM_PROXYDHCP is false. |
| 124 | |
Simon Glass | cc041b6 | 2021-12-18 11:27:48 -0700 | [diff] [blame] | 125 | config KEEP_SERVERADDR |
| 126 | bool "Write the server's MAC address to 'serveraddr'" |
| 127 | default y if SANDBOX |
| 128 | help |
| 129 | Keeps the server's MAC address, in the env 'serveraddr' |
| 130 | for passing to bootargs (like Linux's netconsole option). If this is |
| 131 | enabled, when an ARP reply is received, the server's IP address is |
| 132 | written there. |
| 133 | |
Simon Glass | e0eb4ef | 2021-12-18 11:27:49 -0700 | [diff] [blame] | 134 | config UDP_CHECKSUM |
| 135 | bool "Check the UDP checksum" |
Simon Glass | 65831d9 | 2021-12-18 11:27:50 -0700 | [diff] [blame] | 136 | default y if SANDBOX |
Simon Glass | e0eb4ef | 2021-12-18 11:27:49 -0700 | [diff] [blame] | 137 | help |
| 138 | Enable this to verify the checksum on UDP packets. If the checksum |
Marek Vasut | 5933cee | 2022-05-01 18:43:55 +0200 | [diff] [blame] | 139 | is wrong then the packet is discarded and an error is shown, like |
Simon Glass | e0eb4ef | 2021-12-18 11:27:49 -0700 | [diff] [blame] | 140 | "UDP wrong checksum 29374a23 30ff3826" |
| 141 | |
Simon Glass | 1c38374 | 2021-12-18 11:27:51 -0700 | [diff] [blame] | 142 | config BOOTP_SERVERIP |
| 143 | bool "Use the 'serverip' env var for tftp, not bootp" |
| 144 | help |
| 145 | Enable this if the TFTP server will be the 'serverip' environment |
| 146 | variable, not the BOOTP server. This affects the operation of both |
| 147 | bootp and tftp. |
| 148 | |
Andre Kalb | e9926e5 | 2022-01-28 09:40:32 +0100 | [diff] [blame] | 149 | config BOOTP_MAX_ROOT_PATH_LEN |
| 150 | int "Option 17 root path length" |
| 151 | default 64 |
| 152 | help |
| 153 | Select maximal length of option 17 root path. |
| 154 | |
Tom Rini | 1479a83 | 2022-12-02 16:42:27 -0500 | [diff] [blame] | 155 | config USE_GATEWAYIP |
| 156 | bool "Set a default 'gateway' value in the environment" |
| 157 | help |
| 158 | Defines a default value for the IP address of the default router |
| 159 | where packets to other networks are sent to. (Environment variable |
| 160 | "gatewayip") |
| 161 | |
| 162 | config GATEWAYIP |
| 163 | string "Value of the default 'gateway' value in the environment" |
| 164 | depends on USE_GATEWAYIP |
| 165 | |
| 166 | config USE_IPADDR |
| 167 | bool "Set a default 'ipaddr' value in the environment" |
| 168 | help |
| 169 | Define a default value for the IP address to use for the default |
| 170 | Ethernet interface, in case this is not determined through e.g. |
| 171 | bootp. (Environment variable "ipaddr") |
| 172 | |
| 173 | config IPADDR |
| 174 | string "Value of the default 'ipaddr' value in the environment" |
| 175 | depends on USE_IPADDR |
| 176 | |
| 177 | config USE_NETMASK |
| 178 | bool "Set a default 'netmask' value in the environment" |
| 179 | help |
| 180 | Defines a default value for the subnet mask (or routing prefix) which |
| 181 | is used to determine if an IP address belongs to the local subnet or |
| 182 | needs to be forwarded through a router. (Environment variable "netmask") |
| 183 | |
| 184 | config NETMASK |
| 185 | string "Value of the default 'netmask' value in the environment" |
| 186 | depends on USE_NETMASK |
| 187 | |
| 188 | config USE_ROOTPATH |
| 189 | bool "Set a default 'rootpath' value in the environment" |
| 190 | |
| 191 | config ROOTPATH |
| 192 | string "Value of the default 'rootpath' value in the environment" |
| 193 | depends on USE_ROOTPATH |
| 194 | default "/opt/nfsroot" |
| 195 | |
| 196 | config USE_SERVERIP |
| 197 | bool "Set a default 'serverip' value in the environment" |
| 198 | help |
| 199 | Defines a default value for the IP address of a TFTP server to |
| 200 | contact when using the "tftboot" command. (Environment variable |
| 201 | "serverip") |
| 202 | |
| 203 | config SERVERIP |
| 204 | string "Value of the default 'serverip' value in the environment" |
| 205 | depends on USE_SERVERIP |
| 206 | |
Ying-Chun Liu (PaulLiu) | 41efed1 | 2022-11-08 14:17:28 +0800 | [diff] [blame] | 207 | config PROT_TCP |
| 208 | bool "TCP stack" |
| 209 | help |
| 210 | Enable a generic tcp framework that allows defining a custom |
| 211 | handler for tcp protocol. |
| 212 | |
| 213 | config PROT_TCP_SACK |
| 214 | bool "TCP SACK support" |
| 215 | depends on PROT_TCP |
| 216 | help |
| 217 | TCP protocol with SACK. SACK means selective acknowledgements. |
| 218 | By turning this option on TCP will learn what segments are already |
| 219 | received. So that it improves TCP's retransmission efficiency. |
| 220 | This option should be turn on if you want to achieve the fastest |
| 221 | file transfer possible. |
| 222 | |
Viacheslav Mitrofanov | 6cce6c2 | 2022-12-02 12:17:59 +0300 | [diff] [blame] | 223 | config IPV6 |
| 224 | bool "IPv6 support" |
| 225 | help |
| 226 | Enable IPv6 support. It includes Neighbour Discovery protocol, ICMPv6 |
| 227 | and auxiliary stuff to make it work. Since it is enabled u-boot |
| 228 | network subsystem can get and handle incoming packets and send packets |
| 229 | through IPv6 network. It allows to use environment variables such as |
| 230 | ip6addr, serverip6. If a u-boot command is capable to parse an IPv6 |
| 231 | address and find it, it will force using IPv6 in the network stack. |
| 232 | |
Masahiro Yamada | f3e12b7 | 2014-09-16 16:32:58 +0900 | [diff] [blame] | 233 | endif # if NET |
Tom Rini | f9d5e83 | 2022-03-18 08:38:25 -0400 | [diff] [blame] | 234 | |
Jerome Forissier | e0f9551 | 2024-10-16 12:03:59 +0200 | [diff] [blame] | 235 | source "net/lwip/Kconfig" |
| 236 | |
| 237 | if NET || NET_LWIP |
| 238 | |
| 239 | config BOOTDEV_ETH |
| 240 | bool "Enable bootdev for ethernet" |
| 241 | depends on BOOTSTD |
| 242 | default y |
| 243 | help |
| 244 | Provide a bootdev for ethernet so that is it possible to boot |
| 245 | an operating system over the network, using the PXE (Preboot |
| 246 | Execution Environment) protocol. |
| 247 | |
| 248 | config NET_RANDOM_ETHADDR |
| 249 | bool "Random ethaddr if unset" |
Tom Rini | f9d5e83 | 2022-03-18 08:38:25 -0400 | [diff] [blame] | 250 | help |
Jerome Forissier | e0f9551 | 2024-10-16 12:03:59 +0200 | [diff] [blame] | 251 | Selecting this will allow the Ethernet interface to function even |
| 252 | when the ethaddr variable for that interface is unset. In this case, |
| 253 | a random MAC address in the locally administered address space is |
| 254 | generated. It will be saved to the appropriate environment variable, |
| 255 | too. |
| 256 | |
| 257 | endif # if NET || NET_LWIP |
| 258 | |
| 259 | config SYS_RX_ETH_BUFFER |
| 260 | int "Number of receive packet buffers" |
| 261 | default 4 |
| 262 | help |
| 263 | Defines the number of Ethernet receive buffers. On some Ethernet |
| 264 | controllers it is recommended to set this value to 8 or even higher, |
| 265 | since all buffers can be full shortly after enabling the interface on |
| 266 | high Ethernet traffic. |