]> git.baikalelectronics.ru Git - kernel.git/commit
r8169: fix random mdio_write failures
authorTimo Teräs <timo.teras@iki.fi>
Sun, 6 Jun 2010 22:38:47 +0000 (15:38 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sun, 6 Jun 2010 22:38:47 +0000 (15:38 -0700)
commit27f89414ac4e5622a5a97ae5a1d47d92b3e90861
tree1e414be3a1fa1dadaa70f2cac173f7328efb75e4
parent681a3c00ef639cf9741c71270556b975194d9844
r8169: fix random mdio_write failures

Some configurations need delay between the "write completed" indication
and new write to work reliably.

Realtek driver seems to use longer delay when polling the "write complete"
bit, so it waits long enough between writes with high probability (but
could probably break too). This patch adds a new udelay to make sure we
wait unconditionally some time after the write complete indication.

This caused a regression with XID 18000000 boards when the board specific
phy configuration writing many mdio registers was added in commit
51f7fa3054 (r8169: phy init for the 8169scd). Some of the configration
mdio writes would almost always fail, and depending on failure might leave
the PHY in non-working state.

Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Acked-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/r8169.c