mpc5xxx_fec: add call to reset_phy() after PHY initialization
authorIlya Yanok <yanok@emcraft.com>
Thu, 19 Aug 2010 09:09:06 +0000 (11:09 +0200)
committerBen Warren <biggerbadderben@gmail.com>
Tue, 12 Oct 2010 06:00:29 +0000 (23:00 -0700)
Some boards need their board-specific PHY quirks to be called
to PHY to work normally. As mpc5xxx_fec driver uses on demand
PHY initialization and can even reinit PHY during normal operation
we can't count on reset_phy() call from arch/<arch>/lib/board.c
(it is most likely called _before_ we init the PHY from the
driver) so we need to add call to reset_phy() directly in the
driver.

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
drivers/net/mpc5xxx_fec.c

index c88e596c01fa222dd5b0cfc2034791c898316c5b..bc8c9222dcf8f9ac9f9d41ba9d16b03279b19cda 100644 (file)
@@ -249,6 +249,13 @@ static int mpc5xxx_fec_init(struct eth_device *dev, bd_t * bis)
 
        mpc5xxx_fec_init_phy(dev, bis);
 
+       /*
+        * Call board-specific PHY fixups (if any)
+        */
+#ifdef CONFIG_RESET_PHY_R
+       reset_phy();
+#endif
+
        /*
         * Initialize RxBD/TxBD rings
         */