|
@@ -754,17 +754,16 @@ static int fs_init_phy(struct net_device *dev)
|
|
fep->oldlink = 0;
|
|
fep->oldlink = 0;
|
|
fep->oldspeed = 0;
|
|
fep->oldspeed = 0;
|
|
fep->oldduplex = -1;
|
|
fep->oldduplex = -1;
|
|
- if(fep->fpi->phy_node)
|
|
|
|
- phydev = of_phy_connect(dev, fep->fpi->phy_node,
|
|
|
|
- &fs_adjust_link, 0,
|
|
|
|
- PHY_INTERFACE_MODE_MII);
|
|
|
|
- else {
|
|
|
|
- printk("No phy bus ID specified in BSP code\n");
|
|
|
|
- return -EINVAL;
|
|
|
|
|
|
+
|
|
|
|
+ phydev = of_phy_connect(dev, fep->fpi->phy_node, &fs_adjust_link, 0,
|
|
|
|
+ PHY_INTERFACE_MODE_MII);
|
|
|
|
+ if (!phydev) {
|
|
|
|
+ phydev = of_phy_connect_fixed_link(dev, &fs_adjust_link,
|
|
|
|
+ PHY_INTERFACE_MODE_MII);
|
|
}
|
|
}
|
|
- if (IS_ERR(phydev)) {
|
|
|
|
- printk(KERN_ERR "%s: Could not attach to PHY\n", dev->name);
|
|
|
|
- return PTR_ERR(phydev);
|
|
|
|
|
|
+ if (!phydev) {
|
|
|
|
+ dev_err(&dev->dev, "Could not attach to PHY\n");
|
|
|
|
+ return -ENODEV;
|
|
}
|
|
}
|
|
|
|
|
|
fep->phydev = phydev;
|
|
fep->phydev = phydev;
|
|
@@ -1005,6 +1004,7 @@ static int __devinit fs_enet_probe(struct of_device *ofdev,
|
|
goto out_free_fpi;
|
|
goto out_free_fpi;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ SET_NETDEV_DEV(ndev, &ofdev->dev);
|
|
dev_set_drvdata(&ofdev->dev, ndev);
|
|
dev_set_drvdata(&ofdev->dev, ndev);
|
|
|
|
|
|
fep = netdev_priv(ndev);
|
|
fep = netdev_priv(ndev);
|