linux/drivers/net/phy
Trent Piepho de339c2aa7 phylib: Fix auto-negotiation restart avoidance
A previous patch, 51e2a3846e, made
genphy_config_aneg() not restart aneg by calling genphy_restart_aneg() if
the advertisement hadn't changed.

But, genphy_restart_aneg() doesn't just restart aneg, it may also *enable*
aneg or un-isolate the PHY from the MII (those functions are controlled by
the same register).  The code to avoid calling genphy_restart_aneg() didn't
consider this.

So, modify genphy_config_aneg() to also check if the PHY needs to have aneg
enabled or be un-isolated before deciding not to restart aneg.

This caused a problem with certain Davicom PHYs, as that driver isolates
the PHY (why?) before calling genphy_config_aneg() and expects the PHY to
be un-isolated by that function.

Signed-off-by: Trent Piepho <tpiepho@freescale.com>
Reported-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-11-19 15:52:41 -08:00
..
broadcom.c PHYLIB: Add 1000Base-X support for Broadcom bcm5482 2008-05-22 06:34:31 -04:00
cicada.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
davicom.c dm9161: add configuration for MII/RMII 2008-03-05 06:26:56 -05:00
fixed.c phylib: two dynamic mii_bus allocation fallout fixes 2008-10-09 09:45:04 -07:00
icplus.c phylib: add the ICPlus IP175C PHY driver 2007-07-08 22:16:38 -04:00
Kconfig net: OpenFirmware GPIO based MDIO bitbang driver 2008-05-30 22:18:25 -04:00
lxt.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
Makefile net: OpenFirmware GPIO based MDIO bitbang driver 2008-05-30 22:18:25 -04:00
marvell.c phy: Add support for Marvell 88E1118 PHY 2008-11-15 14:04:27 -08:00
mdio_bus.c phylib: fix premature freeing of struct mii_bus 2008-11-14 18:19:40 -05:00
mdio-bitbang.c phylib: move to dynamic allocation of struct mii_bus 2008-10-08 16:29:57 -07:00
mdio-ofgpio.c phylib: move to dynamic allocation of struct mii_bus 2008-10-08 16:29:57 -07:00
phy_device.c phylib: Fix auto-negotiation restart avoidance 2008-11-19 15:52:41 -08:00
phy.c phylib: add mdiobus_{read,write} 2008-10-08 16:38:41 -07:00
qsemi.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
realtek.c phylib: Add Realtek 821x eth PHY support 2008-02-03 04:28:42 -08:00
smsc.c Add support for SMSC LAN8187 and LAN8700 PHYs 2008-04-29 01:55:59 -04:00
vitesse.c Fix error checking in Vitesse IRQ config 2007-07-24 16:28:41 -04:00