Hello Heinrich, Here is a series of patches to update the SIMPLE_NETWORK_PROTOCOL according to the explanation in the previous thread [1].
[1] https://lists.denx.de/pipermail/u-boot/2021-September/460711.html So basically this seires modifies the SNP testcase as I said in the previous mail [1]. ---- net->get_status(); if (!net->mode.MediaPresent) { error(no link up!) return; } submit_dhcp_discover() for (;;) { wait_for_event(net) while (net->receive() != EFI_NOT_READY) { // check dhcp reply } } ---- I removed EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPT check because that is just expectation what the received packet avaiability is meaning that the EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPT flag bit is set. Of course U-Boot EFI SNP implementation does it, but that is not ensured in the UEFI spec. The spec said that the get_status() should update the MediaPresent flag (which means the network link up or down). So I added the get_status() test case before starting the network test so that it can test the link status. BTW, actually the mode->media_present is not supported yet. Is there any way to get the network link status? Thank you, --- Masami Hiramatsu (3): efi_selftest: Use EFI_SIMPLE_NETWORK_PROTOCOL::GetStatus() for media check efi_selftest: Do not check EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPT efi_selftest: Recieve the packets until the receive buffer is empty lib/efi_selftest/efi_selftest_snp.c | 90 +++++++++++++++++++---------------- 1 file changed, 49 insertions(+), 41 deletions(-) -- Masami Hiramatsu <masami.hirama...@linaro.org>