]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
mlxsw: Make PMAOS pack function more generic
authorIdo Schimmel <idosch@nvidia.com>
Wed, 15 Sep 2021 10:13:13 +0000 (13:13 +0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 15 Sep 2021 15:17:16 +0000 (16:17 +0100)
The PMAOS register has enable bits (e.g., PMAOS.ee) that allow changing
only a subset of the fields, which is exactly what subsequent patches
will need to do. Instead of passing multiple arguments to its pack
function, only pass the module index and let the rest be set by the
different callers.

No functional changes intended.

Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlxsw/core_env.c
drivers/net/ethernet/mellanox/mlxsw/reg.h

index c7b7254061ee3a1616b7d2772e463087f9a8682c..a474629643aa0bf8c9f7c029958b32612995150d 100644 (file)
@@ -684,8 +684,10 @@ mlxsw_env_module_oper_state_event_enable(struct mlxsw_core *mlxsw_core,
        for (i = 0; i < module_count; i++) {
                char pmaos_pl[MLXSW_REG_PMAOS_LEN];
 
-               mlxsw_reg_pmaos_pack(pmaos_pl, i,
-                                    MLXSW_REG_PMAOS_E_GENERATE_EVENT);
+               mlxsw_reg_pmaos_pack(pmaos_pl, i);
+               mlxsw_reg_pmaos_e_set(pmaos_pl,
+                                     MLXSW_REG_PMAOS_E_GENERATE_EVENT);
+               mlxsw_reg_pmaos_ee_set(pmaos_pl, true);
                err = mlxsw_reg_write(mlxsw_core, MLXSW_REG(pmaos), pmaos_pl);
                if (err)
                        return err;
index 667856f007288472c57c120609e403c7653d1425..6c96e124e4c8d9670f6b2f3a69a1b96b7ae07f08 100644 (file)
@@ -5747,13 +5747,10 @@ enum mlxsw_reg_pmaos_e {
  */
 MLXSW_ITEM32(reg, pmaos, e, 0x04, 0, 2);
 
-static inline void mlxsw_reg_pmaos_pack(char *payload, u8 module,
-                                       enum mlxsw_reg_pmaos_e e)
+static inline void mlxsw_reg_pmaos_pack(char *payload, u8 module)
 {
        MLXSW_REG_ZERO(pmaos, payload);
        mlxsw_reg_pmaos_module_set(payload, module);
-       mlxsw_reg_pmaos_e_set(payload, e);
-       mlxsw_reg_pmaos_ee_set(payload, true);
 }
 
 /* PPLR - Port Physical Loopback Register