diff options
-rw-r--r-- | drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c index f07021bcb85e..88e9b47a3eb6 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c | |||
@@ -2864,9 +2864,16 @@ static void bnx2x_self_test(struct net_device *dev, | |||
2864 | 2864 | ||
2865 | memset(buf, 0, sizeof(u64) * BNX2X_NUM_TESTS(bp)); | 2865 | memset(buf, 0, sizeof(u64) * BNX2X_NUM_TESTS(bp)); |
2866 | 2866 | ||
2867 | if (bnx2x_test_nvram(bp) != 0) { | ||
2868 | if (!IS_MF(bp)) | ||
2869 | buf[4] = 1; | ||
2870 | else | ||
2871 | buf[0] = 1; | ||
2872 | etest->flags |= ETH_TEST_FL_FAILED; | ||
2873 | } | ||
2874 | |||
2867 | if (!netif_running(dev)) { | 2875 | if (!netif_running(dev)) { |
2868 | DP(BNX2X_MSG_ETHTOOL, | 2876 | DP(BNX2X_MSG_ETHTOOL, "Interface is down\n"); |
2869 | "Can't perform self-test when interface is down\n"); | ||
2870 | return; | 2877 | return; |
2871 | } | 2878 | } |
2872 | 2879 | ||
@@ -2928,13 +2935,7 @@ static void bnx2x_self_test(struct net_device *dev, | |||
2928 | /* wait until link state is restored */ | 2935 | /* wait until link state is restored */ |
2929 | bnx2x_wait_for_link(bp, link_up, is_serdes); | 2936 | bnx2x_wait_for_link(bp, link_up, is_serdes); |
2930 | } | 2937 | } |
2931 | if (bnx2x_test_nvram(bp) != 0) { | 2938 | |
2932 | if (!IS_MF(bp)) | ||
2933 | buf[4] = 1; | ||
2934 | else | ||
2935 | buf[0] = 1; | ||
2936 | etest->flags |= ETH_TEST_FL_FAILED; | ||
2937 | } | ||
2938 | if (bnx2x_test_intr(bp) != 0) { | 2939 | if (bnx2x_test_intr(bp) != 0) { |
2939 | if (!IS_MF(bp)) | 2940 | if (!IS_MF(bp)) |
2940 | buf[5] = 1; | 2941 | buf[5] = 1; |