]> git.baikalelectronics.ru Git - kernel.git/commitdiff
mlxsw: spectrum: Add a temporary variable to indicate bridge model
authorAmit Cohen <amcohen@nvidia.com>
Mon, 27 Jun 2022 07:06:09 +0000 (10:06 +0300)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 28 Jun 2022 12:31:36 +0000 (14:31 +0200)
As part of transition to unified bridge model, many different firmware
configurations are done.

Some of the configuration that needs to be done for the unified bridge
model is not valid under the legacy model, and would be rejected by the
firmware. At the same time, the driver cannot switch to the unified bridge
model until all of the code has been converted.

To allow breaking the change into patches, and to not break driver
behavior during the transition, add a boolean variable to indicate bridge
model. Then, forbidden configurations will be skipped using the check -
"if (!mlxsw_sp->ubridge)".

The new variable is temporary for several sets, it will be removed when
firmware will be configured to work with unified bridge model.

Signed-off-by: Amit Cohen <amcohen@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/mellanox/mlxsw/spectrum.c
drivers/net/ethernet/mellanox/mlxsw/spectrum.h

index e58acd397edf1b2c31158ba9e6c8b4e8e89a54ef..6b17fa9ab9c79a7bbcfabe2888ddbfe9de049eb8 100644 (file)
@@ -3155,6 +3155,7 @@ static int mlxsw_sp_init(struct mlxsw_core *mlxsw_core,
                goto err_ports_create;
        }
 
+       mlxsw_sp->ubridge = false;
        return 0;
 
 err_ports_create:
index 80006a631333f27ad7b59fdedeac0ffc89e2812c..828d5a265157f6e4ff4deb36068e3dfd58d6dde9 100644 (file)
@@ -216,6 +216,7 @@ struct mlxsw_sp {
        u32 lowest_shaper_bs;
        struct rhashtable ipv6_addr_ht;
        struct mutex ipv6_addr_ht_lock; /* Protects ipv6_addr_ht */
+       bool ubridge;
 };
 
 struct mlxsw_sp_ptp_ops {