> Date: Tue, 10 Oct 2017 06:32:58 +0300
> From: Artturi Alm
>
> Hi,
>
> i've been bothered by this:
> smsc0 at uhub1 port 1 configuration 1 interface 0 "Standard Microsystems
> SMSC9512/14" rev 2.00/2.00 addr 3
> smsc0: address ff:ff:ff:ff:ff:ff
>
> that does happen no matter if i run dhcp-command in u-boot shell or not.
> u-boot does store the addr in env, but i don't want to learn how to
> access it from efi, i think it wouldn't be pretty.
>
> iirc. the DT is mapped kernel writable, so would anything like below be
> accepted for generalizing the kind of quirk there already is in if_smsc.c
> for rPI (the smsc_enaddr_OF())?
>
> diff --git a/sys/arch/armv7/stand/efiboot/efiboot.c
> b/sys/arch/armv7/stand/efiboot/efiboot.c
> index dbc434da7bf..b8f17fc5921 100644
> --- a/sys/arch/armv7/stand/efiboot/efiboot.c
> +++ b/sys/arch/armv7/stand/efiboot/efiboot.c
> @@ -328,6 +328,12 @@ efi_makebootargs(char *bootargs, uint32_t *board_id)
> fdt_node_add_property(node, "openbsd,uefi-mmap-desc-size", zero, 4);
> fdt_node_add_property(node, "openbsd,uefi-mmap-desc-ver", zero, 4);
>
> + /*
> + * For boards with integrated USB ethernet, to be filled later
> + * during autoconf, from efuses/eeprom or such.
> + */
> + fdt_node_add_property(node, "openbsd,uea", zero, 6);
> +
> fdt_finalize();
>
> node = fdt_find_node("/");
>
>
> or, if hack like above is totally unaccepted for this, some clue how to
> solve my issue w/o giving up running GENERIC on panda would be appreciated.
See dev/usb/if_smsc.c:smsc_enaddr_OF().