mlxsw: spectrum: Add a new type of KVD linear record
When the device needs to flood an overlay packet to remote VTEPs it retrieves a pointer to the head of a linked-list of records that store the IP addresses of these VTEPs. These records are stored in the KVD linear memory and configured via the Tunneling NVE Underlay Multicast Table (TNUMT) register. Add a new KVD linear entry type for these records, so that we will be able to allocate and free them. Signed-off-by: Ido Schimmel <idosch@mellanox.com> Reviewed-by: Petr Machata <petrm@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
12066d612b
commit
90ea0bb551
|
@ -438,6 +438,7 @@ enum mlxsw_sp_kvdl_entry_type {
|
|||
MLXSW_SP_KVDL_ENTRY_TYPE_ACTSET,
|
||||
MLXSW_SP_KVDL_ENTRY_TYPE_PBS,
|
||||
MLXSW_SP_KVDL_ENTRY_TYPE_MCRIGR,
|
||||
MLXSW_SP_KVDL_ENTRY_TYPE_TNUMT,
|
||||
};
|
||||
|
||||
static inline unsigned int
|
||||
|
@ -448,6 +449,7 @@ mlxsw_sp_kvdl_entry_size(enum mlxsw_sp_kvdl_entry_type type)
|
|||
case MLXSW_SP_KVDL_ENTRY_TYPE_ACTSET: /* fall through */
|
||||
case MLXSW_SP_KVDL_ENTRY_TYPE_PBS: /* fall through */
|
||||
case MLXSW_SP_KVDL_ENTRY_TYPE_MCRIGR: /* fall through */
|
||||
case MLXSW_SP_KVDL_ENTRY_TYPE_TNUMT: /* fall through */
|
||||
default:
|
||||
return 1;
|
||||
}
|
||||
|
|
|
@ -35,6 +35,7 @@ static const struct mlxsw_sp2_kvdl_part_info mlxsw_sp2_kvdl_parts_info[] = {
|
|||
MAX_KVD_ACTION_SETS),
|
||||
MLXSW_SP2_KVDL_PART_INFO(PBS, 0x24, KVD_SIZE, KVD_SIZE),
|
||||
MLXSW_SP2_KVDL_PART_INFO(MCRIGR, 0x26, KVD_SIZE, KVD_SIZE),
|
||||
MLXSW_SP2_KVDL_PART_INFO(TNUMT, 0x29, KVD_SIZE, KVD_SIZE),
|
||||
};
|
||||
|
||||
#define MLXSW_SP2_KVDL_PARTS_INFO_LEN ARRAY_SIZE(mlxsw_sp2_kvdl_parts_info)
|
||||
|
|
Loading…
Reference in New Issue