mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 07:04:28 +00:00
net: dhcp: Allow "MAY_FAIL" to still try each adapter
This change allows the "MAY_FAIL" DHCP option to still attempt to contact a DHCP server on each adapter and only give up once each adapter has failed once. To get the existing behavior, set the already-existing ethrotate=no variable. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Cc: Keng Soon Cheah <keng.soon.cheah@ni.com> Cc: Chen Yee Chew <chen.yee.chew@ni.com>
This commit is contained in:
parent
d5d5757291
commit
2099b9f27c
1 changed files with 12 additions and 5 deletions
17
net/bootp.c
17
net/bootp.c
|
@ -386,12 +386,19 @@ static void bootp_timeout_handler(void)
|
|||
|
||||
if (time_taken >= time_taken_max) {
|
||||
#ifdef CONFIG_BOOTP_MAY_FAIL
|
||||
puts("\nRetry time exceeded\n");
|
||||
net_set_state(NETLOOP_FAIL);
|
||||
#else
|
||||
puts("\nRetry time exceeded; starting again\n");
|
||||
net_start_again();
|
||||
char *ethrotate;
|
||||
|
||||
ethrotate = env_get("ethrotate");
|
||||
if ((ethrotate && strcmp(ethrotate, "no") == 0) ||
|
||||
net_restart_wrap) {
|
||||
puts("\nRetry time exceeded\n");
|
||||
net_set_state(NETLOOP_FAIL);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
puts("\nRetry time exceeded; starting again\n");
|
||||
net_start_again();
|
||||
}
|
||||
} else {
|
||||
bootp_timeout *= 2;
|
||||
if (bootp_timeout > 2000)
|
||||
|
|
Loading…
Reference in a new issue