OpenNSL API Guide and Reference Manual
Welcome
OpenNSL Documentation
API Reference
Files
File List
Globals
include
opennsl
types.h
Go to the documentation of this file.
1
4
/*****************************************************************************
5
*
6
* (C) Copyright Broadcom Corporation 2013-2016
7
*
8
* Licensed under the Apache License, Version 2.0 (the "License");
9
* you may not use this file except in compliance with the License.
10
*
11
* You may obtain a copy of the License at
12
* http://www.apache.org/licenses/LICENSE-2.0
13
*
14
* Unless required by applicable law or agreed to in writing, software
15
* distributed under the License is distributed on an "AS IS" BASIS,
16
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
* See the License for the specific language governing permissions and
18
* limitations under the License.
19
*
20
***************************************************************************/
24
#ifndef __OPENNSL_TYPES_H__
25
#define __OPENNSL_TYPES_H__
26
27
#include <
sal/types.h
>
28
#include <
sal/commdefs.h
>
29
#include <
shared/bitop.h
>
30
#include <
shared/pbmp.h
>
31
#include <
shared/gport.h
>
32
#include <
shared/types.h
>
33
#include <
shared/util.h
>
34
36
typedef
int
opennsl_multicast_t
;
37
38
#if !defined(OPENNSL_LOCAL_UNITS_MAX)
39
#endif
40
#if !defined(OPENNSL_UNITS_MAX)
41
#endif
42
#define OPENNSL_PBMP_PORT_MAX _SHR_PBMP_PORT_MAX
43
#define OPENNSL_PBMP_CLEAR(pbm) _SHR_PBMP_CLEAR(pbm)
44
#define OPENNSL_PBMP_MEMBER(bmp, port) _SHR_PBMP_MEMBER((bmp), (port))
45
#define OPENNSL_PBMP_ITER(bmp, port) _SHR_PBMP_ITER((bmp), (port))
46
#define OPENNSL_PBMP_COUNT(pbm, count) _SHR_PBMP_COUNT(pbm, count)
47
#define OPENNSL_PBMP_IS_NULL(pbm) _SHR_PBMP_IS_NULL(pbm)
48
#define OPENNSL_PBMP_NOT_NULL(pbm) _SHR_PBMP_NOT_NULL(pbm)
49
#define OPENNSL_PBMP_EQ(pbm_a, pbm_b) _SHR_PBMP_EQ(pbm_a, pbm_b)
50
#define OPENNSL_PBMP_NEQ(pbm_a, pbm_b) _SHR_PBMP_NEQ(pbm_a, pbm_b)
51
#define OPENNSL_PBMP_ASSIGN(dst, src) _SHR_PBMP_ASSIGN(dst, src)
52
#define OPENNSL_PBMP_AND(pbm_a, pbm_b) _SHR_PBMP_AND(pbm_a, pbm_b)
53
#define OPENNSL_PBMP_OR(pbm_a, pbm_b) _SHR_PBMP_OR(pbm_a, pbm_b)
54
#define OPENNSL_PBMP_XOR(pbm_a, pbm_b) _SHR_PBMP_XOR(pbm_a, pbm_b)
55
#define OPENNSL_PBMP_REMOVE(pbm_a, pbm_b) _SHR_PBMP_REMOVE(pbm_a, pbm_b)
56
#define OPENNSL_PBMP_NEGATE(pbm_a, pbm_b) _SHR_PBMP_NEGATE(pbm_a, pbm_b)
57
#define OPENNSL_PBMP_PORT_SET(pbm, port) _SHR_PBMP_PORT_SET(pbm, port)
58
#define OPENNSL_PBMP_PORT_ADD(pbm, port) _SHR_PBMP_PORT_ADD(pbm, port)
59
#define OPENNSL_PBMP_PORT_REMOVE(pbm, port) _SHR_PBMP_PORT_REMOVE(pbm, port)
60
#define OPENNSL_PBMP_PORT_FLIP(pbm, port) _SHR_PBMP_PORT_FLIP(pbm, port)
61
62
typedef
int
opennsl_port_t
;
63
65
typedef
_shr_pbmp_t
opennsl_pbmp_t
;
66
68
typedef
uint8
opennsl_mac_t
[6];
69
71
typedef
uint32
opennsl_ip_t
;
72
74
typedef
uint8
opennsl_ip6_t
[16];
75
77
typedef
int
opennsl_if_t
;
78
80
typedef
int
opennsl_trill_name_t
;
81
83
typedef
int
opennsl_l4_port_t
;
84
86
typedef
int
opennsl_if_group_t
;
87
89
typedef
int
opennsl_vrf_t
;
90
92
typedef
uint32
opennsl_mpls_label_t
;
93
94
#define OPENNSL_VLAN_NONE ((opennsl_vlan_t)0x0000)
95
#define OPENNSL_VLAN_DEFAULT ((opennsl_vlan_t)0x0001)
96
97
typedef
uint16
opennsl_vlan_t
;
98
100
typedef
uint16
opennsl_ethertype_t
;
101
103
typedef
opennsl_vlan_t
opennsl_vpn_t
;
104
106
typedef
int
opennsl_policer_t
;
107
109
typedef
uint32
opennsl_tunnel_id_t
;
110
111
#define OPENNSL_VLAN_MIN 0
112
#define OPENNSL_VLAN_MAX 4095
113
#define OPENNSL_VLAN_COUNT (OPENNSL_VLAN_MAX - OPENNSL_VLAN_MIN + 1)
114
115
typedef
uint32
opennsl_vlan_vector_t
[
_SHR_BITDCLSIZE
(
OPENNSL_VLAN_COUNT
)];
116
117
#define OPENNSL_VLAN_VEC_GET(vec, n) SHR_BITGET(vec, n)
118
#define OPENNSL_VLAN_VEC_SET(vec, n) SHR_BITSET(vec, n)
119
#define OPENNSL_VLAN_VEC_CLR(vec, n) SHR_BITCLR(vec, n)
120
#define OPENNSL_VLAN_VEC_ZERO(vec) \
121
memset(vec, 0, \
122
SHR_BITALLOCSIZE(OPENNSL_VLAN_COUNT))
123
124
typedef
int
opennsl_cos_t
;
125
127
typedef
int
opennsl_cos_queue_t
;
128
129
#define OPENNSL_COS_MIN 0
130
#define OPENNSL_COS_MAX 7
131
#define OPENNSL_COS_COUNT 8
132
#define OPENNSL_COS_DEFAULT 4
133
#define OPENNSL_COS_INVALID -1
134
#define OPENNSL_PRIO_MIN 0
135
#define OPENNSL_PRIO_MAX 7
136
#define OPENNSL_PRIO_RED 0x100
137
#define OPENNSL_PRIO_YELLOW 0x200
138
#define OPENNSL_PRIO_DROP_FIRST OPENNSL_PRIO_RED
139
#define OPENNSL_PRIO_MASK 0xff
140
#define OPENNSL_PRIO_GREEN 0x400
141
#define OPENNSL_PRIO_DROP_LAST 0x800
142
#define OPENNSL_PRIO_PRESERVE OPENNSL_PRIO_DROP_LAST
143
#define OPENNSL_PRIO_STAG 0x100
144
#define OPENNSL_PRIO_CTAG 0x200
145
#define OPENNSL_DSCP_ECN 0x100
146
#define OPENNSL_PRIO_BLACK 0x1000
147
#define OPENNSL_PRIO_SECONDARY 0x2000
148
149
typedef
int
opennsl_module_t
;
150
151
#define OPENNSL_TRUNK_INVALID ((opennsl_trunk_t) -1)
152
153
typedef
int
opennsl_trunk_t
;
154
156
typedef
int
opennsl_switch_network_group_t
;
157
162
typedef
int
opennsl_gport_t
;
163
164
#define OPENNSL_GPORT_TYPE_NONE _SHR_GPORT_NONE
165
#define OPENNSL_GPORT_INVALID _SHR_GPORT_INVALID
166
#define OPENNSL_GPORT_TYPE_LOCAL _SHR_GPORT_TYPE_LOCAL
167
#define OPENNSL_GPORT_TYPE_MODPORT _SHR_GPORT_TYPE_MODPORT
168
#define OPENNSL_GPORT_TYPE_UCAST_QUEUE_GROUP _SHR_GPORT_TYPE_UCAST_QUEUE_GROUP
169
#define OPENNSL_GPORT_TYPE_DESTMOD_QUEUE_GROUP _SHR_GPORT_TYPE_DESTMOD_QUEUE_GROUP
170
#define OPENNSL_GPORT_TYPE_MCAST _SHR_GPORT_TYPE_MCAST
171
#define OPENNSL_GPORT_TYPE_MCAST_QUEUE_GROUP _SHR_GPORT_TYPE_MCAST_QUEUE_GROUP
172
#define OPENNSL_GPORT_TYPE_SCHEDULER _SHR_GPORT_TYPE_SCHEDULER
173
#define OPENNSL_GPORT_TYPE_CHILD _SHR_GPORT_TYPE_CHILD
174
#define OPENNSL_GPORT_TYPE_EGRESS_GROUP _SHR_GPORT_TYPE_EGRESS_GROUP
175
#define OPENNSL_GPORT_TYPE_EGRESS_CHILD _SHR_GPORT_TYPE_EGRESS_CHILD
176
#define OPENNSL_GPORT_TYPE_EGRESS_MODPORT _SHR_GPORT_TYPE_EGRESS_MODPORT
177
#define OPENNSL_GPORT_TYPE_UCAST_SUBSCRIBER_QUEUE_GROUP _SHR_GPORT_TYPE_UCAST_SUBSCRIBER_QUEUE_GROUP
178
#define OPENNSL_GPORT_TYPE_MCAST_SUBSCRIBER_QUEUE_GROUP _SHR_GPORT_TYPE_MCAST_SUBSCRIBER_QUEUE_GROUP
179
#define OPENNSL_GPORT_TYPE_COSQ _SHR_GPORT_TYPE_COSQ
180
#define OPENNSL_GPORT_TYPE_PROFILE _SHR_GPORT_TYPE_PROFILE
181
#define OPENNSL_GPORT_IS_TRUNK(_gport) _SHR_GPORT_IS_TRUNK(_gport)
182
#define OPENNSL_GPORT_IS_UCAST_QUEUE_GROUP(_gport) _SHR_GPORT_IS_UCAST_QUEUE_GROUP(_gport)
183
#define OPENNSL_GPORT_IS_MCAST_QUEUE_GROUP(_gport) _SHR_GPORT_IS_MCAST_QUEUE_GROUP(_gport)
184
#define OPENNSL_GPORT_IS_SCHEDULER(_gport) _SHR_GPORT_IS_SCHEDULER(_gport)
185
#define OPENNSL_GPORT_IS_COSQ(_gport) _SHR_GPORT_IS_COSQ(_gport)
186
#define OPENNSL_GPORT_LOCAL_SET(_gport, _port) \
187
_SHR_GPORT_LOCAL_SET(_gport, _port)
188
#define OPENNSL_GPORT_LOCAL_GET(_gport) \
189
(!_SHR_GPORT_IS_LOCAL(_gport) ? -1 : \
190
_SHR_GPORT_LOCAL_GET(_gport))
191
#define OPENNSL_GPORT_MODPORT_SET(_gport, _module, _port) \
192
_SHR_GPORT_MODPORT_SET(_gport, _module, _port)
193
#define OPENNSL_GPORT_MODPORT_MODID_GET(_gport) \
194
(!_SHR_GPORT_IS_MODPORT(_gport) ? -1 : \
195
_SHR_GPORT_MODPORT_MODID_GET(_gport))
196
#define OPENNSL_GPORT_MODPORT_PORT_GET(_gport) \
197
(!_SHR_GPORT_IS_MODPORT(_gport) ? -1 : \
198
_SHR_GPORT_MODPORT_PORT_GET(_gport))
199
#define OPENNSL_GPORT_TRUNK_SET(_gport, _trunk_id) \
200
_SHR_GPORT_TRUNK_SET(_gport, _trunk_id)
201
#define OPENNSL_GPORT_TRAP_SET(_gport, _trap_id, _trap_strength, _snoop_strength) \
202
_SHR_GPORT_TRAP_SET(_gport, _trap_id, _trap_strength, _snoop_strength)
203
#define OPENNSL_GPORT_TRAP_GET_ID(_gport) \
204
(!_SHR_GPORT_IS_TRAP(_gport) ? -1 : \
205
_SHR_GPORT_TRAP_GET_ID(_gport))
206
#define OPENNSL_GPORT_TRAP_GET_STRENGTH(_gport) \
207
_SHR_GPORT_TRAP_GET_STRENGTH(_gport)
208
#define OPENNSL_GPORT_TRAP_GET_SNOOP_STRENGTH(_gport) \
209
_SHR_GPORT_TRAP_GET_SNOOP_STRENGTH(_gport)
210
#define OPENNSL_GPORT_IS_TRAP(_gport) \
211
_SHR_GPORT_IS_TRAP(_gport)
212
#define OPENNSL_GPORT_TRUNK_GET(_gport) \
213
(!_SHR_GPORT_IS_TRUNK(_gport) ? OPENNSL_TRUNK_INVALID : \
214
_SHR_GPORT_TRUNK_GET(_gport))
215
#define OPENNSL_GPORT_UCAST_QUEUE_GROUP_SET(_gport, _qid) \
216
_SHR_GPORT_UCAST_QUEUE_GROUP_SET(_gport, _qid)
217
#define OPENNSL_GPORT_UCAST_QUEUE_GROUP_SYSQID_SET(_gport, _sysport_id, _qid) \
218
_SHR_GPORT_UCAST_QUEUE_GROUP_SYSQID_SET(_gport, _sysport_id, _qid)
219
#define OPENNSL_GPORT_UCAST_QUEUE_GROUP_SYSPORTID_GET(_gport) \
220
(!_SHR_GPORT_IS_UCAST_QUEUE_GROUP(_gport) ? -1 : \
221
_SHR_GPORT_UCAST_QUEUE_GROUP_SYSPORTID_GET(_gport))
222
223
#define OPENNSL_GPORT_UCAST_QUEUE_GROUP_QID_GET(_gport) \
224
(!_SHR_GPORT_IS_UCAST_QUEUE_GROUP(_gport) ? -1 : \
225
_SHR_GPORT_UCAST_QUEUE_GROUP_QID_GET(_gport))
226
227
#define OPENNSL_GPORT_MCAST_QUEUE_GROUP_SET(_gport, _qid) \
228
_SHR_GPORT_MCAST_QUEUE_GROUP_SET(_gport, _qid)
229
230
#define OPENNSL_GPORT_MCAST_QUEUE_GROUP_GET(_gport) \
231
(!_SHR_GPORT_IS_MCAST_QUEUE_GROUP(_gport) ? -1 : \
232
_SHR_GPORT_MCAST_QUEUE_GROUP_GET(_gport))
233
234
#define OPENNSL_GPORT_MCAST_QUEUE_GROUP_SYSQID_SET(_gport, _sysport_id, _qid) \
235
_SHR_GPORT_MCAST_QUEUE_GROUP_SYSQID_SET(_gport, _sysport_id, _qid)
236
237
#define OPENNSL_GPORT_MCAST_QUEUE_GROUP_SYSPORTID_GET(_gport) \
238
(!_SHR_GPORT_IS_MCAST_QUEUE_GROUP(_gport) ? -1 : \
239
_SHR_GPORT_MCAST_QUEUE_GROUP_SYSPORTID_GET(_gport))
240
241
#define OPENNSL_GPORT_MCAST_QUEUE_GROUP_QID_GET(_gport) \
242
(!_SHR_GPORT_IS_MCAST_QUEUE_GROUP(_gport) ? -1 : \
243
_SHR_GPORT_MCAST_QUEUE_GROUP_QID_GET(_gport))
244
#define OPENNSL_GPORT_MCAST_QUEUE_GROUP_QUEUE_SET(_gport, _qid) \
245
_SHR_GPORT_MCAST_QUEUE_GROUP_QUEUE_SET(_gport, _qid)
246
#define OPENNSL_GPORT_MCAST_QUEUE_GROUP_CORE_QUEUE_SET(_gport, _core, _qid) \
247
_SHR_GPORT_MCAST_QUEUE_GROUP_CORE_QUEUE_SET(_gport, _core, _qid)
248
#define OPENNSL_GPORT_MCAST_QUEUE_GROUP_QUEUE_GET(_gport) \
249
(!_SHR_GPORT_IS_MCAST_QUEUE_GROUP(_gport) ? -1 : \
250
_SHR_GPORT_MCAST_QUEUE_GROUP_QUEUE_GET(_gport))
251
#define OPENNSL_GPORT_MCAST_QUEUE_GROUP_CORE_GET(_gport) \
252
(!_SHR_GPORT_IS_MCAST_QUEUE_GROUP(_gport) ? -1 : \
253
_SHR_GPORT_MCAST_QUEUE_GROUP_CORE_GET(_gport))
254
255
#define OPENNSL_GPORT_SCHEDULER_SET(_gport, _scheduler_id) \
256
_SHR_GPORT_SCHEDULER_SET(_gport, _scheduler_id)
257
#define OPENNSL_GPORT_SCHEDULER_NODE_SET(_gport, _scheduler_level, _scheduler_id) \
258
_SHR_GPORT_SCHEDULER_NODE_SET(_gport, _scheduler_level,_scheduler_id)
259
#define OPENNSL_GPORT_SCHEDULER_GET(_gport) \
260
_SHR_GPORT_SCHEDULER_GET(_gport)
261
#define OPENNSL_GPORT_SCHEDULER_CORE_GET(_gport) \
262
_SHR_GPORT_SCHEDULER_CORE_GET(_gport)
263
#define OPENNSL_GPORT_SCHEDULER_CORE_SET(_gport, _scheduler_id, _core_id) \
264
_SHR_GPORT_SCHEDULER_CORE_SET(_gport, _scheduler_id, _core_id)
265
266
typedef
int
opennsl_fabric_distribution_t
;
267
269
typedef
int
opennsl_failover_t
;
270
271
#define OPENNSL_GPORT_LOCAL_CPU _SHR_GPORT_LOCAL_CPU
272
#define OPENNSL_GPORT_MIRROR_SET(_gport, _value) \
273
_SHR_GPORT_MIRROR_SET(_gport, _value)
274
#define OPENNSL_GPORT_MIRROR_GET(_gport) \
275
(!_SHR_GPORT_IS_MIRROR(_gport) ? -1 : \
276
_SHR_GPORT_MIRROR_GET(_gport))
277
#define OPENNSL_GPORT_TUNNEL_ID_SET(_gport, _tunnel_id) \
278
(_SHR_GPORT_TUNNEL_ID_SET(_gport, _tunnel_id))
279
280
#define OPENNSL_GPORT_TUNNEL_ID_GET(_gport) \
281
(!_SHR_GPORT_IS_TUNNEL(_gport) ? -1 : \
282
_SHR_GPORT_TUNNEL_ID_GET(_gport))
283
285
typedef
int
opennsl_stg_t
;
286
288
typedef
enum
opennsl_color_e
{
289
opennslColorGreen
=
_SHR_COLOR_GREEN
,
290
opennslColorYellow
=
_SHR_COLOR_YELLOW
,
291
opennslColorRed
=
_SHR_COLOR_RED
,
292
opennslColorDropFirst
=
opennslColorRed
,
293
opennslColorBlack
=
_SHR_COLOR_BLACK
,
294
opennslColorPreserve
=
_SHR_COLOR_PRESERVE
,
295
opennslColorCount
=
_SHR_COLOR_COUNT
296
}
opennsl_color_t
;
297
/* __doxy_func_body_end__ */
298
299
typedef
struct
opennsl_priority_mapping_s
{
300
int
internal_pri
;
301
opennsl_color_t
color
;
302
int
remark_internal_pri
;
303
opennsl_color_t
remark_color
;
305
int
policer_offset
;
307
}
opennsl_priority_mapping_t
;
308
/* __doxy_func_body_end__ */
309
311
typedef
struct
opennsl_flow_logical_field_s
{
312
uint32
reserved1
;
313
uint32
reserved2
;
314
}
opennsl_flow_logical_field_t
;
315
/* __doxy_func_body_end__ */
316
317
#define OPENNSL_FLOW_MAX_NOF_LOGICAL_FIELDS 20
318
#if defined(LE_HOST)
319
#else
320
#define opennsl_htonl(_l) (_l)
321
#define opennsl_htons(_s) (_s)
322
#define opennsl_ntohl(_l) (_l)
323
#define opennsl_ntohs(_s) (_s)
324
#endif
325
/***************************************************************************/
333
extern
int
opennsl_ip6_mask_create
(
334
opennsl_ip6_t
ip6,
335
int
len)
LIB_DLL_EXPORTED
;
336
337
/***************************************************************************/
344
extern
opennsl_ip_t
opennsl_ip_mask_create
(
345
int
len)
LIB_DLL_EXPORTED
;
346
348
typedef
enum
opennsl_vlan_tpid_action_e
{
349
opennslVlanTpidActionNone
= 0,
350
opennslVlanTpidActionModify
= 1,
351
opennslVlanTpidActionInner
= 2,
352
opennslVlanTpidActionOuter
= 3
353
}
opennsl_vlan_tpid_action_t
;
354
/* __doxy_func_body_end__ */
355
357
typedef
enum
opennsl_vlan_pcp_action_e
{
358
opennslVlanPcpActionNone
= 0,
359
opennslVlanPcpActionMapped
= 1,
360
opennslVlanPcpActionIngressInnerPcp
= 2,
361
opennslVlanPcpActionIngressOuterPcp
= 3,
362
opennslVlanPcpActionPortDefault
= 4
363
}
opennsl_vlan_pcp_action_t
;
364
/* __doxy_func_body_end__ */
365
367
typedef
enum
opennsl_vlan_action_e
{
368
opennslVlanActionNone
= 0,
369
opennslVlanActionAdd
= 1,
370
opennslVlanActionReplace
= 2,
371
opennslVlanActionDelete
= 3,
372
opennslVlanActionCopy
= 4,
373
opennslVlanActionCompressed
= 5,
374
opennslVlanActionMappedAdd
= 6,
376
opennslVlanActionMappedReplace
= 7,
378
opennslVlanActionOuterAdd
= 8,
380
opennslVlanActionInnerAdd
= 9,
382
}
opennsl_vlan_action_t
;
383
/* __doxy_func_body_end__ */
384
386
typedef
int
opennsl_tsn_pri_map_t
;
387
388
typedef
enum
opennsl_reserved_enum_e
{
389
opennsl_enum_reserved
= 0
390
}
opennsl_reserved_enum_t
;
391
/* __doxy_func_body_end__ */
392
394
typedef
struct
opennsl_vlan_action_set_s
{
395
opennsl_vlan_t
new_outer_vlan
;
397
opennsl_vlan_t
new_inner_vlan
;
399
uint8
new_inner_pkt_prio
;
401
uint8
new_outer_cfi
;
403
uint8
new_inner_cfi
;
405
opennsl_if_t
ingress_if
;
406
int
priority
;
407
opennsl_vlan_action_t
dt_outer
;
409
opennsl_vlan_action_t
dt_outer_prio
;
411
opennsl_vlan_action_t
dt_outer_pkt_prio
;
413
opennsl_vlan_action_t
dt_outer_cfi
;
415
opennsl_vlan_action_t
dt_inner
;
417
opennsl_vlan_action_t
dt_inner_prio
;
419
opennsl_vlan_action_t
dt_inner_pkt_prio
;
421
opennsl_vlan_action_t
dt_inner_cfi
;
423
opennsl_vlan_action_t
ot_outer
;
425
opennsl_vlan_action_t
ot_outer_prio
;
427
opennsl_vlan_action_t
ot_outer_pkt_prio
;
429
opennsl_vlan_action_t
ot_outer_cfi
;
431
opennsl_vlan_action_t
ot_inner
;
433
opennsl_vlan_action_t
ot_inner_pkt_prio
;
435
opennsl_vlan_action_t
ot_inner_cfi
;
437
opennsl_vlan_action_t
it_outer
;
439
opennsl_vlan_action_t
it_outer_pkt_prio
;
441
opennsl_vlan_action_t
it_outer_cfi
;
443
opennsl_vlan_action_t
it_inner
;
445
opennsl_vlan_action_t
it_inner_prio
;
447
opennsl_vlan_action_t
it_inner_pkt_prio
;
449
opennsl_vlan_action_t
it_inner_cfi
;
451
opennsl_vlan_action_t
ut_outer
;
453
opennsl_vlan_action_t
ut_outer_pkt_prio
;
455
opennsl_vlan_action_t
ut_outer_cfi
;
457
opennsl_vlan_action_t
ut_inner
;
459
opennsl_vlan_action_t
ut_inner_pkt_prio
;
461
opennsl_vlan_action_t
ut_inner_cfi
;
463
opennsl_vlan_pcp_action_t
outer_pcp
;
465
opennsl_vlan_pcp_action_t
inner_pcp
;
467
opennsl_policer_t
policer_id
;
468
uint16
outer_tpid
;
470
uint16
inner_tpid
;
472
opennsl_vlan_tpid_action_t
outer_tpid_action
;
473
opennsl_vlan_tpid_action_t
inner_tpid_action
;
474
int
action_id
;
475
uint32
class_id
;
476
opennsl_tsn_pri_map_t
taf_gate_primap
;
478
uint32
flags
;
479
}
opennsl_vlan_action_set_t
;
480
/* __doxy_func_body_end__ */
481
483
typedef
int
opennsl_tsn_flowset_t
;
484
486
typedef
int
opennsl_tsn_sr_flowset_t
;
487
488
#define OPENNSL_FIELD_STAT_ID_SET(_stat_id, _proc, _ctr) _SHR_FIELD_STAT_ID_SET(_stat_id, _proc, _ctr)
489
#define OPENNSL_FIELD_STAT_ID_COUNTER_GET(_stat_id) _SHR_FIELD_STAT_ID_COUNTER_GET(_stat_id)
490
#define OPENNSL_FIELD_STAT_ID_PROCESSOR_GET(_stat_id) _SHR_FIELD_STAT_ID_PROCESSOR_GET(_stat_id)
491
492
typedef
struct
opennsl_vntag_s
{
493
uint8
reserved1
;
494
uint8
reserved2
;
495
uint16
reserved3
;
496
uint8
reserved4
;
497
uint16
reserved5
;
498
}
opennsl_vntag_t
;
499
/* __doxy_func_body_end__ */
500
502
typedef
struct
opennsl_etag_s
{
503
uint8
reserved1
;
504
uint8
reserved2
;
505
uint16
reserved3
;
506
uint16
reserved4
;
507
}
opennsl_etag_t
;
508
/* __doxy_func_body_end__ */
509
510
#include <
opennsl/typesX.h
>
511
#endif
/* __OPENNSL_TYPES_H__ */
512
© 2016-17 by Broadcom Limited. All rights reserved.