mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-03-14 05:46:58 +00:00
net: fec_mxc: specify the registered eth index by dev_id
Specify the registered eth index by dev_id. Signed-off-by: Fugang Duan <fugang.duan@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Joe Hershberger <joe.hershberger@ni.com>
This commit is contained in:
parent
7f874e2b85
commit
809b133722
1 changed files with 9 additions and 2 deletions
|
@ -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:
|
||||
|
|
Loading…
Add table
Reference in a new issue