diff options
author | Matt Carlson <mcarlson@broadcom.com> | 2010-06-05 17:24:35 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-06-06 17:56:01 -0700 |
commit | 57d8b88030ca9f295bb72ef65228c6d86bed22f6 (patch) | |
tree | 3cafb558c5027cb092080d136d946eee55284305 /drivers/net/tg3.c | |
parent | 2430b031be8d3eb57f22f2df6fb3784564109db0 (diff) | |
download | blackbird-op-linux-57d8b88030ca9f295bb72ef65228c6d86bed22f6.tar.gz blackbird-op-linux-57d8b88030ca9f295bb72ef65228c6d86bed22f6.zip |
tg3: 5717: Allow serdes link via parallel detect
The 5717 serdes phy brings link up via parallel detection without any
additional help from the driver. This patch changes the
tg3_setup_fiber_mii_phy() function to detect and allow the use of this
feature.
Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/tg3.c')
-rw-r--r-- | drivers/net/tg3.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index d169337bc7ef..2dcde1343cc7 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c @@ -4206,6 +4206,8 @@ static int tg3_setup_fiber_mii_phy(struct tg3 *tp, int force_reset) current_duplex = DUPLEX_FULL; else current_duplex = DUPLEX_HALF; + } else if (!(tp->tg3_flags2 & TG3_FLG2_5780_CLASS)) { + /* Link is up via parallel detect */ } else { current_link_up = 0; } @@ -8531,8 +8533,10 @@ static void tg3_timer(unsigned long __opaque) } tg3_setup_phy(tp, 0); } - } else if (tp->tg3_flags2 & TG3_FLG2_MII_SERDES) + } else if ((tp->tg3_flags2 & TG3_FLG2_MII_SERDES) && + !(tp->tg3_flags2 & TG3_FLG2_5780_CLASS)) { tg3_serdes_parallel_detect(tp); + } tp->timer_counter = tp->timer_multiplier; } |