> Date: Tue, 10 Oct 2017 06:32:58 +0300 > From: Artturi Alm <artturi....@gmail.com> > > 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().