Commit d709b2a1 authored by Arnd Bergmann's avatar Arnd Bergmann Committed by David S. Miller

net/mlx5e: skip loopback selftest with !CONFIG_INET

When CONFIG_INET is disabled, the new selftest results in a link
error:

drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.o: In function `mlx5e_test_loopback':
en_selftest.c:(.text.mlx5e_test_loopback+0x2ec): undefined reference to `ip_send_check'
en_selftest.c:(.text.mlx5e_test_loopback+0x34c): undefined reference to `udp4_hwcsum'

This hides the specific test in that configuration.

Fixes: 0952da79 ("net/mlx5e: Add support for loopback selftest")
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 366cbf2f
...@@ -39,7 +39,9 @@ enum { ...@@ -39,7 +39,9 @@ enum {
MLX5E_ST_LINK_STATE, MLX5E_ST_LINK_STATE,
MLX5E_ST_LINK_SPEED, MLX5E_ST_LINK_SPEED,
MLX5E_ST_HEALTH_INFO, MLX5E_ST_HEALTH_INFO,
#ifdef CONFIG_INET
MLX5E_ST_LOOPBACK, MLX5E_ST_LOOPBACK,
#endif
MLX5E_ST_NUM, MLX5E_ST_NUM,
}; };
...@@ -47,7 +49,9 @@ const char mlx5e_self_tests[MLX5E_ST_NUM][ETH_GSTRING_LEN] = { ...@@ -47,7 +49,9 @@ const char mlx5e_self_tests[MLX5E_ST_NUM][ETH_GSTRING_LEN] = {
"Link Test", "Link Test",
"Speed Test", "Speed Test",
"Health Test", "Health Test",
#ifdef CONFIG_INET
"Loopback Test", "Loopback Test",
#endif
}; };
int mlx5e_self_test_num(struct mlx5e_priv *priv) int mlx5e_self_test_num(struct mlx5e_priv *priv)
...@@ -93,6 +97,7 @@ static int mlx5e_test_link_speed(struct mlx5e_priv *priv) ...@@ -93,6 +97,7 @@ static int mlx5e_test_link_speed(struct mlx5e_priv *priv)
return 1; return 1;
} }
#ifdef CONFIG_INET
/* loopback test */ /* loopback test */
#define MLX5E_TEST_PKT_SIZE (MLX5_MPWRQ_SMALL_PACKET_THRESHOLD - NET_IP_ALIGN) #define MLX5E_TEST_PKT_SIZE (MLX5_MPWRQ_SMALL_PACKET_THRESHOLD - NET_IP_ALIGN)
static const char mlx5e_test_text[ETH_GSTRING_LEN] = "MLX5E SELF TEST"; static const char mlx5e_test_text[ETH_GSTRING_LEN] = "MLX5E SELF TEST";
...@@ -304,12 +309,15 @@ static int mlx5e_test_loopback(struct mlx5e_priv *priv) ...@@ -304,12 +309,15 @@ static int mlx5e_test_loopback(struct mlx5e_priv *priv)
kfree(lbtp); kfree(lbtp);
return err; return err;
} }
#endif
static int (*mlx5e_st_func[MLX5E_ST_NUM])(struct mlx5e_priv *) = { static int (*mlx5e_st_func[MLX5E_ST_NUM])(struct mlx5e_priv *) = {
mlx5e_test_link_state, mlx5e_test_link_state,
mlx5e_test_link_speed, mlx5e_test_link_speed,
mlx5e_test_health_info, mlx5e_test_health_info,
mlx5e_test_loopback #ifdef CONFIG_INET
mlx5e_test_loopback,
#endif
}; };
void mlx5e_self_test(struct net_device *ndev, struct ethtool_test *etest, void mlx5e_self_test(struct net_device *ndev, struct ethtool_test *etest,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment