Просмотр исходного кода

net, davinci_emac: let the EMAC detect the PHYs

Once the MDIO state machine has been initialized and enabled, it
starts polling all 32 PHY addresses on the MDIO bus, looking for
an active PHY. Add a 5 ms delay, so all PHYs are for sure detected.

This problem was detected on the cmc board with a KSZ8864 switch.

Signed-off-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Heiko Schocher 13 лет назад
Родитель
Сommit
19fdf9a1c3
1 измененных файлов с 3 добавлено и 0 удалено
  1. 3 0
      drivers/net/davinci_emac.c

+ 3 - 0
drivers/net/davinci_emac.c

@@ -680,6 +680,9 @@ int davinci_emac_initialize(void)
 
 	davinci_eth_mdio_enable();
 
+	/* let the EMAC detect the PHYs */
+	udelay(5000);
+
 	for (i = 0; i < 256; i++) {
 		if (readl(&adap_mdio->ALIVE))
 			break;