@@ -69,52 +69,6 @@ MLXSW_REG_DEFINE(spad, MLXSW_REG_SPAD_ID, MLXSW_REG_SPAD_LEN);
69
69
*/
70
70
MLXSW_ITEM_BUF (reg , spad , base_mac , 0x02 , 6 );
71
71
72
- /* SMID - Switch Multicast ID
73
- * --------------------------
74
- * The MID record maps from a MID (Multicast ID), which is a unique identifier
75
- * of the multicast group within the stacking domain, into a list of local
76
- * ports into which the packet is replicated.
77
- */
78
- #define MLXSW_REG_SMID_ID 0x2007
79
- #define MLXSW_REG_SMID_LEN 0x240
80
-
81
- MLXSW_REG_DEFINE (smid , MLXSW_REG_SMID_ID , MLXSW_REG_SMID_LEN );
82
-
83
- /* reg_smid_swid
84
- * Switch partition ID.
85
- * Access: Index
86
- */
87
- MLXSW_ITEM32 (reg , smid , swid , 0x00 , 24 , 8 );
88
-
89
- /* reg_smid_mid
90
- * Multicast identifier - global identifier that represents the multicast group
91
- * across all devices.
92
- * Access: Index
93
- */
94
- MLXSW_ITEM32 (reg , smid , mid , 0x00 , 0 , 16 );
95
-
96
- /* reg_smid_port
97
- * Local port memebership (1 bit per port).
98
- * Access: RW
99
- */
100
- MLXSW_ITEM_BIT_ARRAY (reg , smid , port , 0x20 , 0x20 , 1 );
101
-
102
- /* reg_smid_port_mask
103
- * Local port mask (1 bit per port).
104
- * Access: W
105
- */
106
- MLXSW_ITEM_BIT_ARRAY (reg , smid , port_mask , 0x220 , 0x20 , 1 );
107
-
108
- static inline void mlxsw_reg_smid_pack (char * payload , u16 mid ,
109
- u8 port , bool set )
110
- {
111
- MLXSW_REG_ZERO (smid , payload );
112
- mlxsw_reg_smid_swid_set (payload , 0 );
113
- mlxsw_reg_smid_mid_set (payload , mid );
114
- mlxsw_reg_smid_port_set (payload , port , set );
115
- mlxsw_reg_smid_port_mask_set (payload , port , 1 );
116
- }
117
-
118
72
/* SSPR - Switch System Port Record Register
119
73
* -----------------------------------------
120
74
* Configures the system port to local port mapping.
@@ -2105,6 +2059,52 @@ static inline void mlxsw_reg_sftr2_pack(char *payload,
2105
2059
mlxsw_reg_sftr2_port_mask_set (payload , port , 1 );
2106
2060
}
2107
2061
2062
+ /* SMID-V2 - Switch Multicast ID Version 2 Register
2063
+ * ------------------------------------------------
2064
+ * The MID record maps from a MID (Multicast ID), which is a unique identifier
2065
+ * of the multicast group within the stacking domain, into a list of local
2066
+ * ports into which the packet is replicated.
2067
+ */
2068
+ #define MLXSW_REG_SMID2_ID 0x2034
2069
+ #define MLXSW_REG_SMID2_LEN 0x120
2070
+
2071
+ MLXSW_REG_DEFINE (smid2 , MLXSW_REG_SMID2_ID , MLXSW_REG_SMID2_LEN );
2072
+
2073
+ /* reg_smid2_swid
2074
+ * Switch partition ID.
2075
+ * Access: Index
2076
+ */
2077
+ MLXSW_ITEM32 (reg , smid2 , swid , 0x00 , 24 , 8 );
2078
+
2079
+ /* reg_smid2_mid
2080
+ * Multicast identifier - global identifier that represents the multicast group
2081
+ * across all devices.
2082
+ * Access: Index
2083
+ */
2084
+ MLXSW_ITEM32 (reg , smid2 , mid , 0x00 , 0 , 16 );
2085
+
2086
+ /* reg_smid2_port
2087
+ * Local port memebership (1 bit per port).
2088
+ * Access: RW
2089
+ */
2090
+ MLXSW_ITEM_BIT_ARRAY (reg , smid2 , port , 0x20 , 0x80 , 1 );
2091
+
2092
+ /* reg_smid2_port_mask
2093
+ * Local port mask (1 bit per port).
2094
+ * Access: WO
2095
+ */
2096
+ MLXSW_ITEM_BIT_ARRAY (reg , smid2 , port_mask , 0xA0 , 0x80 , 1 );
2097
+
2098
+ static inline void mlxsw_reg_smid2_pack (char * payload , u16 mid , u16 port ,
2099
+ bool set )
2100
+ {
2101
+ MLXSW_REG_ZERO (smid2 , payload );
2102
+ mlxsw_reg_smid2_swid_set (payload , 0 );
2103
+ mlxsw_reg_smid2_mid_set (payload , mid );
2104
+ mlxsw_reg_smid2_port_set (payload , port , set );
2105
+ mlxsw_reg_smid2_port_mask_set (payload , port , 1 );
2106
+ }
2107
+
2108
2108
/* CWTP - Congetion WRED ECN TClass Profile
2109
2109
* ----------------------------------------
2110
2110
* Configures the profiles for queues of egress port and traffic class
@@ -12373,7 +12373,6 @@ static inline void mlxsw_reg_sbib_pack(char *payload, u16 local_port,
12373
12373
static const struct mlxsw_reg_info * mlxsw_reg_infos [] = {
12374
12374
MLXSW_REG (sgcr ),
12375
12375
MLXSW_REG (spad ),
12376
- MLXSW_REG (smid ),
12377
12376
MLXSW_REG (sspr ),
12378
12377
MLXSW_REG (sfdat ),
12379
12378
MLXSW_REG (sfd ),
@@ -12396,6 +12395,7 @@ static const struct mlxsw_reg_info *mlxsw_reg_infos[] = {
12396
12395
MLXSW_REG (spvc ),
12397
12396
MLXSW_REG (spevet ),
12398
12397
MLXSW_REG (sftr2 ),
12398
+ MLXSW_REG (smid2 ),
12399
12399
MLXSW_REG (cwtp ),
12400
12400
MLXSW_REG (cwtpm ),
12401
12401
MLXSW_REG (pgcr ),
0 commit comments