From 9c491aa61c1fdda7c5085660f53d43dd65c0c4a9 Mon Sep 17 00:00:00 2001 From: Michael Chan Date: Mon, 15 Feb 2010 19:42:10 +0000 Subject: [PATCH] --- yaml --- r: 184195 b: refs/heads/master c: beb499afe3c9c006bb2d66ceaff0f354d0405ff4 h: refs/heads/master i: 184193: 3bae7483b8eb0cd2238f0852e7ea698e09a81a9c 184191: 755627a9b939b9e5eb59202a32b1ff4f5cfd4c67 v: v3 --- [refs] | 2 +- trunk/drivers/net/bnx2.c | 33 ++++++++------------------------- 2 files changed, 9 insertions(+), 26 deletions(-) diff --git a/[refs] b/[refs] index f1e47cd8417a..bba9ef26c5bd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5726026bfffa13e9b1098d7bc177618cbbaa9388 +refs/heads/master: beb499afe3c9c006bb2d66ceaff0f354d0405ff4 diff --git a/trunk/drivers/net/bnx2.c b/trunk/drivers/net/bnx2.c index dbe487f2915d..d1e5e5d9e986 100644 --- a/trunk/drivers/net/bnx2.c +++ b/trunk/drivers/net/bnx2.c @@ -6751,32 +6751,15 @@ bnx2_set_settings(struct net_device *dev, struct ethtool_cmd *cmd) if (cmd->autoneg == AUTONEG_ENABLE) { autoneg |= AUTONEG_SPEED; - cmd->advertising &= ETHTOOL_ALL_COPPER_SPEED; - - /* allow advertising 1 speed */ - if ((cmd->advertising == ADVERTISED_10baseT_Half) || - (cmd->advertising == ADVERTISED_10baseT_Full) || - (cmd->advertising == ADVERTISED_100baseT_Half) || - (cmd->advertising == ADVERTISED_100baseT_Full)) { - - if (cmd->port == PORT_FIBRE) - goto err_out_unlock; - - advertising = cmd->advertising; - - } else if (cmd->advertising == ADVERTISED_2500baseX_Full) { - if (!(bp->phy_flags & BNX2_PHY_FLAG_2_5G_CAPABLE) || - (cmd->port == PORT_TP)) - goto err_out_unlock; - } else if (cmd->advertising == ADVERTISED_1000baseT_Full) - advertising = cmd->advertising; - else if (cmd->advertising == ADVERTISED_1000baseT_Half) - goto err_out_unlock; - else { - if (cmd->port == PORT_FIBRE) - advertising = ETHTOOL_ALL_FIBRE_SPEED; - else + advertising = cmd->advertising; + if (cmd->port == PORT_TP) { + advertising &= ETHTOOL_ALL_COPPER_SPEED; + if (!advertising) advertising = ETHTOOL_ALL_COPPER_SPEED; + } else { + advertising &= ETHTOOL_ALL_FIBRE_SPEED; + if (!advertising) + advertising = ETHTOOL_ALL_FIBRE_SPEED; } advertising |= ADVERTISED_Autoneg; }