e1000e: 82579 PHY incorrectly identified during init
authorBruce Allan <bruce.w.allan@intel.com>
Wed, 24 Nov 2010 06:01:46 +0000 (06:01 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sat, 11 Dec 2010 06:13:34 +0000 (22:13 -0800)
commit664dc878ed6f0476b875547547a49e06f7a4e73b
treeae17b4d149081ed45d344894ba8aff79b3b425e8
parentce54afd16d874ac07378a8bb55d26f7f5b613c0e
e1000e: 82579 PHY incorrectly identified during init

During init, reading the 2 PHY ID registers back-to-back in the default
fast mode could return invalid data (all F's) and in slow mode could
return data to the second read the data from the first read.  To resolve
the issue in fast mode, set to slow mode before any PHY accesses; to
resolve the issue in slow mode, put in a delay for every 82579 PHY access.
Since this PHY is currently only paired with the pch2lan MAC and the PHY
type is not known before the first PHY access which can fail this way,
check for this based on MAC-type.

Signed-off-by: Bruce Allan <bruce.w.allan@intel.com>
Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/e1000e/ich8lan.c
drivers/net/e1000e/phy.c