diff options
author | Shahed Shaikh <shahed.shaikh@qlogic.com> | 2013-08-02 23:15:58 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-08-03 15:03:03 -0400 |
commit | 2e3ea7e763f2ce33bbede1cd5cb8d4cd60f3e11a (patch) | |
tree | 09af12a57a4cbbfd97f33dbebc32cb56e5544a38 | |
parent | 01b91f4c31e434d08fa6b7f4d261cc4e98c0772a (diff) |
qlcnic: Fix external loopback test.
Driver was not handling external loopback diagnostic
test request.
Signed-off-by: Shahed Shaikh <shahed.shaikh@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c index 05a847e599c6..7a58e390e935 100644 --- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c +++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c | |||
@@ -150,6 +150,7 @@ static const char qlcnic_gstrings_test[][ETH_GSTRING_LEN] = { | |||
150 | "Link_Test_on_offline", | 150 | "Link_Test_on_offline", |
151 | "Interrupt_Test_offline", | 151 | "Interrupt_Test_offline", |
152 | "Internal_Loopback_offline", | 152 | "Internal_Loopback_offline", |
153 | "External_Loopback_offline", | ||
153 | "EEPROM_Test_offline" | 154 | "EEPROM_Test_offline" |
154 | }; | 155 | }; |
155 | 156 | ||
@@ -1026,8 +1027,15 @@ qlcnic_diag_test(struct net_device *dev, struct ethtool_test *eth_test, | |||
1026 | if (data[3]) | 1027 | if (data[3]) |
1027 | eth_test->flags |= ETH_TEST_FL_FAILED; | 1028 | eth_test->flags |= ETH_TEST_FL_FAILED; |
1028 | 1029 | ||
1029 | data[4] = qlcnic_eeprom_test(dev); | 1030 | if (eth_test->flags & ETH_TEST_FL_EXTERNAL_LB) { |
1030 | if (data[4]) | 1031 | data[4] = qlcnic_loopback_test(dev, QLCNIC_ELB_MODE); |
1032 | if (data[4]) | ||
1033 | eth_test->flags |= ETH_TEST_FL_FAILED; | ||
1034 | eth_test->flags |= ETH_TEST_FL_EXTERNAL_LB_DONE; | ||
1035 | } | ||
1036 | |||
1037 | data[5] = qlcnic_eeprom_test(dev); | ||
1038 | if (data[5]) | ||
1031 | eth_test->flags |= ETH_TEST_FL_FAILED; | 1039 | eth_test->flags |= ETH_TEST_FL_FAILED; |
1032 | } | 1040 | } |
1033 | } | 1041 | } |