@@ -187,6 +187,8 @@ enum npc_kpu_parser_state {
187
187
NPC_S_KPU2_PREHEADER ,
188
188
NPC_S_KPU2_EXDSA ,
189
189
NPC_S_KPU2_NGIO ,
190
+ NPC_S_KPU2_CPT_CTAG ,
191
+ NPC_S_KPU2_CPT_QINQ ,
190
192
NPC_S_KPU3_CTAG ,
191
193
NPC_S_KPU3_STAG ,
192
194
NPC_S_KPU3_QINQ ,
@@ -1004,11 +1006,11 @@ static struct npc_kpu_profile_action ikpu_action_entries[] = {
1004
1006
},
1005
1007
{
1006
1008
NPC_ERRLEV_RE , NPC_EC_NOERR ,
1007
- 40 , 54 , 58 , 0 , 0 ,
1008
- NPC_S_KPU1_CPT_HDR , 0 , 0 ,
1009
+ 12 , 16 , 20 , 0 , 0 ,
1010
+ NPC_S_KPU1_CPT_HDR , 40 , 0 ,
1009
1011
NPC_LID_LA , NPC_LT_NA ,
1010
1012
0 ,
1011
- 0 , 0 , 0 , 0 ,
1013
+ 7 , 7 , 0 , 0 ,
1012
1014
1013
1015
},
1014
1016
{
@@ -1846,80 +1848,35 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = {
1846
1848
},
1847
1849
{
1848
1850
NPC_S_KPU1_CPT_HDR , 0xff ,
1849
- 0x0000 ,
1850
- 0xffff ,
1851
1851
NPC_ETYPE_IP ,
1852
1852
0xffff ,
1853
1853
0x0000 ,
1854
1854
0x0000 ,
1855
- },
1856
- {
1857
- NPC_S_KPU1_CPT_HDR , 0xff ,
1858
- 0x0000 ,
1859
- 0xffff ,
1860
- NPC_ETYPE_IP6 ,
1861
- 0xffff ,
1862
1855
0x0000 ,
1863
1856
0x0000 ,
1864
1857
},
1865
1858
{
1866
1859
NPC_S_KPU1_CPT_HDR , 0xff ,
1867
- 0x0000 ,
1868
- 0xffff ,
1869
- NPC_ETYPE_CTAG ,
1870
- 0xffff ,
1871
- 0x0000 ,
1872
- 0x0000 ,
1873
- },
1874
- {
1875
- NPC_S_KPU1_CPT_HDR , 0xff ,
1876
- 0x0000 ,
1877
- 0xffff ,
1878
- NPC_ETYPE_QINQ ,
1860
+ NPC_ETYPE_IP6 ,
1879
1861
0xffff ,
1880
1862
0x0000 ,
1881
1863
0x0000 ,
1882
- },
1883
- {
1884
- NPC_S_KPU1_CPT_HDR , 0xff ,
1885
- 0x0000 ,
1886
- 0xffff ,
1887
1864
0x0000 ,
1888
1865
0x0000 ,
1889
- NPC_ETYPE_IP ,
1890
- 0xffff ,
1891
1866
},
1892
1867
{
1893
1868
NPC_S_KPU1_CPT_HDR , 0xff ,
1894
- 0x0000 ,
1869
+ NPC_ETYPE_CTAG ,
1895
1870
0xffff ,
1896
1871
0x0000 ,
1897
1872
0x0000 ,
1898
- NPC_ETYPE_IP6 ,
1899
- 0xffff ,
1900
- },
1901
- {
1902
- NPC_S_KPU1_CPT_HDR , 0xff ,
1903
- 0x0000 ,
1904
- 0xffff ,
1905
1873
0x0000 ,
1906
1874
0x0000 ,
1907
- NPC_ETYPE_CTAG ,
1908
- 0xffff ,
1909
1875
},
1910
1876
{
1911
1877
NPC_S_KPU1_CPT_HDR , 0xff ,
1912
- 0x0000 ,
1913
- 0xffff ,
1914
- 0x0000 ,
1915
- 0x0000 ,
1916
1878
NPC_ETYPE_QINQ ,
1917
1879
0xffff ,
1918
- },
1919
- {
1920
- NPC_S_KPU1_CPT_HDR , 0xff ,
1921
- 0x0000 ,
1922
- 0x0000 ,
1923
1880
0x0000 ,
1924
1881
0x0000 ,
1925
1882
0x0000 ,
@@ -2929,6 +2886,42 @@ static struct npc_kpu_profile_cam kpu2_cam_entries[] = {
2929
2886
0x0000 ,
2930
2887
0x0000 ,
2931
2888
},
2889
+ {
2890
+ NPC_S_KPU2_CPT_CTAG , 0xff ,
2891
+ NPC_ETYPE_IP ,
2892
+ 0xffff ,
2893
+ 0x0000 ,
2894
+ 0x0000 ,
2895
+ 0x0000 ,
2896
+ 0x0000 ,
2897
+ },
2898
+ {
2899
+ NPC_S_KPU2_CPT_CTAG , 0xff ,
2900
+ NPC_ETYPE_IP6 ,
2901
+ 0xffff ,
2902
+ 0x0000 ,
2903
+ 0x0000 ,
2904
+ 0x0000 ,
2905
+ 0x0000 ,
2906
+ },
2907
+ {
2908
+ NPC_S_KPU2_CPT_QINQ , 0xff ,
2909
+ NPC_ETYPE_CTAG ,
2910
+ 0xffff ,
2911
+ NPC_ETYPE_IP ,
2912
+ 0xffff ,
2913
+ 0x0000 ,
2914
+ 0x0000 ,
2915
+ },
2916
+ {
2917
+ NPC_S_KPU2_CPT_QINQ , 0xff ,
2918
+ NPC_ETYPE_CTAG ,
2919
+ 0xffff ,
2920
+ NPC_ETYPE_IP6 ,
2921
+ 0xffff ,
2922
+ 0x0000 ,
2923
+ 0x0000 ,
2924
+ },
2932
2925
{
2933
2926
NPC_S_NA , 0X00 ,
2934
2927
0x0000 ,
@@ -9167,75 +9160,35 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = {
9167
9160
{
9168
9161
NPC_ERRLEV_RE , NPC_EC_NOERR ,
9169
9162
8 , 0 , 6 , 3 , 0 ,
9170
- NPC_S_KPU5_CPT_IP , 56 , 1 ,
9171
- NPC_LID_LA , NPC_LT_LA_CPT_HDR ,
9172
- 0 ,
9173
- 0 , 0 , 0 , 0 ,
9174
- },
9175
- {
9176
- NPC_ERRLEV_RE , NPC_EC_NOERR ,
9177
- 6 , 0 , 0 , 3 , 0 ,
9178
- NPC_S_KPU5_CPT_IP6 , 56 , 1 ,
9179
- NPC_LID_LA , NPC_LT_LA_CPT_HDR ,
9180
- 0 ,
9181
- 0 , 0 , 0 , 0 ,
9182
- },
9183
- {
9184
- NPC_ERRLEV_RE , NPC_EC_NOERR ,
9185
- 4 , 8 , 0 , 0 , 0 ,
9186
- NPC_S_KPU2_CTAG , 54 , 1 ,
9187
- NPC_LID_LA , NPC_LT_LA_CPT_HDR ,
9188
- NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN ,
9189
- 0 , 0 , 0 , 0 ,
9190
- },
9191
- {
9192
- NPC_ERRLEV_RE , NPC_EC_NOERR ,
9193
- 4 , 8 , 0 , 0 , 0 ,
9194
- NPC_S_KPU2_QINQ , 54 , 1 ,
9195
- NPC_LID_LA , NPC_LT_LA_CPT_HDR ,
9196
- NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN ,
9197
- 0 , 0 , 0 , 0 ,
9198
- },
9199
- {
9200
- NPC_ERRLEV_RE , NPC_EC_NOERR ,
9201
- 8 , 0 , 6 , 3 , 0 ,
9202
- NPC_S_KPU5_CPT_IP , 60 , 1 ,
9163
+ NPC_S_KPU5_CPT_IP , 14 , 1 ,
9203
9164
NPC_LID_LA , NPC_LT_LA_CPT_HDR ,
9204
9165
0 ,
9205
9166
0 , 0 , 0 , 0 ,
9206
9167
},
9207
9168
{
9208
9169
NPC_ERRLEV_RE , NPC_EC_NOERR ,
9209
9170
6 , 0 , 0 , 3 , 0 ,
9210
- NPC_S_KPU5_CPT_IP6 , 60 , 1 ,
9171
+ NPC_S_KPU5_CPT_IP6 , 14 , 1 ,
9211
9172
NPC_LID_LA , NPC_LT_LA_CPT_HDR ,
9212
9173
0 ,
9213
9174
0 , 0 , 0 , 0 ,
9214
9175
},
9215
9176
{
9216
9177
NPC_ERRLEV_RE , NPC_EC_NOERR ,
9217
9178
4 , 8 , 0 , 0 , 0 ,
9218
- NPC_S_KPU2_CTAG , 58 , 1 ,
9179
+ NPC_S_KPU2_CPT_CTAG , 12 , 1 ,
9219
9180
NPC_LID_LA , NPC_LT_LA_CPT_HDR ,
9220
9181
NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN ,
9221
9182
0 , 0 , 0 , 0 ,
9222
9183
},
9223
9184
{
9224
9185
NPC_ERRLEV_RE , NPC_EC_NOERR ,
9225
9186
4 , 8 , 0 , 0 , 0 ,
9226
- NPC_S_KPU2_QINQ , 58 , 1 ,
9187
+ NPC_S_KPU2_CPT_QINQ , 12 , 1 ,
9227
9188
NPC_LID_LA , NPC_LT_LA_CPT_HDR ,
9228
9189
NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN ,
9229
9190
0 , 0 , 0 , 0 ,
9230
9191
},
9231
- {
9232
- NPC_ERRLEV_RE , NPC_EC_NOERR ,
9233
- 0 , 0 , 0 , 0 , 1 ,
9234
- NPC_S_NA , 0 , 1 ,
9235
- NPC_LID_LA , NPC_LT_LA_CPT_HDR ,
9236
- NPC_F_LA_L_UNK_ETYPE ,
9237
- 0 , 0 , 0 , 0 ,
9238
- },
9239
9192
{
9240
9193
NPC_ERRLEV_RE , NPC_EC_NOERR ,
9241
9194
12 , 0 , 0 , 1 , 0 ,
@@ -10129,6 +10082,38 @@ static struct npc_kpu_profile_action kpu2_action_entries[] = {
10129
10082
0 ,
10130
10083
0 , 0 , 0 , 0 ,
10131
10084
},
10085
+ {
10086
+ NPC_ERRLEV_RE , NPC_EC_NOERR ,
10087
+ 8 , 0 , 6 , 2 , 0 ,
10088
+ NPC_S_KPU5_CPT_IP , 6 , 1 ,
10089
+ NPC_LID_LB , NPC_LT_LB_CTAG ,
10090
+ 0 ,
10091
+ 0 , 0 , 0 , 0 ,
10092
+ },
10093
+ {
10094
+ NPC_ERRLEV_RE , NPC_EC_NOERR ,
10095
+ 6 , 0 , 0 , 2 , 0 ,
10096
+ NPC_S_KPU5_CPT_IP6 , 6 , 1 ,
10097
+ NPC_LID_LB , NPC_LT_LB_CTAG ,
10098
+ 0 ,
10099
+ 0 , 0 , 0 , 0 ,
10100
+ },
10101
+ {
10102
+ NPC_ERRLEV_RE , NPC_EC_NOERR ,
10103
+ 8 , 0 , 6 , 2 , 0 ,
10104
+ NPC_S_KPU5_CPT_IP , 10 , 1 ,
10105
+ NPC_LID_LB , NPC_LT_LB_STAG_QINQ ,
10106
+ NPC_F_LB_U_MORE_TAG | NPC_F_LB_L_WITH_CTAG ,
10107
+ 0 , 0 , 0 , 0 ,
10108
+ },
10109
+ {
10110
+ NPC_ERRLEV_RE , NPC_EC_NOERR ,
10111
+ 6 , 0 , 0 , 2 , 0 ,
10112
+ NPC_S_KPU5_CPT_IP6 , 10 , 1 ,
10113
+ NPC_LID_LB , NPC_LT_LB_STAG_QINQ ,
10114
+ NPC_F_LB_U_MORE_TAG | NPC_F_LB_L_WITH_CTAG ,
10115
+ 0 , 0 , 0 , 0 ,
10116
+ },
10132
10117
{
10133
10118
NPC_ERRLEV_LB , NPC_EC_L2_K3 ,
10134
10119
0 , 0 , 0 , 0 , 1 ,
0 commit comments