The ASIX 88179 driver already has helpers for reading the MAC address. Add support for the read_rom_hwaddr() ops using the existing asix_read_mac() helper function.
Signed-off-by: Jonas Karlman <[email protected]> --- drivers/usb/eth/asix88179.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/drivers/usb/eth/asix88179.c b/drivers/usb/eth/asix88179.c index 1ce90eb794cd..3ac7dd276a03 100644 --- a/drivers/usb/eth/asix88179.c +++ b/drivers/usb/eth/asix88179.c @@ -629,6 +629,20 @@ static int ax88179_write_hwaddr(struct udevice *dev) return asix_write_mac(ueth, pdata->enetaddr); } +static int ax88179_read_rom_hwaddr(struct udevice *dev) +{ + struct eth_pdata *pdata = dev_get_plat(dev); + struct asix_private *priv = dev_get_priv(dev); + struct ueth_data *ueth = &priv->ueth; + int ret; + + ret = asix_read_mac(ueth, pdata->enetaddr); + if (ret) + memset(pdata->enetaddr, 0, ETH_ALEN); + + return 0; +} + static int ax88179_eth_probe(struct udevice *dev) { struct eth_pdata *pdata = dev_get_plat(dev); @@ -666,6 +680,7 @@ static const struct eth_ops ax88179_eth_ops = { .free_pkt = ax88179_free_pkt, .stop = ax88179_eth_stop, .write_hwaddr = ax88179_write_hwaddr, + .read_rom_hwaddr = ax88179_read_rom_hwaddr, }; U_BOOT_DRIVER(ax88179_eth) = { -- 2.52.0

