mlxsw: Add enumerator for 'config_profile.flood_mode'
authorAmit Cohen <amcohen@nvidia.com>
Tue, 21 Jun 2022 08:33:40 +0000 (11:33 +0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 22 Jun 2022 11:56:58 +0000 (12:56 +0100)
Currently magic constant is used for setting 'flood_mode' as part of
config profile.

As preparation for unified bridge model, which will require different
'flood_mode', add a dedicated enumerator for this field and use it as
part of 'struct mlxsw_config_profile'.

Add the relevant value for unified bridge model.

Signed-off-by: Amit Cohen <amcohen@nvidia.com>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlxsw/cmd.h
drivers/net/ethernet/mellanox/mlxsw/spectrum.c

index 91f68fb0b420ae5eee729cf3bdb094b20fec4618..150dda58d98867b507bb55165f4775fca8f116a2 100644 (file)
@@ -713,14 +713,23 @@ MLXSW_ITEM32(cmd_mbox, config_profile, max_flood_tables, 0x30, 16, 4);
  */
 MLXSW_ITEM32(cmd_mbox, config_profile, max_vid_flood_tables, 0x30, 8, 4);
 
+enum mlxsw_cmd_mbox_config_profile_flood_mode {
+       /* Mixed mode, where:
+        * max_flood_tables indicates the number of single-entry tables.
+        * max_vid_flood_tables indicates the number of per-VID tables.
+        * max_fid_offset_flood_tables indicates the number of FID-offset
+        * tables. max_fid_flood_tables indicates the number of per-FID tables.
+        * Reserved when unified bridge model is used.
+        */
+       MLXSW_CMD_MBOX_CONFIG_PROFILE_FLOOD_MODE_MIXED = 3,
+       /* Controlled flood tables. Reserved when legacy bridge model is
+        * used.
+        */
+       MLXSW_CMD_MBOX_CONFIG_PROFILE_FLOOD_MODE_CONTROLLED = 4,
+};
+
 /* cmd_mbox_config_profile_flood_mode
  * Flooding mode to use.
- * 0-2 - Backward compatible modes for SwitchX devices.
- * 3 - Mixed mode, where:
- * max_flood_tables indicates the number of single-entry tables.
- * max_vid_flood_tables indicates the number of per-VID tables.
- * max_fid_offset_flood_tables indicates the number of FID-offset tables.
- * max_fid_flood_tables indicates the number of per-FID tables.
  */
 MLXSW_ITEM32(cmd_mbox, config_profile, flood_mode, 0x30, 0, 2);
 
index a62887b8d98e4fec8eb8ef97e34e26a0575b2dfd..f21c28123ad15e393fea303a9f329c79be75473d 100644 (file)
@@ -3376,7 +3376,7 @@ static const struct mlxsw_config_profile mlxsw_sp1_config_profile = {
        .max_mid                        = MLXSW_SP_MID_MAX,
        .used_flood_tables              = 1,
        .used_flood_mode                = 1,
-       .flood_mode                     = 3,
+       .flood_mode                     = MLXSW_CMD_MBOX_CONFIG_PROFILE_FLOOD_MODE_MIXED,
        .max_fid_flood_tables           = 3,
        .fid_flood_table_size           = MLXSW_SP_FID_FLOOD_TABLE_SIZE,
        .used_max_ib_mc                 = 1,
@@ -3400,7 +3400,7 @@ static const struct mlxsw_config_profile mlxsw_sp2_config_profile = {
        .max_mid                        = MLXSW_SP_MID_MAX,
        .used_flood_tables              = 1,
        .used_flood_mode                = 1,
-       .flood_mode                     = 3,
+       .flood_mode                     = MLXSW_CMD_MBOX_CONFIG_PROFILE_FLOOD_MODE_MIXED,
        .max_fid_flood_tables           = 3,
        .fid_flood_table_size           = MLXSW_SP_FID_FLOOD_TABLE_SIZE,
        .used_max_ib_mc                 = 1,