diff options
-rw-r--r-- | drivers/net/ethernet/emulex/benet/be_ethtool.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/net/ethernet/emulex/benet/be_ethtool.c b/drivers/net/ethernet/emulex/benet/be_ethtool.c index cf09d8faca84..66759b6ce373 100644 --- a/drivers/net/ethernet/emulex/benet/be_ethtool.c +++ b/drivers/net/ethernet/emulex/benet/be_ethtool.c | |||
@@ -802,16 +802,18 @@ be_self_test(struct net_device *netdev, struct ethtool_test *test, u64 *data) | |||
802 | 802 | ||
803 | if (test->flags & ETH_TEST_FL_OFFLINE) { | 803 | if (test->flags & ETH_TEST_FL_OFFLINE) { |
804 | if (be_loopback_test(adapter, BE_MAC_LOOPBACK, | 804 | if (be_loopback_test(adapter, BE_MAC_LOOPBACK, |
805 | &data[0]) != 0) { | 805 | &data[0]) != 0) |
806 | test->flags |= ETH_TEST_FL_FAILED; | 806 | test->flags |= ETH_TEST_FL_FAILED; |
807 | } | 807 | |
808 | if (be_loopback_test(adapter, BE_PHY_LOOPBACK, | 808 | if (be_loopback_test(adapter, BE_PHY_LOOPBACK, |
809 | &data[1]) != 0) { | 809 | &data[1]) != 0) |
810 | test->flags |= ETH_TEST_FL_FAILED; | ||
811 | } | ||
812 | if (be_loopback_test(adapter, BE_ONE_PORT_EXT_LOOPBACK, | ||
813 | &data[2]) != 0) { | ||
814 | test->flags |= ETH_TEST_FL_FAILED; | 810 | test->flags |= ETH_TEST_FL_FAILED; |
811 | |||
812 | if (test->flags & ETH_TEST_FL_EXTERNAL_LB) { | ||
813 | if (be_loopback_test(adapter, BE_ONE_PORT_EXT_LOOPBACK, | ||
814 | &data[2]) != 0) | ||
815 | test->flags |= ETH_TEST_FL_FAILED; | ||
816 | test->flags |= ETH_TEST_FL_EXTERNAL_LB_DONE; | ||
815 | } | 817 | } |
816 | } | 818 | } |
817 | 819 | ||