Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ibm_newemac: Increase MDIO timeouts

This patch doubles the MDIO timeouts in EMAC as there are field
cases where they are two short to communicate with some PHYs.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

authored by

Benjamin Herrenschmidt and committed by
Jeff Garzik
cca87c18 815b97c6

+4 -4
+4 -4
drivers/net/ibm_newemac/core.c
··· 738 738 rgmii_get_mdio(dev->rgmii_dev, dev->rgmii_port); 739 739 740 740 /* Wait for management interface to become idle */ 741 - n = 10; 741 + n = 20; 742 742 while (!emac_phy_done(dev, in_be32(&p->stacr))) { 743 743 udelay(1); 744 744 if (!--n) { ··· 763 763 out_be32(&p->stacr, r); 764 764 765 765 /* Wait for read to complete */ 766 - n = 100; 766 + n = 200; 767 767 while (!emac_phy_done(dev, (r = in_be32(&p->stacr)))) { 768 768 udelay(1); 769 769 if (!--n) { ··· 810 810 rgmii_get_mdio(dev->rgmii_dev, dev->rgmii_port); 811 811 812 812 /* Wait for management interface to be idle */ 813 - n = 10; 813 + n = 20; 814 814 while (!emac_phy_done(dev, in_be32(&p->stacr))) { 815 815 udelay(1); 816 816 if (!--n) { ··· 836 836 out_be32(&p->stacr, r); 837 837 838 838 /* Wait for write to complete */ 839 - n = 100; 839 + n = 200; 840 840 while (!emac_phy_done(dev, in_be32(&p->stacr))) { 841 841 udelay(1); 842 842 if (!--n) {