MLK-14772 net: fec: set the device->seq id to priv->dev_id
authorFugang Duan <fugang.duan@nxp.com>
Fri, 12 May 2017 07:58:56 +0000 (15:58 +0800)
committerFugang Duan <fugang.duan@nxp.com>
Fri, 12 May 2017 08:09:00 +0000 (16:09 +0800)
i.MX6UL/ULL evk board net get the wrong MAC address from fuse, exp,
eth1 get MAC0 address, eth0 get MAC1 address from fuse. Set the
priv->dev_id to device->seq as the real net interface alias id then
.fec_get_hwaddr() read the related MAC address from fuse.

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
drivers/net/fec_mxc.c

index b626a6b..76ff93d 100644 (file)
@@ -1228,7 +1228,6 @@ static int fecmxc_probe(struct udevice *dev)
        struct eth_pdata *pdata = dev_get_platdata(dev);
        struct fec_priv *priv = dev_get_priv(dev);
        struct mii_dev *bus = NULL;
-       static int dev_id = 0;
        uint32_t start;
        int ret;
 
@@ -1243,9 +1242,9 @@ static int fecmxc_probe(struct udevice *dev)
                return ret;
 
 #ifdef CONFIG_FEC_MXC_MDIO_BASE
-       bus = fec_get_miibus((uint32_t)CONFIG_FEC_MXC_MDIO_BASE, dev_id);
+       bus = fec_get_miibus((uint32_t)CONFIG_FEC_MXC_MDIO_BASE, dev->seq);
 #else
-       bus = fec_get_miibus((uint32_t)priv->eth, dev_id);
+       bus = fec_get_miibus((uint32_t)priv->eth, dev->seq);
 #endif
        if (!bus)
                goto err_mii;
@@ -1270,8 +1269,7 @@ static int fecmxc_probe(struct udevice *dev)
        }
 
        fec_reg_setup(priv);
-       priv->dev_id = (dev_id == -1) ? 0 : dev_id;
-       dev_id++;
+       priv->dev_id = dev->seq;
 
        return 0;