ip17xx: Avoid auto-negotiation

Let ip175c_config_init() initialize the link state of the PHY and set the
PHY state machine directly to the PHY_RUNNING state in order to skip the
auto-negotiation phase.

Previously, auto-negotiation on PHY 0 (switch port 0) influenced the ethernet
driver connected to the CPU port, causing all sorts of weird effects.

Signed-off-by: Martin Mares <mj@ucw.cz>
Signed-off-by: Patrick Horn <patrick.horn@gmail.com>

SVN-Revision: 21720
This commit is contained in:
Gabor Juhos 2010-06-08 20:18:47 +00:00
parent a7301c57a4
commit d48ba78aa4

View File

@ -1344,6 +1344,11 @@ static int ip175c_config_init(struct phy_device *pdev)
ip175c_reset(&state->dev);
state->registered = true;
pdev->state = PHY_RUNNING;
pdev->speed = SPEED_100;
pdev->duplex = DUPLEX_FULL;
pdev->pause = pdev->asym_pause = 0;
netif_carrier_on(pdev->attached_dev);
return 0;
@ -1365,9 +1370,6 @@ static int ip175c_config_aneg(struct phy_device *pdev)
static int ip175c_read_status(struct phy_device *pdev)
{
pdev->speed = SPEED_100;
pdev->duplex = DUPLEX_FULL;
pdev->pause = pdev->asym_pause = 0;
return 0;
}