diff options
| author | Amit Cohen <[email protected]> | 2022-06-27 07:06:20 +0000 |
|---|---|---|
| committer | Paolo Abeni <[email protected]> | 2022-06-28 12:31:36 +0000 |
| commit | 9f6f467a3cdb1cfcca570af0c8901479b090cb35 (patch) | |
| tree | ed584e321d5d6e5cad1661471227c43f53f22380 /net/unix/sysctl_net_unix.c | |
| parent | mlxsw: spectrum: Initialize PGT table (diff) | |
| download | kernel-9f6f467a3cdb1cfcca570af0c8901479b090cb35.tar.gz kernel-9f6f467a3cdb1cfcca570af0c8901479b090cb35.zip | |
mlxsw: spectrum_fid: Set 'mid_base' as part of flood tables initialization
The PGT (Port Group Table) table maps an index to a bitmap of local ports
to which a packet needs to be replicated. This table is used for layer 2
multicast and flooding.
The index to PGT table which is called 'mid_index', is a result of
'mid_base' + 'fid_offset'. Using the legacy bridge model, firmware
configures 'mid_base'. However, using the new model, software is
responsible to configure it via SFGC register. The first 15K entries will
be used for flooding and the rest for multicast. The table will look as
follows:
+----------------------------+
| |
| 802.1q, unicast flooding | 4K entries
| |
+----------------------------+
| |
| 802.1q, multicast flooding | 4K entries
| |
+----------------------------+
| |
| 802.1q, broadcast flooding | 4K entries
| |
+----------------------------+
| 802.1d, unicast flooding | 1K entries
+----------------------------+
| 802.1d, multicast flooding | 1K entries
+----------------------------+
| 802.1d, broadcast flooding | 1K entries
+----------------------------+
| |
| |
| Multicast entries | The rest of the table
| |
| |
+----------------------------+
Add 'pgt_base' to 'struct mlxsw_sp_fid_family' and use it to calculate
MID base, set 'SFGC.mid_base' as part of flood tables initialization.
Signed-off-by: Amit Cohen <[email protected]>
Reviewed-by: Petr Machata <[email protected]>
Signed-off-by: Ido Schimmel <[email protected]>
Signed-off-by: Paolo Abeni <[email protected]>
Diffstat (limited to 'net/unix/sysctl_net_unix.c')
0 files changed, 0 insertions, 0 deletions
