aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2016-05-09 22:05:13 -0400
committerDavid S. Miller <davem@davemloft.net>2016-05-09 22:05:13 -0400
commit1de1d449c6cf701e09d2941d042b28328118ad1a (patch)
tree4c64064f62b94411598941dcd87f810e7db2e7d7
parente800072c18f0d7b89a80fa46dceb3d080c80e09c (diff)
mlx5: Fix merge errors.
I accidently let Arnd's VXLAN dependency changes slip into net-next, they are only appropriate for net. Also the flow steering structural changes to mlx5e_priv got scrambled during the merge resolution as well. Fix that all up. Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/Kconfig7
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/Makefile3
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/en.h5
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/en_main.c3
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/vxlan.h8
5 files changed, 2 insertions, 24 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/Kconfig b/drivers/net/ethernet/mellanox/mlx5/core/Kconfig
index f5c3b9465d8d..1cf722eba607 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/Kconfig
+++ b/drivers/net/ethernet/mellanox/mlx5/core/Kconfig
@@ -31,10 +31,3 @@ config MLX5_CORE_EN_DCB
31 This flag is depended on the kernel's DCB support. 31 This flag is depended on the kernel's DCB support.
32 32
33 If unsure, set to Y 33 If unsure, set to Y
34
35config MLX5_CORE_EN_VXLAN
36 bool "VXLAN offloads Support"
37 default y
38 depends on MLX5_CORE_EN && VXLAN && !(MLX5_CORE=y && VXLAN=m)
39 ---help---
40 Say Y here if you want to use VXLAN offloads in the driver.
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/Makefile b/drivers/net/ethernet/mellanox/mlx5/core/Makefile
index e4a5b37b90ab..b531d4f3c00b 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/Makefile
+++ b/drivers/net/ethernet/mellanox/mlx5/core/Makefile
@@ -6,7 +6,6 @@ mlx5_core-y := main.o cmd.o debugfs.o fw.o eq.o uar.o pagealloc.o \
6 6
7mlx5_core-$(CONFIG_MLX5_CORE_EN) += wq.o eswitch.o \ 7mlx5_core-$(CONFIG_MLX5_CORE_EN) += wq.o eswitch.o \
8 en_main.o en_fs.o en_ethtool.o en_tx.o en_rx.o \ 8 en_main.o en_fs.o en_ethtool.o en_tx.o en_rx.o \
9 en_txrx.o en_clock.o en_tc.o en_arfs.o 9 en_txrx.o en_clock.o vxlan.o en_tc.o en_arfs.o
10 10
11mlx5_core-$(CONFIG_MLX5_CORE_EN_VXLAN) += vxlan.o
12mlx5_core-$(CONFIG_MLX5_CORE_EN_DCB) += en_dcbnl.o 11mlx5_core-$(CONFIG_MLX5_CORE_EN_DCB) += en_dcbnl.o
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en.h b/drivers/net/ethernet/mellanox/mlx5/core/en.h
index 7aea32e085b3..bfa5daaaf5aa 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en.h
@@ -522,12 +522,7 @@ struct mlx5e_priv {
522 struct mlx5e_direct_tir direct_tir[MLX5E_MAX_NUM_CHANNELS]; 522 struct mlx5e_direct_tir direct_tir[MLX5E_MAX_NUM_CHANNELS];
523 523
524 struct mlx5e_flow_steering fs; 524 struct mlx5e_flow_steering fs;
525 struct mlx5e_flow_tables fts;
526 struct mlx5e_eth_addr_db eth_addr;
527 struct mlx5e_vlan_db vlan;
528#ifdef CONFIG_MLX5_CORE_EN_VXLAN
529 struct mlx5e_vxlan_db vxlan; 525 struct mlx5e_vxlan_db vxlan;
530#endif
531 526
532 struct mlx5e_params params; 527 struct mlx5e_params params;
533 struct workqueue_struct *wq; 528 struct workqueue_struct *wq;
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c
index b60a1bc6f457..1c70e518b5c5 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c
@@ -2509,7 +2509,6 @@ static int mlx5e_get_vf_stats(struct net_device *dev,
2509 vf_stats); 2509 vf_stats);
2510} 2510}
2511 2511
2512#if IS_ENABLED(CONFIG_MLX5_CORE_EN_VXLAN)
2513static void mlx5e_add_vxlan_port(struct net_device *netdev, 2512static void mlx5e_add_vxlan_port(struct net_device *netdev,
2514 sa_family_t sa_family, __be16 port) 2513 sa_family_t sa_family, __be16 port)
2515{ 2514{
@@ -2581,7 +2580,6 @@ static netdev_features_t mlx5e_features_check(struct sk_buff *skb,
2581 2580
2582 return features; 2581 return features;
2583} 2582}
2584#endif
2585 2583
2586static const struct net_device_ops mlx5e_netdev_ops_basic = { 2584static const struct net_device_ops mlx5e_netdev_ops_basic = {
2587 .ndo_open = mlx5e_open, 2585 .ndo_open = mlx5e_open,
@@ -2616,7 +2614,6 @@ static const struct net_device_ops mlx5e_netdev_ops_sriov = {
2616 .ndo_set_features = mlx5e_set_features, 2614 .ndo_set_features = mlx5e_set_features,
2617 .ndo_change_mtu = mlx5e_change_mtu, 2615 .ndo_change_mtu = mlx5e_change_mtu,
2618 .ndo_do_ioctl = mlx5e_ioctl, 2616 .ndo_do_ioctl = mlx5e_ioctl,
2619#ifdef CONFIG_MLX5_CORE_EN_VXLAN
2620 .ndo_add_vxlan_port = mlx5e_add_vxlan_port, 2617 .ndo_add_vxlan_port = mlx5e_add_vxlan_port,
2621 .ndo_del_vxlan_port = mlx5e_del_vxlan_port, 2618 .ndo_del_vxlan_port = mlx5e_del_vxlan_port,
2622 .ndo_features_check = mlx5e_features_check, 2619 .ndo_features_check = mlx5e_features_check,
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/vxlan.h b/drivers/net/ethernet/mellanox/mlx5/core/vxlan.h
index 217ac530a514..5def12c048e3 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/vxlan.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/vxlan.h
@@ -48,18 +48,12 @@ struct mlx5e_vxlan_work {
48 48
49static inline bool mlx5e_vxlan_allowed(struct mlx5_core_dev *mdev) 49static inline bool mlx5e_vxlan_allowed(struct mlx5_core_dev *mdev)
50{ 50{
51 return IS_ENABLED(CONFIG_MLX5_CORE_EN_VXLAN) && 51 return (MLX5_CAP_ETH(mdev, tunnel_stateless_vxlan) &&
52 (MLX5_CAP_ETH(mdev, tunnel_stateless_vxlan) &&
53 mlx5_core_is_pf(mdev)); 52 mlx5_core_is_pf(mdev));
54} 53}
55 54
56#ifdef CONFIG_MLX5_CORE_EN_VXLAN
57void mlx5e_vxlan_init(struct mlx5e_priv *priv); 55void mlx5e_vxlan_init(struct mlx5e_priv *priv);
58void mlx5e_vxlan_cleanup(struct mlx5e_priv *priv); 56void mlx5e_vxlan_cleanup(struct mlx5e_priv *priv);
59#else
60static inline void mlx5e_vxlan_init(struct mlx5e_priv *priv) {}
61static inline void mlx5e_vxlan_cleanup(struct mlx5e_priv *priv) {}
62#endif
63 57
64void mlx5e_vxlan_queue_work(struct mlx5e_priv *priv, sa_family_t sa_family, 58void mlx5e_vxlan_queue_work(struct mlx5e_priv *priv, sa_family_t sa_family,
65 u16 port, int add); 59 u16 port, int add);