mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-19 18:07:10 +07:00
mlxsw: Enable configuration of flooding domains
As part of the introduction of L2 offloads, allow different ports to join/leave the flooding domain, according to user configuration. Signed-off-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
573c7ba006
commit
bc2055f878
@ -363,7 +363,7 @@ static inline void mlxsw_reg_sftr_pack(char *payload,
|
||||
unsigned int flood_table,
|
||||
unsigned int index,
|
||||
enum mlxsw_flood_table_type table_type,
|
||||
unsigned int range)
|
||||
unsigned int range, u8 port, bool set)
|
||||
{
|
||||
MLXSW_REG_ZERO(sftr, payload);
|
||||
mlxsw_reg_sftr_swid_set(payload, 0);
|
||||
@ -371,8 +371,8 @@ static inline void mlxsw_reg_sftr_pack(char *payload,
|
||||
mlxsw_reg_sftr_index_set(payload, index);
|
||||
mlxsw_reg_sftr_table_type_set(payload, table_type);
|
||||
mlxsw_reg_sftr_range_set(payload, range);
|
||||
mlxsw_reg_sftr_port_set(payload, MLXSW_PORT_CPU_PORT, 1);
|
||||
mlxsw_reg_sftr_port_mask_set(payload, MLXSW_PORT_CPU_PORT, 1);
|
||||
mlxsw_reg_sftr_port_set(payload, port, set);
|
||||
mlxsw_reg_sftr_port_mask_set(payload, port, 1);
|
||||
}
|
||||
|
||||
/* SPMLR - Switch Port MAC Learning Register
|
||||
|
@ -1377,7 +1377,8 @@ static int mlxsw_sx_flood_init(struct mlxsw_sx *mlxsw_sx)
|
||||
sftr_pl = kmalloc(MLXSW_REG_SFTR_LEN, GFP_KERNEL);
|
||||
if (!sftr_pl)
|
||||
return -ENOMEM;
|
||||
mlxsw_reg_sftr_pack(sftr_pl, 0, 0, MLXSW_REG_SFGC_TABLE_TYPE_SINGLE, 0);
|
||||
mlxsw_reg_sftr_pack(sftr_pl, 0, 0, MLXSW_REG_SFGC_TABLE_TYPE_SINGLE, 0,
|
||||
MLXSW_PORT_CPU_PORT, true);
|
||||
err = mlxsw_reg_write(mlxsw_sx->core, MLXSW_REG(sftr), sftr_pl);
|
||||
kfree(sftr_pl);
|
||||
if (err)
|
||||
|
Loading…
Reference in New Issue
Block a user