]> git.sur5r.net Git - u-boot/blobdiff - drivers/net/phy/phy.c
phy: Add support for SMSC LAN87xx PHYs
[u-boot] / drivers / net / phy / phy.c
index 919011dbe2a07f8e611be7cd46686c4ac619e88e..eb551803e5c749dbcdafb1ed2f0f000f620741e4 100644 (file)
@@ -420,6 +420,40 @@ static LIST_HEAD(phy_drivers);
 
 int phy_init(void)
 {
+#ifdef CONFIG_PHY_ATHEROS
+       phy_atheros_init();
+#endif
+#ifdef CONFIG_PHY_BROADCOM
+       phy_broadcom_init();
+#endif
+#ifdef CONFIG_PHY_DAVICOM
+       phy_davicom_init();
+#endif
+#ifdef CONFIG_PHY_LXT
+       phy_lxt_init();
+#endif
+#ifdef CONFIG_PHY_MARVELL
+       phy_marvell_init();
+#endif
+#ifdef CONFIG_PHY_MICREL
+       phy_micrel_init();
+#endif
+#ifdef CONFIG_PHY_NATSEMI
+       phy_natsemi_init();
+#endif
+#ifdef CONFIG_PHY_REALTEK
+       phy_realtek_init();
+#endif
+#ifdef CONFIG_PHY_SMSC
+       phy_smsc_init();
+#endif
+#ifdef CONFIG_PHY_TERANETICS
+       phy_teranetics_init();
+#endif
+#ifdef CONFIG_PHY_VITESSE
+       phy_vitesse_init();
+#endif
+
        return 0;
 }
 
@@ -661,7 +695,8 @@ struct phy_device *phy_connect(struct mii_dev *bus, int addr,
        struct phy_device *phydev;
 
        /* Reset the bus */
-       bus->reset(bus);
+       if (bus->reset)
+               bus->reset(bus);
 
        /* Wait 15ms to make sure the PHY has come out of hard reset */
        udelay(15000);
@@ -683,7 +718,7 @@ struct phy_device *phy_connect(struct mii_dev *bus, int addr,
 
        phydev->dev = dev;
 
-       printf("%s connected to %s\n", dev->name, phydev->drv->name);
+       debug("%s connected to %s\n", dev->name, phydev->drv->name);
 
        return phydev;
 }