net/mlx5: E-Switch, Refactor eswitch SR-IOV interface
authorBodong Wang <bodong@mellanox.com>
Fri, 28 Jun 2019 22:36:15 +0000 (22:36 +0000)
committerSaeed Mahameed <saeedm@mellanox.com>
Mon, 1 Jul 2019 23:40:30 +0000 (16:40 -0700)
Devlink eswitch mode is not necessarily related to SR-IOV, e.g, ECPF
can be at offload mode when SR-IOV is not enabled.

Rename the interface and eswitch mode names to decouple from SR-IOV,
and cleanup eswitch messages accordingly.

Signed-off-by: Bodong Wang <bodong@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/infiniband/hw/mlx5/ib_rep.h
drivers/infiniband/hw/mlx5/main.c
drivers/net/ethernet/mellanox/mlx5/core/en_main.c
drivers/net/ethernet/mellanox/mlx5/core/en_rep.c
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
drivers/net/ethernet/mellanox/mlx5/core/eswitch.h
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
drivers/net/ethernet/mellanox/mlx5/core/lag.c
drivers/net/ethernet/mellanox/mlx5/core/sriov.c
include/linux/mlx5/eswitch.h

index 22adce2d6795aa48c4beb5ad347050fc2b17a5ab..478503ce20df0c112674ad1e6590fead1c37cf35 100644 (file)
@@ -28,7 +28,7 @@ struct net_device *mlx5_ib_get_rep_netdev(struct mlx5_eswitch *esw,
 #else /* CONFIG_MLX5_ESWITCH */
 static inline u8 mlx5_ib_eswitch_mode(struct mlx5_eswitch *esw)
 {
-       return SRIOV_NONE;
+       return MLX5_ESWITCH_NONE;
 }
 
 static inline
index 602ac3feea5d88e935ed41dd64dc6794fe8f5dc0..798aa5e0941e554a6272ebbf836eb99684a0f63e 100644 (file)
@@ -6814,7 +6814,7 @@ static void *mlx5_ib_add(struct mlx5_core_dev *mdev)
        printk_once(KERN_INFO "%s", mlx5_version);
 
        if (MLX5_ESWITCH_MANAGER(mdev) &&
-           mlx5_ib_eswitch_mode(mdev->priv.eswitch) == SRIOV_OFFLOADS) {
+           mlx5_ib_eswitch_mode(mdev->priv.eswitch) == MLX5_ESWITCH_OFFLOADS) {
                if (!mlx5_core_mp_enabled(mdev))
                        mlx5_ib_register_vport_reps(mdev);
                return mdev;
index bc9150f18116e90cc290544b863946dc314fc1ea..f83fdb67e760969d41ec04ec68019a0fa69fcf17 100644 (file)
@@ -5115,7 +5115,7 @@ static void *mlx5e_add(struct mlx5_core_dev *mdev)
 
 #ifdef CONFIG_MLX5_ESWITCH
        if (MLX5_ESWITCH_MANAGER(mdev) &&
-           mlx5_eswitch_mode(mdev->priv.eswitch) == SRIOV_OFFLOADS) {
+           mlx5_eswitch_mode(mdev->priv.eswitch) == MLX5_ESWITCH_OFFLOADS) {
                mlx5e_rep_register_vport_reps(mdev);
                return mdev;
        }
index abe8540d68793c41649a153168bc734dce507d4f..ef6d61c1d8865068de4a3ea7bf856e6882ed2bb7 100644 (file)
@@ -391,7 +391,7 @@ static int mlx5e_rep_get_port_parent_id(struct net_device *dev,
        struct mlx5e_priv *uplink_priv = NULL;
        struct net_device *uplink_dev;
 
-       if (esw->mode == SRIOV_NONE)
+       if (esw->mode == MLX5_ESWITCH_NONE)
                return -EOPNOTSUPP;
 
        uplink_dev = mlx5_eswitch_uplink_get_proto_dev(esw, REP_ETH);
@@ -419,7 +419,7 @@ static void mlx5e_sqs2vport_stop(struct mlx5_eswitch *esw,
        struct mlx5e_rep_sq *rep_sq, *tmp;
        struct mlx5e_rep_priv *rpriv;
 
-       if (esw->mode != SRIOV_OFFLOADS)
+       if (esw->mode != MLX5_ESWITCH_OFFLOADS)
                return;
 
        rpriv = mlx5e_rep_to_rep_priv(rep);
@@ -440,7 +440,7 @@ static int mlx5e_sqs2vport_start(struct mlx5_eswitch *esw,
        int err;
        int i;
 
-       if (esw->mode != SRIOV_OFFLOADS)
+       if (esw->mode != MLX5_ESWITCH_OFFLOADS)
                return 0;
 
        rpriv = mlx5e_rep_to_rep_priv(rep);
index 8ff1ca46d8d36a2f09425982eed87686b1b2b43a..1ff9785c2f837c18be85e5f1adbbf36536169dbe 100644 (file)
@@ -3342,7 +3342,7 @@ mlx5e_tc_add_flow(struct mlx5e_priv *priv,
        if (!tc_can_offload_extack(priv->netdev, f->common.extack))
                return -EOPNOTSUPP;
 
-       if (esw && esw->mode == SRIOV_OFFLOADS)
+       if (esw && esw->mode == MLX5_ESWITCH_OFFLOADS)
                err = mlx5e_add_fdb_flow(priv, f, flow_flags,
                                         filter_dev, flow);
        else
index a758755d7a08b371a908b816824e6be9640d8e51..b42540e1ba6e43312a7f827475c63b9db8127d46 100644 (file)
@@ -497,7 +497,7 @@ static int esw_add_uc_addr(struct mlx5_eswitch *esw, struct vport_addr *vaddr)
 
 fdb_add:
        /* SRIOV is enabled: Forward UC MAC to vport */
-       if (esw->fdb_table.legacy.fdb && esw->mode == SRIOV_LEGACY)
+       if (esw->fdb_table.legacy.fdb && esw->mode == MLX5_ESWITCH_LEGACY)
                vaddr->flow_rule = esw_fdb_set_vport_rule(esw, mac, vport);
 
        esw_debug(esw->dev, "\tADDED UC MAC: vport[%d] %pM fr(%p)\n",
@@ -1577,7 +1577,7 @@ static void esw_apply_vport_conf(struct mlx5_eswitch *esw,
                               flags);
 
        /* Only legacy mode needs ACLs */
-       if (esw->mode == SRIOV_LEGACY) {
+       if (esw->mode == MLX5_ESWITCH_LEGACY) {
                esw_vport_ingress_config(esw, vport);
                esw_vport_egress_config(esw, vport);
        }
@@ -1629,7 +1629,7 @@ static void esw_enable_vport(struct mlx5_eswitch *esw, struct mlx5_vport *vport,
        esw_debug(esw->dev, "Enabling VPORT(%d)\n", vport_num);
 
        /* Create steering drop counters for ingress and egress ACLs */
-       if (vport_num && esw->mode == SRIOV_LEGACY)
+       if (vport_num && esw->mode == MLX5_ESWITCH_LEGACY)
                esw_vport_create_drop_counters(vport);
 
        /* Restore old vport configuration */
@@ -1683,7 +1683,7 @@ static void esw_disable_vport(struct mlx5_eswitch *esw,
        vport->enabled_events = 0;
        esw_vport_disable_qos(esw, vport);
        if (esw->manager_vport != vport_num &&
-           esw->mode == SRIOV_LEGACY) {
+           esw->mode == MLX5_ESWITCH_LEGACY) {
                mlx5_modify_vport_admin_state(esw->dev,
                                              MLX5_VPORT_STATE_OP_MOD_ESW_VPORT,
                                              vport_num, 1,
@@ -1728,7 +1728,7 @@ int mlx5_esw_query_functions(struct mlx5_core_dev *dev, u32 *out, int outlen)
 /* Public E-Switch API */
 #define ESW_ALLOWED(esw) ((esw) && MLX5_ESWITCH_MANAGER((esw)->dev))
 
-int mlx5_eswitch_enable_sriov(struct mlx5_eswitch *esw, int nvfs, int mode)
+int mlx5_eswitch_enable(struct mlx5_eswitch *esw, int nvfs, int mode)
 {
        struct mlx5_vport *vport;
        int total_nvports = 0;
@@ -1737,19 +1737,17 @@ int mlx5_eswitch_enable_sriov(struct mlx5_eswitch *esw, int nvfs, int mode)
 
        if (!ESW_ALLOWED(esw) ||
            !MLX5_CAP_ESW_FLOWTABLE_FDB(esw->dev, ft_support)) {
-               esw_warn(esw->dev, "E-Switch FDB is not supported, aborting ...\n");
+               esw_warn(esw->dev, "FDB is not supported, aborting ...\n");
                return -EOPNOTSUPP;
        }
 
        if (!MLX5_CAP_ESW_INGRESS_ACL(esw->dev, ft_support))
-               esw_warn(esw->dev, "E-Switch ingress ACL is not supported by FW\n");
+               esw_warn(esw->dev, "ingress ACL is not supported by FW\n");
 
        if (!MLX5_CAP_ESW_EGRESS_ACL(esw->dev, ft_support))
-               esw_warn(esw->dev, "E-Switch engress ACL is not supported by FW\n");
+               esw_warn(esw->dev, "engress ACL is not supported by FW\n");
 
-       esw_info(esw->dev, "E-Switch enable SRIOV: nvfs(%d) mode (%d)\n", nvfs, mode);
-
-       if (mode == SRIOV_OFFLOADS) {
+       if (mode == MLX5_ESWITCH_OFFLOADS) {
                if (mlx5_core_is_ecpf_esw_manager(esw->dev))
                        total_nvports = esw->total_vports;
                else
@@ -1760,7 +1758,7 @@ int mlx5_eswitch_enable_sriov(struct mlx5_eswitch *esw, int nvfs, int mode)
 
        mlx5_lag_update(esw->dev);
 
-       if (mode == SRIOV_LEGACY) {
+       if (mode == MLX5_ESWITCH_LEGACY) {
                err = esw_create_legacy_table(esw);
                if (err)
                        goto abort;
@@ -1777,11 +1775,11 @@ int mlx5_eswitch_enable_sriov(struct mlx5_eswitch *esw, int nvfs, int mode)
        if (err)
                esw_warn(esw->dev, "Failed to create eswitch TSAR");
 
-       /* Don't enable vport events when in SRIOV_OFFLOADS mode, since:
+       /* Don't enable vport events when in MLX5_ESWITCH_OFFLOADS mode, since:
         * 1. L2 table (MPFS) is programmed by PF/VF representors netdevs set_rx_mode
         * 2. FDB/Eswitch is programmed by user space tools
         */
-       enabled_events = (mode == SRIOV_LEGACY) ? SRIOV_VPORT_EVENTS : 0;
+       enabled_events = (mode == MLX5_ESWITCH_LEGACY) ? SRIOV_VPORT_EVENTS : 0;
 
        /* Enable PF vport */
        vport = mlx5_eswitch_get_vport(esw, MLX5_VPORT_PF);
@@ -1797,19 +1795,21 @@ int mlx5_eswitch_enable_sriov(struct mlx5_eswitch *esw, int nvfs, int mode)
        mlx5_esw_for_each_vf_vport(esw, i, vport, nvfs)
                esw_enable_vport(esw, vport, enabled_events);
 
-       if (mode == SRIOV_LEGACY) {
+       if (mode == MLX5_ESWITCH_LEGACY) {
                MLX5_NB_INIT(&esw->nb, eswitch_vport_event, NIC_VPORT_CHANGE);
                mlx5_eq_notifier_register(esw->dev, &esw->nb);
        }
 
-       esw_info(esw->dev, "SRIOV enabled: active vports(%d)\n",
-                esw->enabled_vports);
+       esw_info(esw->dev, "Enable: mode(%s), nvfs(%d), active vports(%d)\n",
+                mode == MLX5_ESWITCH_LEGACY ? "LEGACY" : "OFFLOADS",
+                nvfs, esw->enabled_vports);
+
        return 0;
 
 abort:
-       esw->mode = SRIOV_NONE;
+       esw->mode = MLX5_ESWITCH_NONE;
 
-       if (mode == SRIOV_OFFLOADS) {
+       if (mode == MLX5_ESWITCH_OFFLOADS) {
                mlx5_reload_interface(esw->dev, MLX5_INTERFACE_PROTOCOL_IB);
                mlx5_reload_interface(esw->dev, MLX5_INTERFACE_PROTOCOL_ETH);
        }
@@ -1817,22 +1817,23 @@ abort:
        return err;
 }
 
-void mlx5_eswitch_disable_sriov(struct mlx5_eswitch *esw)
+void mlx5_eswitch_disable(struct mlx5_eswitch *esw)
 {
        struct esw_mc_addr *mc_promisc;
        struct mlx5_vport *vport;
        int old_mode;
        int i;
 
-       if (!ESW_ALLOWED(esw) || esw->mode == SRIOV_NONE)
+       if (!ESW_ALLOWED(esw) || esw->mode == MLX5_ESWITCH_NONE)
                return;
 
-       esw_info(esw->dev, "disable SRIOV: active vports(%d) mode(%d)\n",
-                esw->enabled_vports, esw->mode);
+       esw_info(esw->dev, "Disable: mode(%s), nvfs(%d), active vports(%d)\n",
+                esw->mode == MLX5_ESWITCH_LEGACY ? "LEGACY" : "OFFLOADS",
+                esw->dev->priv.sriov.num_vfs, esw->enabled_vports);
 
        mc_promisc = &esw->mc_promisc;
 
-       if (esw->mode == SRIOV_LEGACY)
+       if (esw->mode == MLX5_ESWITCH_LEGACY)
                mlx5_eq_notifier_unregister(esw->dev, &esw->nb);
 
        mlx5_esw_for_all_vports(esw, i, vport)
@@ -1843,17 +1844,17 @@ void mlx5_eswitch_disable_sriov(struct mlx5_eswitch *esw)
 
        esw_destroy_tsar(esw);
 
-       if (esw->mode == SRIOV_LEGACY)
+       if (esw->mode == MLX5_ESWITCH_LEGACY)
                esw_destroy_legacy_table(esw);
-       else if (esw->mode == SRIOV_OFFLOADS)
+       else if (esw->mode == MLX5_ESWITCH_OFFLOADS)
                esw_offloads_cleanup(esw);
 
        old_mode = esw->mode;
-       esw->mode = SRIOV_NONE;
+       esw->mode = MLX5_ESWITCH_NONE;
 
        mlx5_lag_update(esw->dev);
 
-       if (old_mode == SRIOV_OFFLOADS) {
+       if (old_mode == MLX5_ESWITCH_OFFLOADS) {
                mlx5_reload_interface(esw->dev, MLX5_INTERFACE_PROTOCOL_IB);
                mlx5_reload_interface(esw->dev, MLX5_INTERFACE_PROTOCOL_ETH);
        }
@@ -1914,7 +1915,7 @@ int mlx5_eswitch_init(struct mlx5_core_dev *dev)
        }
 
        esw->enabled_vports = 0;
-       esw->mode = SRIOV_NONE;
+       esw->mode = MLX5_ESWITCH_NONE;
        esw->offloads.inline_mode = MLX5_INLINE_MODE_NONE;
        if (MLX5_CAP_ESW_FLOWTABLE_FDB(dev, reformat) &&
            MLX5_CAP_ESW_FLOWTABLE_FDB(dev, decap))
@@ -1984,7 +1985,7 @@ int mlx5_eswitch_set_vport_mac(struct mlx5_eswitch *esw,
 
        ether_addr_copy(evport->info.mac, mac);
        evport->info.node_guid = node_guid;
-       if (evport->enabled && esw->mode == SRIOV_LEGACY)
+       if (evport->enabled && esw->mode == MLX5_ESWITCH_LEGACY)
                err = esw_vport_ingress_config(esw, evport);
 
 unlock:
@@ -2068,7 +2069,7 @@ int __mlx5_eswitch_set_vport_vlan(struct mlx5_eswitch *esw,
 
        evport->info.vlan = vlan;
        evport->info.qos = qos;
-       if (evport->enabled && esw->mode == SRIOV_LEGACY) {
+       if (evport->enabled && esw->mode == MLX5_ESWITCH_LEGACY) {
                err = esw_vport_ingress_config(esw, evport);
                if (err)
                        goto unlock;
@@ -2110,7 +2111,7 @@ int mlx5_eswitch_set_vport_spoofchk(struct mlx5_eswitch *esw,
                mlx5_core_warn(esw->dev,
                               "Spoofchk in set while MAC is invalid, vport(%d)\n",
                               evport->vport);
-       if (evport->enabled && esw->mode == SRIOV_LEGACY)
+       if (evport->enabled && esw->mode == MLX5_ESWITCH_LEGACY)
                err = esw_vport_ingress_config(esw, evport);
        if (err)
                evport->info.spoofchk = pschk;
@@ -2206,7 +2207,7 @@ int mlx5_eswitch_set_vepa(struct mlx5_eswitch *esw, u8 setting)
                return -EPERM;
 
        mutex_lock(&esw->state_lock);
-       if (esw->mode != SRIOV_LEGACY) {
+       if (esw->mode != MLX5_ESWITCH_LEGACY) {
                err = -EOPNOTSUPP;
                goto out;
        }
@@ -2229,7 +2230,7 @@ int mlx5_eswitch_get_vepa(struct mlx5_eswitch *esw, u8 *setting)
                return -EPERM;
 
        mutex_lock(&esw->state_lock);
-       if (esw->mode != SRIOV_LEGACY) {
+       if (esw->mode != MLX5_ESWITCH_LEGACY) {
                err = -EOPNOTSUPP;
                goto out;
        }
@@ -2372,7 +2373,7 @@ static int mlx5_eswitch_query_vport_drop_stats(struct mlx5_core_dev *dev,
        u64 bytes = 0;
        int err = 0;
 
-       if (!vport->enabled || esw->mode != SRIOV_LEGACY)
+       if (!vport->enabled || esw->mode != MLX5_ESWITCH_LEGACY)
                return 0;
 
        if (vport->egress.drop_counter)
@@ -2482,7 +2483,7 @@ free_out:
 
 u8 mlx5_eswitch_mode(struct mlx5_eswitch *esw)
 {
-       return ESW_ALLOWED(esw) ? esw->mode : SRIOV_NONE;
+       return ESW_ALLOWED(esw) ? esw->mode : MLX5_ESWITCH_NONE;
 }
 EXPORT_SYMBOL_GPL(mlx5_eswitch_mode);
 
@@ -2499,10 +2500,10 @@ EXPORT_SYMBOL(mlx5_eswitch_get_encap_mode);
 
 bool mlx5_esw_lag_prereq(struct mlx5_core_dev *dev0, struct mlx5_core_dev *dev1)
 {
-       if ((dev0->priv.eswitch->mode == SRIOV_NONE &&
-            dev1->priv.eswitch->mode == SRIOV_NONE) ||
-           (dev0->priv.eswitch->mode == SRIOV_OFFLOADS &&
-            dev1->priv.eswitch->mode == SRIOV_OFFLOADS))
+       if ((dev0->priv.eswitch->mode == MLX5_ESWITCH_NONE &&
+            dev1->priv.eswitch->mode == MLX5_ESWITCH_NONE) ||
+           (dev0->priv.eswitch->mode == MLX5_ESWITCH_OFFLOADS &&
+            dev1->priv.eswitch->mode == MLX5_ESWITCH_OFFLOADS))
                return true;
 
        return false;
@@ -2511,6 +2512,6 @@ bool mlx5_esw_lag_prereq(struct mlx5_core_dev *dev0, struct mlx5_core_dev *dev1)
 bool mlx5_esw_multipath_prereq(struct mlx5_core_dev *dev0,
                               struct mlx5_core_dev *dev1)
 {
-       return (dev0->priv.eswitch->mode == SRIOV_OFFLOADS &&
-               dev1->priv.eswitch->mode == SRIOV_OFFLOADS);
+       return (dev0->priv.eswitch->mode == MLX5_ESWITCH_OFFLOADS &&
+               dev1->priv.eswitch->mode == MLX5_ESWITCH_OFFLOADS);
 }
index 335cbeee1b9e700b76bf765005f825c5ad137976..273a17243275d4cece1bab3a70910dd069438bed 100644 (file)
@@ -253,8 +253,8 @@ void esw_vport_del_ingress_acl_modify_metadata(struct mlx5_eswitch *esw,
 /* E-Switch API */
 int mlx5_eswitch_init(struct mlx5_core_dev *dev);
 void mlx5_eswitch_cleanup(struct mlx5_eswitch *esw);
-int mlx5_eswitch_enable_sriov(struct mlx5_eswitch *esw, int nvfs, int mode);
-void mlx5_eswitch_disable_sriov(struct mlx5_eswitch *esw);
+int mlx5_eswitch_enable(struct mlx5_eswitch *esw, int nvfs, int mode);
+void mlx5_eswitch_disable(struct mlx5_eswitch *esw);
 int mlx5_eswitch_set_vport_mac(struct mlx5_eswitch *esw,
                               int vport, u8 mac[ETH_ALEN]);
 int mlx5_eswitch_set_vport_state(struct mlx5_eswitch *esw,
@@ -528,8 +528,8 @@ bool mlx5_eswitch_is_vf_vport(const struct mlx5_eswitch *esw, u16 vport_num);
 /* eswitch API stubs */
 static inline int  mlx5_eswitch_init(struct mlx5_core_dev *dev) { return 0; }
 static inline void mlx5_eswitch_cleanup(struct mlx5_eswitch *esw) {}
-static inline int  mlx5_eswitch_enable_sriov(struct mlx5_eswitch *esw, int nvfs, int mode) { return 0; }
-static inline void mlx5_eswitch_disable_sriov(struct mlx5_eswitch *esw) {}
+static inline int  mlx5_eswitch_enable(struct mlx5_eswitch *esw, int nvfs, int mode) { return 0; }
+static inline void mlx5_eswitch_disable(struct mlx5_eswitch *esw) {}
 static inline bool mlx5_esw_lag_prereq(struct mlx5_core_dev *dev0, struct mlx5_core_dev *dev1) { return true; }
 static inline bool mlx5_eswitch_is_funcs_handler(struct mlx5_core_dev *dev) { return false; }
 static inline int
index b253bdf75dd6ae0c1bd449657be9708d334b884c..a1beada1cdbf17a4c7b2d4326028f14b965d4fe5 100644 (file)
@@ -147,7 +147,7 @@ mlx5_eswitch_add_offloaded_rule(struct mlx5_eswitch *esw,
        struct mlx5_flow_table *fdb;
        int j, i = 0;
 
-       if (esw->mode != SRIOV_OFFLOADS)
+       if (esw->mode != MLX5_ESWITCH_OFFLOADS)
                return ERR_PTR(-EOPNOTSUPP);
 
        flow_act.action = attr->action;
@@ -1358,19 +1358,19 @@ static int esw_offloads_start(struct mlx5_eswitch *esw,
 {
        int err, err1, num_vfs = esw->dev->priv.sriov.num_vfs;
 
-       if (esw->mode != SRIOV_LEGACY &&
+       if (esw->mode != MLX5_ESWITCH_LEGACY &&
            !mlx5_core_is_ecpf_esw_manager(esw->dev)) {
                NL_SET_ERR_MSG_MOD(extack,
                                   "Can't set offloads mode, SRIOV legacy not enabled");
                return -EINVAL;
        }
 
-       mlx5_eswitch_disable_sriov(esw);
-       err = mlx5_eswitch_enable_sriov(esw, num_vfs, SRIOV_OFFLOADS);
+       mlx5_eswitch_disable(esw);
+       err = mlx5_eswitch_enable(esw, num_vfs, MLX5_ESWITCH_OFFLOADS);
        if (err) {
                NL_SET_ERR_MSG_MOD(extack,
                                   "Failed setting eswitch to offloads");
-               err1 = mlx5_eswitch_enable_sriov(esw, num_vfs, SRIOV_LEGACY);
+               err1 = mlx5_eswitch_enable(esw, num_vfs, MLX5_ESWITCH_LEGACY);
                if (err1) {
                        NL_SET_ERR_MSG_MOD(extack,
                                           "Failed setting eswitch back to legacy");
@@ -2174,11 +2174,11 @@ static int esw_offloads_stop(struct mlx5_eswitch *esw,
 {
        int err, err1, num_vfs = esw->dev->priv.sriov.num_vfs;
 
-       mlx5_eswitch_disable_sriov(esw);
-       err = mlx5_eswitch_enable_sriov(esw, num_vfs, SRIOV_LEGACY);
+       mlx5_eswitch_disable(esw);
+       err = mlx5_eswitch_enable(esw, num_vfs, MLX5_ESWITCH_LEGACY);
        if (err) {
                NL_SET_ERR_MSG_MOD(extack, "Failed setting eswitch to legacy");
-               err1 = mlx5_eswitch_enable_sriov(esw, num_vfs, SRIOV_OFFLOADS);
+               err1 = mlx5_eswitch_enable(esw, num_vfs, MLX5_ESWITCH_OFFLOADS);
                if (err1) {
                        NL_SET_ERR_MSG_MOD(extack,
                                           "Failed setting eswitch back to offloads");
@@ -2203,10 +2203,10 @@ static int esw_mode_from_devlink(u16 mode, u16 *mlx5_mode)
 {
        switch (mode) {
        case DEVLINK_ESWITCH_MODE_LEGACY:
-               *mlx5_mode = SRIOV_LEGACY;
+               *mlx5_mode = MLX5_ESWITCH_LEGACY;
                break;
        case DEVLINK_ESWITCH_MODE_SWITCHDEV:
-               *mlx5_mode = SRIOV_OFFLOADS;
+               *mlx5_mode = MLX5_ESWITCH_OFFLOADS;
                break;
        default:
                return -EINVAL;
@@ -2218,10 +2218,10 @@ static int esw_mode_from_devlink(u16 mode, u16 *mlx5_mode)
 static int esw_mode_to_devlink(u16 mlx5_mode, u16 *mode)
 {
        switch (mlx5_mode) {
-       case SRIOV_LEGACY:
+       case MLX5_ESWITCH_LEGACY:
                *mode = DEVLINK_ESWITCH_MODE_LEGACY;
                break;
-       case SRIOV_OFFLOADS:
+       case MLX5_ESWITCH_OFFLOADS:
                *mode = DEVLINK_ESWITCH_MODE_SWITCHDEV;
                break;
        default:
@@ -2285,7 +2285,7 @@ static int mlx5_devlink_eswitch_check(struct devlink *devlink)
        if(!MLX5_ESWITCH_MANAGER(dev))
                return -EPERM;
 
-       if (dev->priv.eswitch->mode == SRIOV_NONE &&
+       if (dev->priv.eswitch->mode == MLX5_ESWITCH_NONE &&
            !mlx5_core_is_ecpf_esw_manager(dev))
                return -EOPNOTSUPP;
 
@@ -2408,7 +2408,7 @@ int mlx5_eswitch_inline_mode_get(struct mlx5_eswitch *esw, int nvfs, u8 *mode)
        if (!MLX5_CAP_GEN(dev, vport_group_manager))
                return -EOPNOTSUPP;
 
-       if (esw->mode == SRIOV_NONE)
+       if (esw->mode == MLX5_ESWITCH_NONE)
                return -EOPNOTSUPP;
 
        switch (MLX5_CAP_ETH(dev, wqe_inline_mode)) {
@@ -2455,7 +2455,7 @@ int mlx5_devlink_eswitch_encap_mode_set(struct devlink *devlink,
        if (encap && encap != DEVLINK_ESWITCH_ENCAP_MODE_BASIC)
                return -EOPNOTSUPP;
 
-       if (esw->mode == SRIOV_LEGACY) {
+       if (esw->mode == MLX5_ESWITCH_LEGACY) {
                esw->offloads.encap = encap;
                return 0;
        }
@@ -2522,7 +2522,7 @@ void mlx5_eswitch_unregister_vport_reps(struct mlx5_eswitch *esw, u8 rep_type)
        struct mlx5_eswitch_rep *rep;
        int i;
 
-       if (esw->mode == SRIOV_OFFLOADS)
+       if (esw->mode == MLX5_ESWITCH_OFFLOADS)
                __unload_reps_all_vport(esw, max_vf, rep_type);
 
        mlx5_esw_for_all_reps(esw, i, rep)
index 959605559858e79eab92dc3725e3eb9e4b4b2d61..c5ef2ff264656f677037b388700c64536ed8a957 100644 (file)
@@ -305,8 +305,8 @@ static void mlx5_do_bond(struct mlx5_lag *ldev)
                           !mlx5_sriov_is_enabled(dev1);
 
 #ifdef CONFIG_MLX5_ESWITCH
-               roce_lag &= dev0->priv.eswitch->mode == SRIOV_NONE &&
-                           dev1->priv.eswitch->mode == SRIOV_NONE;
+               roce_lag &= dev0->priv.eswitch->mode == MLX5_ESWITCH_NONE &&
+                           dev1->priv.eswitch->mode == MLX5_ESWITCH_NONE;
 #endif
 
                if (roce_lag)
index 9d9ff4511306344b35c83789d9dd2a471fb6e88e..d4c90f029f4961d3d4e66d0a86ae5bac04265fe6 100644 (file)
@@ -77,7 +77,7 @@ static int mlx5_device_enable_sriov(struct mlx5_core_dev *dev, int num_vfs)
        if (!MLX5_ESWITCH_MANAGER(dev))
                goto enable_vfs_hca;
 
-       err = mlx5_eswitch_enable_sriov(dev->priv.eswitch, num_vfs, SRIOV_LEGACY);
+       err = mlx5_eswitch_enable(dev->priv.eswitch, num_vfs, MLX5_ESWITCH_LEGACY);
        if (err) {
                mlx5_core_warn(dev,
                               "failed to enable eswitch SRIOV (%d)\n", err);
@@ -126,7 +126,7 @@ static void mlx5_device_disable_sriov(struct mlx5_core_dev *dev)
        }
 
        if (MLX5_ESWITCH_MANAGER(dev))
-               mlx5_eswitch_disable_sriov(dev->priv.eswitch);
+               mlx5_eswitch_disable(dev->priv.eswitch);
 
        if (mlx5_wait_for_pages(dev, &dev->priv.vfs_pages))
                mlx5_core_warn(dev, "timeout reclaiming VFs pages\n");
index 36cb641188b041b799d42edc355994762aaffdcf..d4731199edb4e70a267c9a006215c868c9c2891f 100644 (file)
@@ -12,9 +12,9 @@
 #define MLX5_ESWITCH_MANAGER(mdev) MLX5_CAP_GEN(mdev, eswitch_manager)
 
 enum {
-       SRIOV_NONE,
-       SRIOV_LEGACY,
-       SRIOV_OFFLOADS
+       MLX5_ESWITCH_NONE,
+       MLX5_ESWITCH_LEGACY,
+       MLX5_ESWITCH_OFFLOADS
 };
 
 enum {