On 10/04/2017 13:44, Peng Fan wrote: > From: Andy Duan <fugang.d...@nxp.com> > > Specify the registered eth index by dev_id. > > Signed-off-by: Fugang Duan <fugang.d...@nxp.com> > Signed-off-by: Peng Fan <peng....@nxp.com> > Cc: Joe Hershberger <joe.hershber...@ni.com> > --- > drivers/net/fec_mxc.c | 11 +++++++++-- > 1 file changed, 9 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c > index d67a69b..08bea8b 100644 > --- a/drivers/net/fec_mxc.c > +++ b/drivers/net/fec_mxc.c > @@ -1023,6 +1023,7 @@ static int fec_probe(bd_t *bd, int dev_id, uint32_t > base_addr, > struct eth_device *edev; > struct fec_priv *fec; > unsigned char ethaddr[6]; > + char mac[16]; > uint32_t start; > int ret = 0; > > @@ -1085,12 +1086,18 @@ static int fec_probe(bd_t *bd, int dev_id, uint32_t > base_addr, > fec->phy_id = phy_id; > #endif > eth_register(edev); > + /* only support one eth device, the index number pointed by dev_id */ > + edev->index = fec->dev_id; > > if (fec_get_hwaddr(fec->dev_id, ethaddr) == 0) { > debug("got MAC%d address from fuse: %pM\n", fec->dev_id, > ethaddr); > memcpy(edev->enetaddr, ethaddr, 6); > - if (!getenv("ethaddr")) > - eth_setenv_enetaddr("ethaddr", ethaddr); > + if (fec->dev_id) > + sprintf(mac, "eth%daddr", fec->dev_id); > + else > + strcpy(mac, "ethaddr"); > + if (!getenv(mac)) > + eth_setenv_enetaddr(mac, ethaddr); > } > return ret; > err4: >
Reviewed-by : Stefano Babic <sba...@denx.de> Best regards, Stefano Babic -- ===================================================================== DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sba...@denx.de ===================================================================== _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot