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 | |
Tom Rini | a9942c6 | 2022-03-18 08:38:23 -0400 | [diff] [blame] | 63 | config TFTP_PORT |
| 64 | bool "Set TFTP UDP source/destination ports via the environment" |
| 65 | help |
| 66 | If this is defined, the environment variable tftpsrcp is used to |
| 67 | supply the TFTP UDP source port value. If tftpsrcp isn't defined, |
| 68 | the normal pseudo-random port number generator is used. |
| 69 | |
| 70 | Also, the environment variable tftpdstp is used to supply the TFTP |
| 71 | UDP destination port value. If tftpdstp isn't defined, the normal |
| 72 | port 69 is used. |
| 73 | |
| 74 | The purpose for tftpsrcp is to allow a TFTP server to blindly start |
| 75 | the TFTP transfer using the pre-configured target IP address and UDP |
| 76 | port. This has the effect of "punching through" the (Windows XP) |
| 77 | firewall, allowing the remainder of the TFTP transfer to proceed |
| 78 | normally. A better solution is to properly configure the firewall, |
| 79 | but sometimes that is not allowed. |
| 80 | |
Ramon Fried | 6e9aa54 | 2020-07-18 23:31:46 +0300 | [diff] [blame] | 81 | config TFTP_WINDOWSIZE |
| 82 | int "TFTP window size" |
| 83 | default 1 |
| 84 | help |
| 85 | Default TFTP window size. |
| 86 | RFC7440 defines an optional window size of transmits, |
| 87 | before an ack response is required. |
| 88 | The default TFTP implementation implies a window size of 1. |
| 89 | |
Tero Kristo | 0624c81 | 2021-05-12 11:03:04 +0300 | [diff] [blame] | 90 | config TFTP_TSIZE |
| 91 | bool "Track TFTP transfers based on file size option" |
| 92 | depends on CMD_TFTPBOOT |
| 93 | default y if (ARCH_OMAP2PLUS || ARCH_K3) |
| 94 | help |
| 95 | By default, TFTP progress bar is increased for each received UDP |
| 96 | frame, which can lead into long time being spent for sending |
| 97 | data over the UART. Enabling this option, TFTP queries the file |
| 98 | size from server, and if supported, limits the progress bar to |
| 99 | 50 characters total which fits on single line. |
| 100 | |
Lyle Franklin | 73fcbc7 | 2019-08-05 06:23:42 -0400 | [diff] [blame] | 101 | config SERVERIP_FROM_PROXYDHCP |
| 102 | bool "Get serverip value from Proxy DHCP response" |
| 103 | help |
| 104 | Allows bootfile config to be fetched from Proxy DHCP server |
| 105 | while IP is obtained from main DHCP server. |
| 106 | |
| 107 | config SERVERIP_FROM_PROXYDHCP_DELAY_MS |
| 108 | int "# of additional milliseconds to wait for ProxyDHCP response" |
| 109 | default 100 |
| 110 | help |
| 111 | Amount of additional time to wait for ProxyDHCP response after |
| 112 | receiving response from main DHCP server. Has no effect if |
| 113 | SERVERIP_FROM_PROXYDHCP is false. |
| 114 | |
Simon Glass | cc041b6 | 2021-12-18 11:27:48 -0700 | [diff] [blame] | 115 | config KEEP_SERVERADDR |
| 116 | bool "Write the server's MAC address to 'serveraddr'" |
| 117 | default y if SANDBOX |
| 118 | help |
| 119 | Keeps the server's MAC address, in the env 'serveraddr' |
| 120 | for passing to bootargs (like Linux's netconsole option). If this is |
| 121 | enabled, when an ARP reply is received, the server's IP address is |
| 122 | written there. |
| 123 | |
Simon Glass | e0eb4ef | 2021-12-18 11:27:49 -0700 | [diff] [blame] | 124 | config UDP_CHECKSUM |
| 125 | bool "Check the UDP checksum" |
Simon Glass | 65831d9 | 2021-12-18 11:27:50 -0700 | [diff] [blame] | 126 | default y if SANDBOX |
Simon Glass | e0eb4ef | 2021-12-18 11:27:49 -0700 | [diff] [blame] | 127 | help |
| 128 | Enable this to verify the checksum on UDP packets. If the checksum |
Marek Vasut | 5933cee | 2022-05-01 18:43:55 +0200 | [diff] [blame] | 129 | 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] | 130 | "UDP wrong checksum 29374a23 30ff3826" |
| 131 | |
Simon Glass | 1c38374 | 2021-12-18 11:27:51 -0700 | [diff] [blame] | 132 | config BOOTP_SERVERIP |
| 133 | bool "Use the 'serverip' env var for tftp, not bootp" |
| 134 | help |
| 135 | Enable this if the TFTP server will be the 'serverip' environment |
| 136 | variable, not the BOOTP server. This affects the operation of both |
| 137 | bootp and tftp. |
| 138 | |
Andre Kalb | e9926e5 | 2022-01-28 09:40:32 +0100 | [diff] [blame] | 139 | config BOOTP_MAX_ROOT_PATH_LEN |
| 140 | int "Option 17 root path length" |
| 141 | default 64 |
| 142 | help |
| 143 | Select maximal length of option 17 root path. |
| 144 | |
Tom Rini | 1479a83 | 2022-12-02 16:42:27 -0500 | [diff] [blame] | 145 | config USE_GATEWAYIP |
| 146 | bool "Set a default 'gateway' value in the environment" |
| 147 | help |
| 148 | Defines a default value for the IP address of the default router |
| 149 | where packets to other networks are sent to. (Environment variable |
| 150 | "gatewayip") |
| 151 | |
| 152 | config GATEWAYIP |
| 153 | string "Value of the default 'gateway' value in the environment" |
| 154 | depends on USE_GATEWAYIP |
| 155 | |
| 156 | config USE_IPADDR |
| 157 | bool "Set a default 'ipaddr' value in the environment" |
| 158 | help |
| 159 | Define a default value for the IP address to use for the default |
| 160 | Ethernet interface, in case this is not determined through e.g. |
| 161 | bootp. (Environment variable "ipaddr") |
| 162 | |
| 163 | config IPADDR |
| 164 | string "Value of the default 'ipaddr' value in the environment" |
| 165 | depends on USE_IPADDR |
| 166 | |
| 167 | config USE_NETMASK |
| 168 | bool "Set a default 'netmask' value in the environment" |
| 169 | help |
| 170 | Defines a default value for the subnet mask (or routing prefix) which |
| 171 | is used to determine if an IP address belongs to the local subnet or |
| 172 | needs to be forwarded through a router. (Environment variable "netmask") |
| 173 | |
| 174 | config NETMASK |
| 175 | string "Value of the default 'netmask' value in the environment" |
| 176 | depends on USE_NETMASK |
| 177 | |
| 178 | config USE_ROOTPATH |
| 179 | bool "Set a default 'rootpath' value in the environment" |
| 180 | |
| 181 | config ROOTPATH |
| 182 | string "Value of the default 'rootpath' value in the environment" |
| 183 | depends on USE_ROOTPATH |
| 184 | default "/opt/nfsroot" |
| 185 | |
| 186 | config USE_SERVERIP |
| 187 | bool "Set a default 'serverip' value in the environment" |
| 188 | help |
| 189 | Defines a default value for the IP address of a TFTP server to |
| 190 | contact when using the "tftboot" command. (Environment variable |
| 191 | "serverip") |
| 192 | |
| 193 | config SERVERIP |
| 194 | string "Value of the default 'serverip' value in the environment" |
| 195 | depends on USE_SERVERIP |
| 196 | |
Ying-Chun Liu (PaulLiu) | 41efed1 | 2022-11-08 14:17:28 +0800 | [diff] [blame] | 197 | config PROT_TCP |
| 198 | bool "TCP stack" |
| 199 | help |
| 200 | Enable a generic tcp framework that allows defining a custom |
| 201 | handler for tcp protocol. |
| 202 | |
| 203 | config PROT_TCP_SACK |
| 204 | bool "TCP SACK support" |
| 205 | depends on PROT_TCP |
| 206 | help |
| 207 | TCP protocol with SACK. SACK means selective acknowledgements. |
| 208 | By turning this option on TCP will learn what segments are already |
| 209 | received. So that it improves TCP's retransmission efficiency. |
| 210 | This option should be turn on if you want to achieve the fastest |
| 211 | file transfer possible. |
| 212 | |
Viacheslav Mitrofanov | 6cce6c2 | 2022-12-02 12:17:59 +0300 | [diff] [blame] | 213 | config IPV6 |
| 214 | bool "IPv6 support" |
| 215 | help |
| 216 | Enable IPv6 support. It includes Neighbour Discovery protocol, ICMPv6 |
| 217 | and auxiliary stuff to make it work. Since it is enabled u-boot |
| 218 | network subsystem can get and handle incoming packets and send packets |
| 219 | through IPv6 network. It allows to use environment variables such as |
| 220 | ip6addr, serverip6. If a u-boot command is capable to parse an IPv6 |
| 221 | address and find it, it will force using IPv6 in the network stack. |
| 222 | |
Masahiro Yamada | f3e12b7 | 2014-09-16 16:32:58 +0900 | [diff] [blame] | 223 | endif # if NET |
Tom Rini | f9d5e83 | 2022-03-18 08:38:25 -0400 | [diff] [blame] | 224 | |
Jerome Forissier | e0f9551 | 2024-10-16 12:03:59 +0200 | [diff] [blame] | 225 | source "net/lwip/Kconfig" |
| 226 | |
| 227 | if NET || NET_LWIP |
| 228 | |
| 229 | config BOOTDEV_ETH |
| 230 | bool "Enable bootdev for ethernet" |
| 231 | depends on BOOTSTD |
| 232 | default y |
| 233 | help |
| 234 | Provide a bootdev for ethernet so that is it possible to boot |
| 235 | an operating system over the network, using the PXE (Preboot |
| 236 | Execution Environment) protocol. |
| 237 | |
| 238 | config NET_RANDOM_ETHADDR |
| 239 | bool "Random ethaddr if unset" |
Tom Rini | f9d5e83 | 2022-03-18 08:38:25 -0400 | [diff] [blame] | 240 | help |
Jerome Forissier | e0f9551 | 2024-10-16 12:03:59 +0200 | [diff] [blame] | 241 | Selecting this will allow the Ethernet interface to function even |
| 242 | when the ethaddr variable for that interface is unset. In this case, |
| 243 | a random MAC address in the locally administered address space is |
| 244 | generated. It will be saved to the appropriate environment variable, |
| 245 | too. |
| 246 | |
Jerome Forissier | 0fb8190 | 2024-10-16 12:04:13 +0200 | [diff] [blame] | 247 | config TFTP_BLOCKSIZE |
| 248 | int "TFTP block size" |
| 249 | default 1468 |
| 250 | help |
| 251 | Default TFTP block size. |
| 252 | The MTU is typically 1500 for ethernet, so a TFTP block of |
| 253 | 1468 (MTU minus eth.hdrs) provides a good throughput with |
| 254 | almost-MTU block sizes. |
| 255 | You can also activate CONFIG_IP_DEFRAG to set a larger block. |
| 256 | |
Jerome Forissier | e0f9551 | 2024-10-16 12:03:59 +0200 | [diff] [blame] | 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. |