[U-Boot] [PATCH 17/23] efi_loader: efi_net: hwaddr_size = 6

Simon Glass sjg at chromium.org
Thu Aug 31 12:52:07 UTC 2017


On 27 August 2017 at 06:53, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
> The length of a MAC address is 6.
> We have to set this length in the EFI_SIMPLE_NETWORK_MODE
> structure of the EFI_SIMPLE_NETWORK_PROTOCOL.
>
> Without this patch iPXE fails to initialize the network with
> error message
> SNP MAC(001e0633bcbf,0x0) has invalid hardware address length 0
>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
> ---
>  lib/efi_loader/efi_net.c | 1 +
>  1 file changed, 1 insertion(+)

Reviewed-by: Simon Glass <sjg at chromium.org>

Can you use ARP_HLEN?

>
> diff --git a/lib/efi_loader/efi_net.c b/lib/efi_loader/efi_net.c
> index 0b949d86e8..75d7974b0e 100644
> --- a/lib/efi_loader/efi_net.c
> +++ b/lib/efi_loader/efi_net.c
> @@ -259,6 +259,7 @@ int efi_net_register(void **handle)
>         netobj->dp_end = dp_end;
>         memcpy(netobj->dp_mac.mac.addr, eth_get_ethaddr(), 6);
>         memcpy(netobj->net_mode.current_address.mac_addr, eth_get_ethaddr(), 6);
> +       netobj->net_mode.hwaddr_size = 6;
>         netobj->net_mode.max_packet_size = PKTSIZE;
>
>         netobj->pxe.mode = &netobj->pxe_mode;
> --
> 2.14.1
>


More information about the U-Boot mailing list