diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-06-08 20:18:47 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-06-08 20:18:47 +0000 |
commit | 714e378fed66a8aaa76b935f1039522cfdb99771 (patch) | |
tree | 92a5d2c7ad709d6370640ea342564fa8412aae80 /target/linux | |
parent | b2b1cad62eadbd5e6c25e18c9fe5fa15f29b2efa (diff) |
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21720 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux')
-rw-r--r-- | target/linux/generic-2.6/files/drivers/net/phy/ip175c.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/target/linux/generic-2.6/files/drivers/net/phy/ip175c.c b/target/linux/generic-2.6/files/drivers/net/phy/ip175c.c index ede5d5134..ef4b4d909 100644 --- a/target/linux/generic-2.6/files/drivers/net/phy/ip175c.c +++ b/target/linux/generic-2.6/files/drivers/net/phy/ip175c.c @@ -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; } |