Commit 7ece1c61 authored by Joe Hershberger's avatar Joe Hershberger Committed by Simon Glass
Browse files

test: dm: net: Add a test of the netretry behavior

The effect of the "netretry" env var was recently changed. This test
checks that behavior.
Signed-off-by: default avatarJoe Hershberger <>
Reviewed-by: default avatarSimon Glass <>
parent 2eede1f3
......@@ -14,6 +14,7 @@
#include <fdtdec.h>
#include <malloc.h>
#include <net.h>
#include <asm/eth.h>
......@@ -122,3 +123,34 @@ static int dm_test_eth_rotate(struct dm_test_state *dms)
return 0;
DM_TEST(dm_test_eth_rotate, DM_TESTF_SCAN_FDT);
static int dm_test_net_retry(struct dm_test_state *dms)
NetPingIP = string_to_ip("");
* eth1 is disabled and netretry is yes, so the ping should succeed and
* the active device should be eth0
sandbox_eth_disable_response(1, true);
setenv("ethact", "eth@10004000");
setenv("netretry", "yes");
ut_asserteq_str("eth@10002000", getenv("ethact"));
* eth1 is disabled and netretry is no, so the ping should fail and the
* active device should be eth1
setenv("ethact", "eth@10004000");
setenv("netretry", "no");
ut_asserteq(-1, NetLoop(PING));
ut_asserteq_str("eth@10004000", getenv("ethact"));
/* Restore the env */
setenv("netretry", NULL);
sandbox_eth_disable_response(1, false);
return 0;
DM_TEST(dm_test_net_retry, DM_TESTF_SCAN_FDT);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment