[U-Boot] [PATCH 1/1] initialize net_mode.if_type

Andrew Thomas andrew.thomas at oracle.com
Thu Jun 21 23:21:01 UTC 2018


if_type is not correctly initialized

Failure to initialize if_type means that grub2/efinet sends
a bogus arp request. It therefore gets no response. On Raspberry Pi 3B+
this leads to a pause at:

lan78xx_eth Waiting for PHY auto negotiation to complete....... done
lan78xx_eth Waiting for PHY auto negotiation to complete....... done

Signed-off-by: Andrew Thomas <andrew.thomas at oracle.com>
---
 lib/efi_loader/efi_net.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/efi_loader/efi_net.c b/lib/efi_loader/efi_net.c
index e113950..5a3d7be 100644
--- a/lib/efi_loader/efi_net.c
+++ b/lib/efi_loader/efi_net.c
@@ -361,6 +361,7 @@ efi_status_t efi_net_register(void)
 	memcpy(netobj->net_mode.current_address.mac_addr, eth_get_ethaddr(), 6);
 	netobj->net_mode.hwaddr_size = ARP_HLEN;
 	netobj->net_mode.max_packet_size = PKTSIZE;
+	netobj->net_mode.if_type = ARP_ETHER;
 
 	netobj->pxe.mode = &netobj->pxe_mode;
 	if (dhcp_ack)
-- 
1.8.3.1



More information about the U-Boot mailing list