mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-06-09 23:36:03 +09:00
net: Re-check prerequisites when autoloading
With net autoload, we check the prerequisites for the initial command, but the greater prerequisites when autoloading are not checked. If we would attempt to autoload, check those prerequisites too. If we are not expecting a serverip from the server, then don't worry about it not being set, but don't attempt to load if it isn't. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
This commit is contained in:
parent
3a66fcb7c3
commit
3855cad623
20
net/net.c
20
net/net.c
|
@ -332,6 +332,16 @@ void net_auto_load(void)
|
|||
const char *s = env_get("autoload");
|
||||
|
||||
if (s != NULL && strcmp(s, "NFS") == 0) {
|
||||
if (net_check_prereq(NFS)) {
|
||||
/* We aren't expecting to get a serverip, so just accept the assigned IP */
|
||||
#ifdef CONFIG_BOOTP_SERVERIP
|
||||
net_set_state(NETLOOP_SUCCESS);
|
||||
#else
|
||||
printf("Cannot autoload with NFS\n");
|
||||
net_set_state(NETLOOP_FAIL);
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
/*
|
||||
* Use NFS to load the bootfile.
|
||||
*/
|
||||
|
@ -347,6 +357,16 @@ void net_auto_load(void)
|
|||
net_set_state(NETLOOP_SUCCESS);
|
||||
return;
|
||||
}
|
||||
if (net_check_prereq(TFTPGET)) {
|
||||
/* We aren't expecting to get a serverip, so just accept the assigned IP */
|
||||
#ifdef CONFIG_BOOTP_SERVERIP
|
||||
net_set_state(NETLOOP_SUCCESS);
|
||||
#else
|
||||
printf("Cannot autoload with TFTPGET\n");
|
||||
net_set_state(NETLOOP_FAIL);
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
tftp_start(TFTPGET);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user