bnx2x: Fix 20G KR2 support claims
authorYaniv Rosner <yanivr@broadcom.com>
Thu, 20 Jun 2013 14:39:11 +0000 (17:39 +0300)
committerDavid S. Miller <davem@davemloft.net>
Mon, 24 Jun 2013 06:54:16 +0000 (23:54 -0700)
Don't claim 20G is supported if the speed is unsupported by the phys
(reflected by various ethtools and ndos).

Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Yuval Mintz <yuvalmin@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c

index 7a7e326b35090916741d8314794939c8d2271034..d468fe48093ad01f62078e4098e8ce8c215f8d73 100644 (file)
@@ -10558,6 +10558,10 @@ static void bnx2x_link_settings_supported(struct bnx2x *bp, u32 switch_cfg)
                if (!(bp->link_params.speed_cap_mask[idx] &
                                        PORT_HW_CFG_SPEED_CAPABILITY_D0_10G))
                        bp->port.supported[idx] &= ~SUPPORTED_10000baseT_Full;
+
+               if (!(bp->link_params.speed_cap_mask[idx] &
+                                       PORT_HW_CFG_SPEED_CAPABILITY_D0_20G))
+                       bp->port.supported[idx] &= ~SUPPORTED_20000baseKR2_Full;
        }
 
        BNX2X_DEV_INFO("supported 0x%x 0x%x\n", bp->port.supported[0],