blob: 008d9728ace409fdea236ec8db981fa71857e57d [file] [log] [blame]
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001{
Carmelo Cascone6230a612017-09-13 03:25:41 +02002 "build_date": "Wed Sep 13 01:00:43 2017",
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003 "phv_allocation": [
4 {
5 "ingress": [
6 {
7 "phv_number": 0,
8 "records": [
9 {
10 "word_bit_width": 32,
11 "position_offset": 0,
12 "phv_lsb": 0,
13 "is_pov": true,
14 "pov_headers": [],
15 "field_msb": 31,
16 "phv_msb": 31,
17 "is_compiler_generated": false,
18 "field_name": "POV",
19 "field_width": 0,
20 "field_lsb": 0
21 }
22 ]
23 },
24 {
25 "phv_number": 1,
26 "records": [
27 {
28 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070029 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020030 "phv_lsb": 24,
31 "is_pov": false,
32 "field_msb": 7,
33 "phv_msb": 31,
34 "is_compiler_generated": false,
35 "field_name": "ipv4_protocol",
36 "field_width": 1,
37 "field_lsb": 0
38 },
39 {
40 "word_bit_width": 32,
41 "position_offset": 10,
42 "phv_lsb": 8,
43 "is_pov": false,
44 "field_msb": 15,
45 "phv_msb": 23,
46 "is_compiler_generated": false,
47 "field_name": "ipv4_hdrChecksum",
48 "field_width": 2,
49 "field_lsb": 0
50 },
51 {
52 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070053 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020054 "phv_lsb": 0,
55 "is_pov": false,
56 "field_msb": 31,
57 "phv_msb": 7,
58 "is_compiler_generated": false,
59 "field_name": "ipv4_srcAddr",
60 "field_width": 4,
61 "field_lsb": 24
62 }
63 ]
64 },
65 {
66 "phv_number": 2,
67 "records": [
68 {
69 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070070 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020071 "phv_lsb": 0,
72 "is_pov": false,
73 "field_msb": 31,
74 "phv_msb": 31,
75 "is_compiler_generated": false,
76 "field_name": "ipv4_dstAddr",
77 "field_width": 4,
78 "field_lsb": 0
79 }
80 ]
81 },
82 {
83 "phv_number": 3,
84 "records": [
85 {
86 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +020087 "position_offset": 33,
88 "phv_lsb": 24,
89 "is_pov": false,
90 "field_msb": 7,
91 "phv_msb": 31,
92 "is_compiler_generated": false,
93 "field_name": "tcp_dstPort",
94 "field_width": 2,
95 "field_lsb": 0
96 },
97 {
98 "word_bit_width": 32,
99 "position_offset": 76,
100 "phv_lsb": 0,
101 "is_pov": false,
102 "field_msb": 31,
103 "phv_msb": 23,
104 "is_compiler_generated": false,
105 "field_name": "tcp_seqNo",
106 "field_width": 4,
107 "field_lsb": 8
108 }
109 ]
110 },
111 {
112 "phv_number": 4,
113 "records": [
114 {
115 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200116 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200117 "phv_lsb": 0,
118 "is_pov": false,
119 "field_msb": 39,
120 "phv_msb": 31,
121 "is_compiler_generated": false,
122 "field_name": "ethernet_dstAddr",
123 "field_width": 6,
124 "field_lsb": 8
125 }
126 ]
127 },
128 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200129 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200130 "records": [
131 {
132 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -0700133 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200134 "phv_lsb": 0,
135 "is_pov": false,
136 "field_msb": 31,
137 "phv_msb": 31,
138 "is_compiler_generated": false,
139 "field_name": "ethernet_srcAddr",
140 "field_width": 6,
141 "field_lsb": 0
142 }
143 ]
144 },
145 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200146 "phv_number": 64,
147 "records": [
148 {
149 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -0700150 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200151 "phv_lsb": 0,
152 "is_pov": false,
153 "field_msb": 23,
154 "phv_msb": 7,
155 "is_compiler_generated": false,
156 "field_name": "ipv4_srcAddr",
157 "field_width": 4,
158 "field_lsb": 16
159 }
160 ]
161 },
162 {
Brian O'Connora6862e02017-09-08 01:17:39 -0700163 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200164 "records": [
165 {
166 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +0200167 "position_offset": 38,
168 "phv_lsb": 0,
169 "is_pov": false,
170 "field_msb": 15,
171 "phv_msb": 7,
172 "is_compiler_generated": false,
173 "field_name": "tcp_srcPort",
174 "field_width": 2,
175 "field_lsb": 8
176 },
177 {
178 "word_bit_width": 8,
179 "position_offset": 66,
180 "phv_lsb": 0,
181 "is_pov": false,
182 "field_msb": 7,
183 "phv_msb": 7,
184 "is_compiler_generated": false,
185 "field_name": "udp_srcPort",
186 "field_width": 2,
187 "field_lsb": 0
188 }
189 ]
190 },
191 {
192 "phv_number": 66,
193 "records": [
194 {
195 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200196 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200197 "phv_lsb": 0,
198 "is_pov": false,
199 "field_msb": 47,
200 "phv_msb": 7,
201 "is_compiler_generated": false,
202 "field_name": "ethernet_dstAddr",
203 "field_width": 6,
204 "field_lsb": 40
205 }
206 ]
207 },
208 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200209 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200210 "records": [
211 {
212 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -0700213 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200214 "phv_lsb": 0,
215 "is_pov": false,
216 "field_msb": 39,
217 "phv_msb": 7,
218 "is_compiler_generated": false,
219 "field_name": "ethernet_srcAddr",
220 "field_width": 6,
221 "field_lsb": 32
222 }
223 ]
224 },
225 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200226 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200227 "records": [
228 {
229 "word_bit_width": 8,
230 "position_offset": 0,
231 "phv_lsb": 0,
232 "is_pov": true,
233 "pov_headers": [
234 {
235 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -0700236 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200237 "header_name": "packet_in_hdr",
238 "hidden": false
239 },
240 {
241 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -0700242 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200243 "header_name": "packet_out_hdr",
244 "hidden": false
245 },
246 {
247 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -0700248 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200249 "header_name": "ethernet",
250 "hidden": false
251 },
252 {
253 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -0700254 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200255 "header_name": "ipv4",
256 "hidden": false
257 },
258 {
259 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -0700260 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200261 "header_name": "tcp",
262 "hidden": false
263 },
264 {
265 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -0700266 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200267 "header_name": "udp",
268 "hidden": false
269 }
270 ],
271 "field_msb": 39,
272 "phv_msb": 7,
273 "is_compiler_generated": false,
274 "field_name": "POV",
275 "field_width": 0,
276 "field_lsb": 32
277 }
278 ]
279 },
280 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200281 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200282 "records": [
283 {
284 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -0700285 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200286 "phv_lsb": 5,
287 "is_pov": false,
288 "field_msb": 2,
289 "phv_msb": 7,
290 "is_compiler_generated": false,
291 "field_name": "ig_intr_md_for_tm_drop_ctl",
292 "field_width": 1,
293 "field_lsb": 0
294 }
295 ]
296 },
297 {
298 "phv_number": 128,
299 "records": [
300 {
301 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200302 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200303 "phv_lsb": 15,
304 "is_pov": false,
305 "field_msb": 0,
306 "phv_msb": 15,
307 "is_compiler_generated": false,
308 "field_name": "ig_intr_md_resubmit_flag",
309 "field_width": 1,
310 "field_lsb": 0
311 },
312 {
313 "word_bit_width": 16,
314 "position_offset": 8,
315 "phv_lsb": 0,
316 "is_pov": false,
317 "field_msb": 8,
318 "phv_msb": 8,
319 "is_compiler_generated": false,
320 "field_name": "ig_intr_md_ingress_port",
321 "field_width": 2,
322 "field_lsb": 0
323 }
324 ]
325 },
326 {
327 "phv_number": 129,
328 "records": [
329 {
330 "word_bit_width": 16,
331 "position_offset": 0,
332 "phv_lsb": 7,
333 "is_pov": false,
334 "field_msb": 8,
335 "phv_msb": 15,
336 "is_compiler_generated": false,
337 "field_name": "packet_out_hdr_egress_port",
338 "field_width": 2,
339 "field_lsb": 0
340 },
341 {
342 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200343 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200344 "phv_lsb": 7,
345 "is_pov": false,
346 "field_msb": 8,
347 "phv_msb": 15,
348 "is_compiler_generated": false,
349 "field_name": "packet_in_hdr_ingress_port",
350 "field_width": 2,
351 "field_lsb": 0
352 }
353 ]
354 },
355 {
356 "phv_number": 130,
357 "records": [
358 {
359 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -0700360 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200361 "phv_lsb": 0,
362 "is_pov": false,
363 "field_msb": 8,
364 "phv_msb": 8,
365 "is_compiler_generated": false,
366 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
367 "field_width": 2,
368 "field_lsb": 0
369 }
370 ]
371 },
372 {
373 "phv_number": 131,
374 "records": [
375 {
376 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -0700377 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200378 "phv_lsb": 0,
379 "is_pov": false,
380 "field_msb": 15,
381 "phv_msb": 15,
382 "is_compiler_generated": false,
383 "field_name": "ipv4_srcAddr",
384 "field_width": 4,
385 "field_lsb": 0
386 }
387 ]
388 },
389 {
390 "phv_number": 132,
391 "records": [
392 {
393 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +0200394 "position_offset": 38,
395 "phv_lsb": 8,
396 "is_pov": false,
397 "field_msb": 7,
398 "phv_msb": 15,
399 "is_compiler_generated": false,
400 "field_name": "tcp_srcPort",
401 "field_width": 2,
402 "field_lsb": 0
403 },
404 {
405 "word_bit_width": 16,
406 "position_offset": 33,
407 "phv_lsb": 0,
408 "is_pov": false,
409 "field_msb": 15,
410 "phv_msb": 7,
411 "is_compiler_generated": false,
412 "field_name": "tcp_dstPort",
413 "field_width": 2,
414 "field_lsb": 8
415 }
416 ]
417 },
418 {
419 "phv_number": 133,
420 "records": [
421 {
422 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200423 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200424 "phv_lsb": 8,
425 "is_pov": false,
426 "field_msb": 7,
427 "phv_msb": 15,
428 "is_compiler_generated": false,
429 "field_name": "ethernet_dstAddr",
430 "field_width": 6,
431 "field_lsb": 0
432 },
433 {
434 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -0700435 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200436 "phv_lsb": 0,
437 "is_pov": false,
438 "field_msb": 47,
439 "phv_msb": 7,
440 "is_compiler_generated": false,
441 "field_name": "ethernet_srcAddr",
442 "field_width": 6,
443 "field_lsb": 40
444 }
445 ]
446 },
447 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200448 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200449 "records": [
450 {
451 "word_bit_width": 16,
452 "position_offset": 5,
453 "phv_lsb": 0,
454 "is_pov": false,
455 "field_msb": 15,
456 "phv_msb": 15,
457 "is_compiler_generated": false,
458 "field_name": "ethernet_etherType",
459 "field_width": 2,
460 "field_lsb": 0
461 }
462 ]
463 },
464 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200465 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200466 "records": [
467 {
468 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200469 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200470 "phv_lsb": 0,
471 "is_pov": false,
472 "field_msb": 15,
473 "phv_msb": 15,
474 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200475 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200476 "field_width": 2,
477 "field_lsb": 0
478 }
479 ]
480 },
481 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200482 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200483 "records": [
484 {
485 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -0700486 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200487 "phv_lsb": 0,
488 "is_pov": false,
489 "field_msb": 15,
490 "phv_msb": 15,
491 "is_compiler_generated": false,
492 "field_name": "ecmp_metadata_selector",
493 "field_width": 2,
494 "field_lsb": 0
495 }
496 ]
497 },
498 {
499 "phv_number": 256,
500 "records": [
501 {
502 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -0700503 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200504 "phv_lsb": 24,
505 "is_pov": false,
506 "field_msb": 7,
507 "phv_msb": 31,
508 "is_compiler_generated": false,
509 "field_name": "ipv4_identification",
510 "field_width": 2,
511 "field_lsb": 0
512 },
513 {
514 "word_bit_width": 32,
515 "position_offset": 7,
516 "phv_lsb": 21,
517 "is_pov": false,
518 "field_msb": 2,
519 "phv_msb": 23,
520 "is_compiler_generated": false,
521 "field_name": "ipv4_flags",
522 "field_width": 1,
523 "field_lsb": 0
524 },
525 {
526 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -0700527 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200528 "phv_lsb": 8,
529 "is_pov": false,
530 "field_msb": 12,
531 "phv_msb": 20,
532 "is_compiler_generated": false,
533 "field_name": "ipv4_fragOffset",
534 "field_width": 2,
535 "field_lsb": 0
536 },
537 {
538 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -0700539 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200540 "phv_lsb": 0,
541 "is_pov": false,
542 "field_msb": 7,
543 "phv_msb": 7,
544 "is_compiler_generated": false,
545 "field_name": "ipv4_ttl",
546 "field_width": 1,
547 "field_lsb": 0
548 }
549 ]
550 },
551 {
552 "phv_number": 257,
553 "records": [
554 {
555 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -0700556 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200557 "phv_lsb": 28,
558 "is_pov": false,
559 "field_msb": 3,
560 "phv_msb": 31,
561 "is_compiler_generated": false,
562 "field_name": "tcp_dataOffset",
563 "field_width": 1,
564 "field_lsb": 0
565 },
566 {
567 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -0700568 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200569 "phv_lsb": 25,
570 "is_pov": false,
571 "field_msb": 2,
572 "phv_msb": 27,
573 "is_compiler_generated": false,
574 "field_name": "tcp_res",
575 "field_width": 1,
576 "field_lsb": 0
577 },
578 {
579 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -0700580 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200581 "phv_lsb": 22,
582 "is_pov": false,
583 "field_msb": 2,
584 "phv_msb": 24,
585 "is_compiler_generated": false,
586 "field_name": "tcp_ecn",
587 "field_width": 1,
588 "field_lsb": 0
589 },
590 {
591 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200592 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200593 "phv_lsb": 16,
594 "is_pov": false,
595 "field_msb": 5,
596 "phv_msb": 21,
597 "is_compiler_generated": false,
598 "field_name": "tcp_ctrl",
599 "field_width": 1,
600 "field_lsb": 0
601 },
602 {
603 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -0700604 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200605 "phv_lsb": 0,
606 "is_pov": false,
607 "field_msb": 15,
608 "phv_msb": 15,
609 "is_compiler_generated": false,
610 "field_name": "tcp_window",
611 "field_width": 2,
612 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +0200613 },
614 {
615 "word_bit_width": 32,
616 "position_offset": 17,
617 "phv_lsb": 16,
618 "is_pov": false,
619 "field_msb": 15,
620 "phv_msb": 31,
621 "is_compiler_generated": false,
622 "field_name": "udp_length_",
623 "field_width": 2,
624 "field_lsb": 0
625 },
626 {
627 "word_bit_width": 32,
628 "position_offset": 68,
629 "phv_lsb": 0,
630 "is_pov": false,
631 "field_msb": 15,
632 "phv_msb": 15,
633 "is_compiler_generated": false,
634 "field_name": "udp_checksum",
635 "field_width": 2,
636 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200637 }
638 ]
639 },
640 {
Brian O'Connora6862e02017-09-08 01:17:39 -0700641 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200642 "records": [
643 {
644 "word_bit_width": 32,
645 "position_offset": 2,
646 "phv_lsb": 16,
647 "is_pov": false,
648 "field_msb": 15,
649 "phv_msb": 31,
650 "is_compiler_generated": false,
651 "field_name": "tcp_checksum",
652 "field_width": 2,
653 "field_lsb": 0
654 },
655 {
656 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -0700657 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200658 "phv_lsb": 0,
659 "is_pov": false,
660 "field_msb": 15,
661 "phv_msb": 15,
662 "is_compiler_generated": false,
663 "field_name": "tcp_urgentPtr",
664 "field_width": 2,
665 "field_lsb": 0
666 }
667 ]
668 },
669 {
Brian O'Connora6862e02017-09-08 01:17:39 -0700670 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200671 "records": [
672 {
673 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -0700674 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +0200675 "phv_lsb": 4,
676 "is_pov": false,
677 "field_msb": 3,
678 "phv_msb": 7,
679 "is_compiler_generated": false,
680 "field_name": "ipv4_version",
681 "field_width": 1,
682 "field_lsb": 0
683 },
684 {
685 "word_bit_width": 8,
686 "position_offset": 40,
687 "phv_lsb": 0,
688 "is_pov": false,
689 "field_msb": 3,
690 "phv_msb": 3,
691 "is_compiler_generated": false,
692 "field_name": "ipv4_ihl",
693 "field_width": 1,
694 "field_lsb": 0
695 }
696 ]
697 },
698 {
Brian O'Connora6862e02017-09-08 01:17:39 -0700699 "phv_number": 289,
700 "records": [
701 {
702 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +0200703 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -0700704 "phv_lsb": 0,
705 "is_pov": false,
706 "field_msb": 7,
707 "phv_msb": 7,
708 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +0200709 "field_name": "tcp_seqNo",
710 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -0700711 "field_lsb": 0
712 },
713 {
714 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +0200715 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -0700716 "phv_lsb": 0,
717 "is_pov": false,
718 "field_msb": 15,
719 "phv_msb": 7,
720 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +0200721 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -0700722 "field_width": 2,
723 "field_lsb": 8
724 }
725 ]
726 },
727 {
Brian O'Connora6862e02017-09-08 01:17:39 -0700728 "phv_number": 320,
729 "records": [
730 {
731 "word_bit_width": 16,
732 "position_offset": 4,
733 "phv_lsb": 8,
734 "is_pov": false,
735 "field_msb": 7,
736 "phv_msb": 15,
737 "is_compiler_generated": false,
738 "field_name": "ipv4_diffserv",
739 "field_width": 1,
740 "field_lsb": 0
741 },
742 {
743 "word_bit_width": 16,
744 "position_offset": 63,
745 "phv_lsb": 0,
746 "is_pov": false,
747 "field_msb": 15,
748 "phv_msb": 7,
749 "is_compiler_generated": false,
750 "field_name": "ipv4_totalLen",
751 "field_width": 2,
752 "field_lsb": 8
753 }
754 ]
755 },
756 {
757 "phv_number": 321,
758 "records": [
759 {
760 "word_bit_width": 16,
761 "position_offset": 63,
762 "phv_lsb": 8,
763 "is_pov": false,
764 "field_msb": 7,
765 "phv_msb": 15,
766 "is_compiler_generated": false,
767 "field_name": "ipv4_totalLen",
768 "field_width": 2,
769 "field_lsb": 0
770 },
771 {
772 "word_bit_width": 16,
773 "position_offset": 49,
774 "phv_lsb": 0,
775 "is_pov": false,
776 "field_msb": 15,
777 "phv_msb": 7,
778 "is_compiler_generated": false,
779 "field_name": "ipv4_identification",
780 "field_width": 2,
781 "field_lsb": 8
782 }
783 ]
784 },
785 {
786 "phv_number": 322,
787 "records": [
788 {
789 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200790 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -0700791 "phv_lsb": 0,
792 "is_pov": false,
793 "field_msb": 31,
794 "phv_msb": 15,
795 "is_compiler_generated": false,
796 "field_name": "tcp_ackNo",
797 "field_width": 4,
798 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +0200799 },
800 {
801 "word_bit_width": 16,
802 "position_offset": 55,
803 "phv_lsb": 0,
804 "is_pov": false,
805 "field_msb": 15,
806 "phv_msb": 15,
807 "is_compiler_generated": false,
808 "field_name": "udp_dstPort",
809 "field_width": 2,
810 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -0700811 }
812 ]
813 },
814 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200815 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -0700816 "records": [
817 {
818 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +0200819 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -0700820 "phv_lsb": 0,
821 "is_pov": false,
822 "field_msb": 15,
823 "phv_msb": 15,
824 "is_compiler_generated": false,
825 "field_name": "tcp_ackNo",
826 "field_width": 4,
827 "field_lsb": 0
828 }
829 ]
830 }
831 ],
832 "egress": [
833 {
834 "phv_number": 80,
835 "records": [
836 {
837 "word_bit_width": 8,
838 "position_offset": 7,
839 "phv_lsb": 0,
840 "is_pov": false,
841 "field_msb": 2,
842 "phv_msb": 2,
843 "is_compiler_generated": false,
844 "field_name": "eg_intr_md_egress_cos",
845 "field_width": 1,
846 "field_lsb": 0
847 }
848 ]
849 },
850 {
851 "phv_number": 81,
852 "records": [
853 {
854 "word_bit_width": 8,
855 "position_offset": 0,
856 "phv_lsb": 0,
857 "is_pov": true,
858 "pov_headers": [
859 {
860 "bit_index": 0,
861 "position_offset": 73,
862 "header_name": "packet_in_hdr",
863 "hidden": false
864 },
865 {
866 "bit_index": 1,
867 "position_offset": 74,
868 "header_name": "packet_out_hdr",
869 "hidden": false
870 },
871 {
872 "bit_index": 2,
873 "position_offset": 75,
874 "header_name": "ethernet",
875 "hidden": false
876 },
877 {
878 "bit_index": 3,
879 "position_offset": 76,
880 "header_name": "ipv4",
881 "hidden": false
882 },
883 {
884 "bit_index": 4,
885 "position_offset": 77,
886 "header_name": "tcp",
887 "hidden": false
888 },
889 {
890 "bit_index": 5,
891 "position_offset": 78,
892 "header_name": "udp",
893 "hidden": false
894 }
895 ],
896 "field_msb": 7,
897 "phv_msb": 7,
898 "is_compiler_generated": false,
899 "field_name": "POV",
900 "field_width": 0,
901 "field_lsb": 0
902 }
903 ]
904 },
905 {
906 "phv_number": 144,
907 "records": [
908 {
909 "word_bit_width": 16,
910 "position_offset": 61,
911 "phv_lsb": 0,
912 "is_pov": false,
913 "field_msb": 8,
914 "phv_msb": 8,
915 "is_compiler_generated": false,
916 "field_name": "eg_intr_md_egress_port",
917 "field_width": 2,
918 "field_lsb": 0
919 }
920 ]
921 },
922 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200923 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -0700924 "records": [
925 {
926 "word_bit_width": 32,
927 "position_offset": 47,
928 "phv_lsb": 24,
929 "is_pov": false,
930 "field_msb": 7,
931 "phv_msb": 31,
932 "is_compiler_generated": false,
933 "field_name": "ipv4_ttl",
934 "field_width": 1,
935 "field_lsb": 0
936 },
937 {
938 "word_bit_width": 32,
939 "position_offset": 18,
940 "phv_lsb": 16,
941 "is_pov": false,
942 "field_msb": 7,
943 "phv_msb": 23,
944 "is_compiler_generated": false,
945 "field_name": "ipv4_protocol",
946 "field_width": 1,
947 "field_lsb": 0
948 },
949 {
950 "word_bit_width": 32,
951 "position_offset": 9,
952 "phv_lsb": 0,
953 "is_pov": false,
954 "field_msb": 15,
955 "phv_msb": 15,
956 "is_compiler_generated": false,
957 "field_name": "ipv4_hdrChecksum",
958 "field_width": 2,
959 "field_lsb": 0
960 }
961 ]
962 },
963 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200964 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -0700965 "records": [
966 {
967 "word_bit_width": 32,
968 "position_offset": 12,
969 "phv_lsb": 0,
970 "is_pov": false,
971 "field_msb": 31,
972 "phv_msb": 31,
973 "is_compiler_generated": false,
974 "field_name": "ipv4_srcAddr",
975 "field_width": 4,
976 "field_lsb": 0
977 }
978 ]
979 },
980 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200981 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -0700982 "records": [
983 {
984 "word_bit_width": 32,
985 "position_offset": 50,
986 "phv_lsb": 0,
987 "is_pov": false,
988 "field_msb": 31,
989 "phv_msb": 31,
990 "is_compiler_generated": false,
991 "field_name": "ipv4_dstAddr",
992 "field_width": 4,
993 "field_lsb": 0
994 }
995 ]
996 },
997 {
Carmelo Cascone6230a612017-09-13 03:25:41 +0200998 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -0700999 "records": [
1000 {
1001 "word_bit_width": 32,
1002 "position_offset": 25,
1003 "phv_lsb": 0,
1004 "is_pov": false,
1005 "field_msb": 31,
1006 "phv_msb": 31,
1007 "is_compiler_generated": false,
1008 "field_name": "tcp_ackNo",
1009 "field_width": 4,
1010 "field_lsb": 0
1011 },
1012 {
1013 "word_bit_width": 32,
1014 "position_offset": 16,
1015 "phv_lsb": 16,
1016 "is_pov": false,
1017 "field_msb": 15,
1018 "phv_msb": 31,
1019 "is_compiler_generated": false,
1020 "field_name": "udp_length_",
1021 "field_width": 2,
1022 "field_lsb": 0
1023 },
1024 {
1025 "word_bit_width": 32,
1026 "position_offset": 59,
1027 "phv_lsb": 0,
1028 "is_pov": false,
1029 "field_msb": 15,
1030 "phv_msb": 15,
1031 "is_compiler_generated": false,
1032 "field_name": "udp_checksum",
1033 "field_width": 2,
1034 "field_lsb": 0
1035 }
1036 ]
1037 },
1038 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001039 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -07001040 "records": [
1041 {
1042 "word_bit_width": 32,
1043 "position_offset": 38,
1044 "phv_lsb": 28,
1045 "is_pov": false,
1046 "field_msb": 3,
1047 "phv_msb": 31,
1048 "is_compiler_generated": false,
1049 "field_name": "tcp_dataOffset",
1050 "field_width": 1,
1051 "field_lsb": 0
1052 },
1053 {
1054 "word_bit_width": 32,
1055 "position_offset": 58,
1056 "phv_lsb": 25,
1057 "is_pov": false,
1058 "field_msb": 2,
1059 "phv_msb": 27,
1060 "is_compiler_generated": false,
1061 "field_name": "tcp_res",
1062 "field_width": 1,
1063 "field_lsb": 0
1064 },
1065 {
1066 "word_bit_width": 32,
1067 "position_offset": 11,
1068 "phv_lsb": 22,
1069 "is_pov": false,
1070 "field_msb": 2,
1071 "phv_msb": 24,
1072 "is_compiler_generated": false,
1073 "field_name": "tcp_ecn",
1074 "field_width": 1,
1075 "field_lsb": 0
1076 },
1077 {
1078 "word_bit_width": 32,
1079 "position_offset": 34,
1080 "phv_lsb": 16,
1081 "is_pov": false,
1082 "field_msb": 5,
1083 "phv_msb": 21,
1084 "is_compiler_generated": false,
1085 "field_name": "tcp_ctrl",
1086 "field_width": 1,
1087 "field_lsb": 0
1088 },
1089 {
1090 "word_bit_width": 32,
1091 "position_offset": 41,
1092 "phv_lsb": 0,
1093 "is_pov": false,
1094 "field_msb": 15,
1095 "phv_msb": 15,
1096 "is_compiler_generated": false,
1097 "field_name": "tcp_window",
1098 "field_width": 2,
1099 "field_lsb": 0
1100 }
1101 ]
1102 },
1103 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001104 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -07001105 "records": [
1106 {
1107 "word_bit_width": 32,
1108 "position_offset": 2,
1109 "phv_lsb": 16,
1110 "is_pov": false,
1111 "field_msb": 15,
1112 "phv_msb": 31,
1113 "is_compiler_generated": false,
1114 "field_name": "tcp_checksum",
1115 "field_width": 2,
1116 "field_lsb": 0
1117 },
1118 {
1119 "word_bit_width": 32,
1120 "position_offset": 45,
1121 "phv_lsb": 0,
1122 "is_pov": false,
1123 "field_msb": 15,
1124 "phv_msb": 15,
1125 "is_compiler_generated": false,
1126 "field_name": "tcp_urgentPtr",
1127 "field_width": 2,
1128 "field_lsb": 0
1129 }
1130 ]
1131 },
1132 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001133 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -07001134 "records": [
1135 {
1136 "word_bit_width": 32,
1137 "position_offset": 19,
1138 "phv_lsb": 0,
1139 "is_pov": false,
1140 "field_msb": 39,
1141 "phv_msb": 31,
1142 "is_compiler_generated": false,
1143 "field_name": "ethernet_dstAddr",
1144 "field_width": 6,
1145 "field_lsb": 8
1146 }
1147 ]
1148 },
1149 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001150 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -07001151 "records": [
1152 {
1153 "word_bit_width": 32,
1154 "position_offset": 63,
1155 "phv_lsb": 0,
1156 "is_pov": false,
1157 "field_msb": 31,
1158 "phv_msb": 31,
1159 "is_compiler_generated": false,
1160 "field_name": "ethernet_srcAddr",
1161 "field_width": 6,
1162 "field_lsb": 0
1163 }
1164 ]
1165 },
1166 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001167 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -07001168 "records": [
1169 {
1170 "word_bit_width": 8,
1171 "position_offset": 29,
1172 "phv_lsb": 4,
1173 "is_pov": false,
1174 "field_msb": 3,
1175 "phv_msb": 7,
1176 "is_compiler_generated": false,
1177 "field_name": "ipv4_version",
1178 "field_width": 1,
1179 "field_lsb": 0
1180 },
1181 {
1182 "word_bit_width": 8,
1183 "position_offset": 37,
1184 "phv_lsb": 0,
1185 "is_pov": false,
1186 "field_msb": 3,
1187 "phv_msb": 3,
1188 "is_compiler_generated": false,
1189 "field_name": "ipv4_ihl",
1190 "field_width": 1,
1191 "field_lsb": 0
1192 }
1193 ]
1194 },
1195 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001196 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001197 "records": [
1198 {
1199 "word_bit_width": 8,
1200 "position_offset": 4,
1201 "phv_lsb": 0,
1202 "is_pov": false,
1203 "field_msb": 7,
1204 "phv_msb": 7,
1205 "is_compiler_generated": false,
1206 "field_name": "ipv4_diffserv",
1207 "field_width": 1,
1208 "field_lsb": 0
1209 }
1210 ]
1211 },
1212 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001213 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001214 "records": [
1215 {
1216 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07001217 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001218 "phv_lsb": 0,
1219 "is_pov": false,
1220 "field_msb": 15,
1221 "phv_msb": 7,
1222 "is_compiler_generated": false,
1223 "field_name": "tcp_srcPort",
1224 "field_width": 2,
1225 "field_lsb": 8
1226 },
1227 {
1228 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07001229 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001230 "phv_lsb": 0,
1231 "is_pov": false,
1232 "field_msb": 15,
1233 "phv_msb": 7,
1234 "is_compiler_generated": false,
1235 "field_name": "udp_srcPort",
1236 "field_width": 2,
1237 "field_lsb": 8
1238 }
1239 ]
1240 },
1241 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001242 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001243 "records": [
1244 {
1245 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07001246 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001247 "phv_lsb": 0,
1248 "is_pov": false,
1249 "field_msb": 7,
1250 "phv_msb": 7,
1251 "is_compiler_generated": false,
1252 "field_name": "tcp_srcPort",
1253 "field_width": 2,
1254 "field_lsb": 0
1255 },
1256 {
1257 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07001258 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001259 "phv_lsb": 0,
1260 "is_pov": false,
1261 "field_msb": 7,
1262 "phv_msb": 7,
1263 "is_compiler_generated": false,
1264 "field_name": "udp_srcPort",
1265 "field_width": 2,
1266 "field_lsb": 0
1267 }
1268 ]
1269 },
1270 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001271 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001272 "records": [
1273 {
1274 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07001275 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001276 "phv_lsb": 0,
1277 "is_pov": false,
1278 "field_msb": 47,
1279 "phv_msb": 7,
1280 "is_compiler_generated": false,
1281 "field_name": "ethernet_dstAddr",
1282 "field_width": 6,
1283 "field_lsb": 40
1284 }
1285 ]
1286 },
1287 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001288 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001289 "records": [
1290 {
1291 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07001292 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001293 "phv_lsb": 0,
1294 "is_pov": false,
1295 "field_msb": 39,
1296 "phv_msb": 7,
1297 "is_compiler_generated": false,
1298 "field_name": "ethernet_srcAddr",
1299 "field_width": 6,
1300 "field_lsb": 32
1301 }
1302 ]
1303 },
1304 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001305 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001306 "records": [
1307 {
1308 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001309 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001310 "phv_lsb": 0,
1311 "is_pov": false,
1312 "field_msb": 15,
1313 "phv_msb": 15,
1314 "is_compiler_generated": false,
1315 "field_name": "ipv4_totalLen",
1316 "field_width": 2,
1317 "field_lsb": 0
1318 }
1319 ]
1320 },
1321 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001322 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001323 "records": [
1324 {
1325 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001326 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001327 "phv_lsb": 0,
1328 "is_pov": false,
1329 "field_msb": 15,
1330 "phv_msb": 15,
1331 "is_compiler_generated": false,
1332 "field_name": "ipv4_identification",
1333 "field_width": 2,
1334 "field_lsb": 0
1335 }
1336 ]
1337 },
1338 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001339 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001340 "records": [
1341 {
1342 "word_bit_width": 16,
1343 "position_offset": 8,
1344 "phv_lsb": 13,
1345 "is_pov": false,
1346 "field_msb": 2,
1347 "phv_msb": 15,
1348 "is_compiler_generated": false,
1349 "field_name": "ipv4_flags",
1350 "field_width": 1,
1351 "field_lsb": 0
1352 },
1353 {
1354 "word_bit_width": 16,
1355 "position_offset": 5,
1356 "phv_lsb": 0,
1357 "is_pov": false,
1358 "field_msb": 12,
1359 "phv_msb": 12,
1360 "is_compiler_generated": false,
1361 "field_name": "ipv4_fragOffset",
1362 "field_width": 2,
1363 "field_lsb": 0
1364 }
1365 ]
1366 },
1367 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001368 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001369 "records": [
1370 {
1371 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001372 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001373 "phv_lsb": 0,
1374 "is_pov": false,
1375 "field_msb": 15,
1376 "phv_msb": 15,
1377 "is_compiler_generated": false,
1378 "field_name": "tcp_dstPort",
1379 "field_width": 2,
1380 "field_lsb": 0
1381 },
1382 {
1383 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001384 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001385 "phv_lsb": 0,
1386 "is_pov": false,
1387 "field_msb": 15,
1388 "phv_msb": 15,
1389 "is_compiler_generated": false,
1390 "field_name": "udp_dstPort",
1391 "field_width": 2,
1392 "field_lsb": 0
1393 }
1394 ]
1395 },
1396 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001397 "phv_number": 330,
1398 "records": [
1399 {
1400 "word_bit_width": 16,
1401 "position_offset": 69,
1402 "phv_lsb": 0,
1403 "is_pov": false,
1404 "field_msb": 31,
1405 "phv_msb": 15,
1406 "is_compiler_generated": false,
1407 "field_name": "tcp_seqNo",
1408 "field_width": 4,
1409 "field_lsb": 16
1410 }
1411 ]
1412 },
1413 {
1414 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001415 "records": [
1416 {
1417 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001418 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001419 "phv_lsb": 0,
1420 "is_pov": false,
1421 "field_msb": 15,
1422 "phv_msb": 15,
1423 "is_compiler_generated": false,
1424 "field_name": "tcp_seqNo",
1425 "field_width": 4,
1426 "field_lsb": 0
1427 }
1428 ]
1429 },
1430 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001431 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001432 "records": [
1433 {
1434 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001435 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001436 "phv_lsb": 8,
1437 "is_pov": false,
1438 "field_msb": 7,
1439 "phv_msb": 15,
1440 "is_compiler_generated": false,
1441 "field_name": "ethernet_dstAddr",
1442 "field_width": 6,
1443 "field_lsb": 0
1444 },
1445 {
1446 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001447 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001448 "phv_lsb": 0,
1449 "is_pov": false,
1450 "field_msb": 47,
1451 "phv_msb": 7,
1452 "is_compiler_generated": false,
1453 "field_name": "ethernet_srcAddr",
1454 "field_width": 6,
1455 "field_lsb": 40
1456 }
1457 ]
1458 },
1459 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001460 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001461 "records": [
1462 {
1463 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001464 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001465 "phv_lsb": 0,
1466 "is_pov": false,
1467 "field_msb": 15,
1468 "phv_msb": 15,
1469 "is_compiler_generated": false,
1470 "field_name": "ethernet_etherType",
1471 "field_width": 2,
1472 "field_lsb": 0
1473 }
1474 ]
1475 },
1476 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001477 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001478 "records": [
1479 {
1480 "word_bit_width": 16,
1481 "position_offset": 0,
1482 "phv_lsb": 7,
1483 "is_pov": false,
1484 "field_msb": 8,
1485 "phv_msb": 15,
1486 "is_compiler_generated": false,
1487 "field_name": "packet_out_hdr_egress_port",
1488 "field_width": 2,
1489 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07001490 },
1491 {
1492 "word_bit_width": 16,
1493 "position_offset": 30,
1494 "phv_lsb": 7,
1495 "is_pov": false,
1496 "field_msb": 8,
1497 "phv_msb": 15,
1498 "is_compiler_generated": false,
1499 "field_name": "packet_in_hdr_ingress_port",
1500 "field_width": 2,
1501 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001502 }
1503 ]
1504 }
1505 ],
1506 "stage_number": 0
1507 },
1508 {
1509 "ingress": [
1510 {
1511 "phv_number": 0,
1512 "records": [
1513 {
1514 "word_bit_width": 32,
1515 "position_offset": 0,
1516 "phv_lsb": 0,
1517 "is_pov": true,
1518 "pov_headers": [],
1519 "field_msb": 31,
1520 "phv_msb": 31,
1521 "is_compiler_generated": false,
1522 "field_name": "POV",
1523 "field_width": 0,
1524 "field_lsb": 0
1525 }
1526 ]
1527 },
1528 {
1529 "phv_number": 1,
1530 "records": [
1531 {
1532 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07001533 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001534 "phv_lsb": 24,
1535 "is_pov": false,
1536 "field_msb": 7,
1537 "phv_msb": 31,
1538 "is_compiler_generated": false,
1539 "field_name": "ipv4_protocol",
1540 "field_width": 1,
1541 "field_lsb": 0
1542 },
1543 {
1544 "word_bit_width": 32,
1545 "position_offset": 10,
1546 "phv_lsb": 8,
1547 "is_pov": false,
1548 "field_msb": 15,
1549 "phv_msb": 23,
1550 "is_compiler_generated": false,
1551 "field_name": "ipv4_hdrChecksum",
1552 "field_width": 2,
1553 "field_lsb": 0
1554 },
1555 {
1556 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07001557 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001558 "phv_lsb": 0,
1559 "is_pov": false,
1560 "field_msb": 31,
1561 "phv_msb": 7,
1562 "is_compiler_generated": false,
1563 "field_name": "ipv4_srcAddr",
1564 "field_width": 4,
1565 "field_lsb": 24
1566 }
1567 ]
1568 },
1569 {
1570 "phv_number": 2,
1571 "records": [
1572 {
1573 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07001574 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001575 "phv_lsb": 0,
1576 "is_pov": false,
1577 "field_msb": 31,
1578 "phv_msb": 31,
1579 "is_compiler_generated": false,
1580 "field_name": "ipv4_dstAddr",
1581 "field_width": 4,
1582 "field_lsb": 0
1583 }
1584 ]
1585 },
1586 {
1587 "phv_number": 3,
1588 "records": [
1589 {
1590 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +02001591 "position_offset": 33,
1592 "phv_lsb": 24,
1593 "is_pov": false,
1594 "field_msb": 7,
1595 "phv_msb": 31,
1596 "is_compiler_generated": false,
1597 "field_name": "tcp_dstPort",
1598 "field_width": 2,
1599 "field_lsb": 0
1600 },
1601 {
1602 "word_bit_width": 32,
1603 "position_offset": 76,
1604 "phv_lsb": 0,
1605 "is_pov": false,
1606 "field_msb": 31,
1607 "phv_msb": 23,
1608 "is_compiler_generated": false,
1609 "field_name": "tcp_seqNo",
1610 "field_width": 4,
1611 "field_lsb": 8
1612 }
1613 ]
1614 },
1615 {
1616 "phv_number": 4,
1617 "records": [
1618 {
1619 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02001620 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001621 "phv_lsb": 0,
1622 "is_pov": false,
1623 "field_msb": 39,
1624 "phv_msb": 31,
1625 "is_compiler_generated": false,
1626 "field_name": "ethernet_dstAddr",
1627 "field_width": 6,
1628 "field_lsb": 8
1629 }
1630 ]
1631 },
1632 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001633 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001634 "records": [
1635 {
1636 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07001637 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001638 "phv_lsb": 0,
1639 "is_pov": false,
1640 "field_msb": 31,
1641 "phv_msb": 31,
1642 "is_compiler_generated": false,
1643 "field_name": "ethernet_srcAddr",
1644 "field_width": 6,
1645 "field_lsb": 0
1646 }
1647 ]
1648 },
1649 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001650 "phv_number": 64,
1651 "records": [
1652 {
1653 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07001654 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001655 "phv_lsb": 0,
1656 "is_pov": false,
1657 "field_msb": 23,
1658 "phv_msb": 7,
1659 "is_compiler_generated": false,
1660 "field_name": "ipv4_srcAddr",
1661 "field_width": 4,
1662 "field_lsb": 16
1663 }
1664 ]
1665 },
1666 {
Brian O'Connora6862e02017-09-08 01:17:39 -07001667 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001668 "records": [
1669 {
1670 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02001671 "position_offset": 38,
1672 "phv_lsb": 0,
1673 "is_pov": false,
1674 "field_msb": 15,
1675 "phv_msb": 7,
1676 "is_compiler_generated": false,
1677 "field_name": "tcp_srcPort",
1678 "field_width": 2,
1679 "field_lsb": 8
1680 },
1681 {
1682 "word_bit_width": 8,
1683 "position_offset": 66,
1684 "phv_lsb": 0,
1685 "is_pov": false,
1686 "field_msb": 7,
1687 "phv_msb": 7,
1688 "is_compiler_generated": false,
1689 "field_name": "udp_srcPort",
1690 "field_width": 2,
1691 "field_lsb": 0
1692 }
1693 ]
1694 },
1695 {
1696 "phv_number": 66,
1697 "records": [
1698 {
1699 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02001700 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001701 "phv_lsb": 0,
1702 "is_pov": false,
1703 "field_msb": 47,
1704 "phv_msb": 7,
1705 "is_compiler_generated": false,
1706 "field_name": "ethernet_dstAddr",
1707 "field_width": 6,
1708 "field_lsb": 40
1709 }
1710 ]
1711 },
1712 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001713 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001714 "records": [
1715 {
1716 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07001717 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001718 "phv_lsb": 0,
1719 "is_pov": false,
1720 "field_msb": 39,
1721 "phv_msb": 7,
1722 "is_compiler_generated": false,
1723 "field_name": "ethernet_srcAddr",
1724 "field_width": 6,
1725 "field_lsb": 32
1726 }
1727 ]
1728 },
1729 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001730 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001731 "records": [
1732 {
1733 "word_bit_width": 8,
1734 "position_offset": 0,
1735 "phv_lsb": 0,
1736 "is_pov": true,
1737 "pov_headers": [
1738 {
1739 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -07001740 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001741 "header_name": "packet_in_hdr",
1742 "hidden": false
1743 },
1744 {
1745 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -07001746 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001747 "header_name": "packet_out_hdr",
1748 "hidden": false
1749 },
1750 {
1751 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -07001752 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001753 "header_name": "ethernet",
1754 "hidden": false
1755 },
1756 {
1757 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -07001758 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001759 "header_name": "ipv4",
1760 "hidden": false
1761 },
1762 {
1763 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07001764 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001765 "header_name": "tcp",
1766 "hidden": false
1767 },
1768 {
1769 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -07001770 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001771 "header_name": "udp",
1772 "hidden": false
1773 }
1774 ],
1775 "field_msb": 39,
1776 "phv_msb": 7,
1777 "is_compiler_generated": false,
1778 "field_name": "POV",
1779 "field_width": 0,
1780 "field_lsb": 32
1781 }
1782 ]
1783 },
1784 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001785 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001786 "records": [
1787 {
1788 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07001789 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001790 "phv_lsb": 5,
1791 "is_pov": false,
1792 "field_msb": 2,
1793 "phv_msb": 7,
1794 "is_compiler_generated": false,
1795 "field_name": "ig_intr_md_for_tm_drop_ctl",
1796 "field_width": 1,
1797 "field_lsb": 0
1798 }
1799 ]
1800 },
1801 {
1802 "phv_number": 128,
1803 "records": [
1804 {
1805 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02001806 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001807 "phv_lsb": 15,
1808 "is_pov": false,
1809 "field_msb": 0,
1810 "phv_msb": 15,
1811 "is_compiler_generated": false,
1812 "field_name": "ig_intr_md_resubmit_flag",
1813 "field_width": 1,
1814 "field_lsb": 0
1815 },
1816 {
1817 "word_bit_width": 16,
1818 "position_offset": 8,
1819 "phv_lsb": 0,
1820 "is_pov": false,
1821 "field_msb": 8,
1822 "phv_msb": 8,
1823 "is_compiler_generated": false,
1824 "field_name": "ig_intr_md_ingress_port",
1825 "field_width": 2,
1826 "field_lsb": 0
1827 }
1828 ]
1829 },
1830 {
1831 "phv_number": 129,
1832 "records": [
1833 {
1834 "word_bit_width": 16,
1835 "position_offset": 0,
1836 "phv_lsb": 7,
1837 "is_pov": false,
1838 "field_msb": 8,
1839 "phv_msb": 15,
1840 "is_compiler_generated": false,
1841 "field_name": "packet_out_hdr_egress_port",
1842 "field_width": 2,
1843 "field_lsb": 0
1844 },
1845 {
1846 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02001847 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001848 "phv_lsb": 7,
1849 "is_pov": false,
1850 "field_msb": 8,
1851 "phv_msb": 15,
1852 "is_compiler_generated": false,
1853 "field_name": "packet_in_hdr_ingress_port",
1854 "field_width": 2,
1855 "field_lsb": 0
1856 }
1857 ]
1858 },
1859 {
1860 "phv_number": 130,
1861 "records": [
1862 {
1863 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001864 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001865 "phv_lsb": 0,
1866 "is_pov": false,
1867 "field_msb": 8,
1868 "phv_msb": 8,
1869 "is_compiler_generated": false,
1870 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
1871 "field_width": 2,
1872 "field_lsb": 0
1873 }
1874 ]
1875 },
1876 {
1877 "phv_number": 131,
1878 "records": [
1879 {
1880 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001881 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001882 "phv_lsb": 0,
1883 "is_pov": false,
1884 "field_msb": 15,
1885 "phv_msb": 15,
1886 "is_compiler_generated": false,
1887 "field_name": "ipv4_srcAddr",
1888 "field_width": 4,
1889 "field_lsb": 0
1890 }
1891 ]
1892 },
1893 {
1894 "phv_number": 132,
1895 "records": [
1896 {
1897 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +02001898 "position_offset": 38,
1899 "phv_lsb": 8,
1900 "is_pov": false,
1901 "field_msb": 7,
1902 "phv_msb": 15,
1903 "is_compiler_generated": false,
1904 "field_name": "tcp_srcPort",
1905 "field_width": 2,
1906 "field_lsb": 0
1907 },
1908 {
1909 "word_bit_width": 16,
1910 "position_offset": 33,
1911 "phv_lsb": 0,
1912 "is_pov": false,
1913 "field_msb": 15,
1914 "phv_msb": 7,
1915 "is_compiler_generated": false,
1916 "field_name": "tcp_dstPort",
1917 "field_width": 2,
1918 "field_lsb": 8
1919 }
1920 ]
1921 },
1922 {
1923 "phv_number": 133,
1924 "records": [
1925 {
1926 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02001927 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001928 "phv_lsb": 8,
1929 "is_pov": false,
1930 "field_msb": 7,
1931 "phv_msb": 15,
1932 "is_compiler_generated": false,
1933 "field_name": "ethernet_dstAddr",
1934 "field_width": 6,
1935 "field_lsb": 0
1936 },
1937 {
1938 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001939 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001940 "phv_lsb": 0,
1941 "is_pov": false,
1942 "field_msb": 47,
1943 "phv_msb": 7,
1944 "is_compiler_generated": false,
1945 "field_name": "ethernet_srcAddr",
1946 "field_width": 6,
1947 "field_lsb": 40
1948 }
1949 ]
1950 },
1951 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001952 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001953 "records": [
1954 {
1955 "word_bit_width": 16,
1956 "position_offset": 5,
1957 "phv_lsb": 0,
1958 "is_pov": false,
1959 "field_msb": 15,
1960 "phv_msb": 15,
1961 "is_compiler_generated": false,
1962 "field_name": "ethernet_etherType",
1963 "field_width": 2,
1964 "field_lsb": 0
1965 }
1966 ]
1967 },
1968 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001969 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001970 "records": [
1971 {
1972 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02001973 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001974 "phv_lsb": 0,
1975 "is_pov": false,
1976 "field_msb": 15,
1977 "phv_msb": 15,
1978 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02001979 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001980 "field_width": 2,
1981 "field_lsb": 0
1982 }
1983 ]
1984 },
1985 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02001986 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001987 "records": [
1988 {
1989 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07001990 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02001991 "phv_lsb": 0,
1992 "is_pov": false,
1993 "field_msb": 15,
1994 "phv_msb": 15,
1995 "is_compiler_generated": false,
1996 "field_name": "ecmp_metadata_selector",
1997 "field_width": 2,
1998 "field_lsb": 0
1999 }
2000 ]
2001 },
2002 {
2003 "phv_number": 256,
2004 "records": [
2005 {
2006 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07002007 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002008 "phv_lsb": 24,
2009 "is_pov": false,
2010 "field_msb": 7,
2011 "phv_msb": 31,
2012 "is_compiler_generated": false,
2013 "field_name": "ipv4_identification",
2014 "field_width": 2,
2015 "field_lsb": 0
2016 },
2017 {
2018 "word_bit_width": 32,
2019 "position_offset": 7,
2020 "phv_lsb": 21,
2021 "is_pov": false,
2022 "field_msb": 2,
2023 "phv_msb": 23,
2024 "is_compiler_generated": false,
2025 "field_name": "ipv4_flags",
2026 "field_width": 1,
2027 "field_lsb": 0
2028 },
2029 {
2030 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07002031 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002032 "phv_lsb": 8,
2033 "is_pov": false,
2034 "field_msb": 12,
2035 "phv_msb": 20,
2036 "is_compiler_generated": false,
2037 "field_name": "ipv4_fragOffset",
2038 "field_width": 2,
2039 "field_lsb": 0
2040 },
2041 {
2042 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07002043 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002044 "phv_lsb": 0,
2045 "is_pov": false,
2046 "field_msb": 7,
2047 "phv_msb": 7,
2048 "is_compiler_generated": false,
2049 "field_name": "ipv4_ttl",
2050 "field_width": 1,
2051 "field_lsb": 0
2052 }
2053 ]
2054 },
2055 {
2056 "phv_number": 257,
2057 "records": [
2058 {
2059 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07002060 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002061 "phv_lsb": 28,
2062 "is_pov": false,
2063 "field_msb": 3,
2064 "phv_msb": 31,
2065 "is_compiler_generated": false,
2066 "field_name": "tcp_dataOffset",
2067 "field_width": 1,
2068 "field_lsb": 0
2069 },
2070 {
2071 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07002072 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002073 "phv_lsb": 25,
2074 "is_pov": false,
2075 "field_msb": 2,
2076 "phv_msb": 27,
2077 "is_compiler_generated": false,
2078 "field_name": "tcp_res",
2079 "field_width": 1,
2080 "field_lsb": 0
2081 },
2082 {
2083 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07002084 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002085 "phv_lsb": 22,
2086 "is_pov": false,
2087 "field_msb": 2,
2088 "phv_msb": 24,
2089 "is_compiler_generated": false,
2090 "field_name": "tcp_ecn",
2091 "field_width": 1,
2092 "field_lsb": 0
2093 },
2094 {
2095 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02002096 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002097 "phv_lsb": 16,
2098 "is_pov": false,
2099 "field_msb": 5,
2100 "phv_msb": 21,
2101 "is_compiler_generated": false,
2102 "field_name": "tcp_ctrl",
2103 "field_width": 1,
2104 "field_lsb": 0
2105 },
2106 {
2107 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07002108 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002109 "phv_lsb": 0,
2110 "is_pov": false,
2111 "field_msb": 15,
2112 "phv_msb": 15,
2113 "is_compiler_generated": false,
2114 "field_name": "tcp_window",
2115 "field_width": 2,
2116 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +02002117 },
2118 {
2119 "word_bit_width": 32,
2120 "position_offset": 17,
2121 "phv_lsb": 16,
2122 "is_pov": false,
2123 "field_msb": 15,
2124 "phv_msb": 31,
2125 "is_compiler_generated": false,
2126 "field_name": "udp_length_",
2127 "field_width": 2,
2128 "field_lsb": 0
2129 },
2130 {
2131 "word_bit_width": 32,
2132 "position_offset": 68,
2133 "phv_lsb": 0,
2134 "is_pov": false,
2135 "field_msb": 15,
2136 "phv_msb": 15,
2137 "is_compiler_generated": false,
2138 "field_name": "udp_checksum",
2139 "field_width": 2,
2140 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002141 }
2142 ]
2143 },
2144 {
Brian O'Connora6862e02017-09-08 01:17:39 -07002145 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002146 "records": [
2147 {
2148 "word_bit_width": 32,
2149 "position_offset": 2,
2150 "phv_lsb": 16,
2151 "is_pov": false,
2152 "field_msb": 15,
2153 "phv_msb": 31,
2154 "is_compiler_generated": false,
2155 "field_name": "tcp_checksum",
2156 "field_width": 2,
2157 "field_lsb": 0
2158 },
2159 {
2160 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07002161 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002162 "phv_lsb": 0,
2163 "is_pov": false,
2164 "field_msb": 15,
2165 "phv_msb": 15,
2166 "is_compiler_generated": false,
2167 "field_name": "tcp_urgentPtr",
2168 "field_width": 2,
2169 "field_lsb": 0
2170 }
2171 ]
2172 },
2173 {
Brian O'Connora6862e02017-09-08 01:17:39 -07002174 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002175 "records": [
2176 {
2177 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07002178 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002179 "phv_lsb": 4,
2180 "is_pov": false,
2181 "field_msb": 3,
2182 "phv_msb": 7,
2183 "is_compiler_generated": false,
2184 "field_name": "ipv4_version",
2185 "field_width": 1,
2186 "field_lsb": 0
2187 },
2188 {
2189 "word_bit_width": 8,
2190 "position_offset": 40,
2191 "phv_lsb": 0,
2192 "is_pov": false,
2193 "field_msb": 3,
2194 "phv_msb": 3,
2195 "is_compiler_generated": false,
2196 "field_name": "ipv4_ihl",
2197 "field_width": 1,
2198 "field_lsb": 0
2199 }
2200 ]
2201 },
2202 {
Brian O'Connora6862e02017-09-08 01:17:39 -07002203 "phv_number": 289,
2204 "records": [
2205 {
2206 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02002207 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -07002208 "phv_lsb": 0,
2209 "is_pov": false,
2210 "field_msb": 7,
2211 "phv_msb": 7,
2212 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02002213 "field_name": "tcp_seqNo",
2214 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07002215 "field_lsb": 0
2216 },
2217 {
2218 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02002219 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -07002220 "phv_lsb": 0,
2221 "is_pov": false,
2222 "field_msb": 15,
2223 "phv_msb": 7,
2224 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02002225 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -07002226 "field_width": 2,
2227 "field_lsb": 8
2228 }
2229 ]
2230 },
2231 {
Brian O'Connora6862e02017-09-08 01:17:39 -07002232 "phv_number": 320,
2233 "records": [
2234 {
2235 "word_bit_width": 16,
2236 "position_offset": 4,
2237 "phv_lsb": 8,
2238 "is_pov": false,
2239 "field_msb": 7,
2240 "phv_msb": 15,
2241 "is_compiler_generated": false,
2242 "field_name": "ipv4_diffserv",
2243 "field_width": 1,
2244 "field_lsb": 0
2245 },
2246 {
2247 "word_bit_width": 16,
2248 "position_offset": 63,
2249 "phv_lsb": 0,
2250 "is_pov": false,
2251 "field_msb": 15,
2252 "phv_msb": 7,
2253 "is_compiler_generated": false,
2254 "field_name": "ipv4_totalLen",
2255 "field_width": 2,
2256 "field_lsb": 8
2257 }
2258 ]
2259 },
2260 {
2261 "phv_number": 321,
2262 "records": [
2263 {
2264 "word_bit_width": 16,
2265 "position_offset": 63,
2266 "phv_lsb": 8,
2267 "is_pov": false,
2268 "field_msb": 7,
2269 "phv_msb": 15,
2270 "is_compiler_generated": false,
2271 "field_name": "ipv4_totalLen",
2272 "field_width": 2,
2273 "field_lsb": 0
2274 },
2275 {
2276 "word_bit_width": 16,
2277 "position_offset": 49,
2278 "phv_lsb": 0,
2279 "is_pov": false,
2280 "field_msb": 15,
2281 "phv_msb": 7,
2282 "is_compiler_generated": false,
2283 "field_name": "ipv4_identification",
2284 "field_width": 2,
2285 "field_lsb": 8
2286 }
2287 ]
2288 },
2289 {
2290 "phv_number": 322,
2291 "records": [
2292 {
2293 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02002294 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07002295 "phv_lsb": 0,
2296 "is_pov": false,
2297 "field_msb": 31,
2298 "phv_msb": 15,
2299 "is_compiler_generated": false,
2300 "field_name": "tcp_ackNo",
2301 "field_width": 4,
2302 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +02002303 },
2304 {
2305 "word_bit_width": 16,
2306 "position_offset": 55,
2307 "phv_lsb": 0,
2308 "is_pov": false,
2309 "field_msb": 15,
2310 "phv_msb": 15,
2311 "is_compiler_generated": false,
2312 "field_name": "udp_dstPort",
2313 "field_width": 2,
2314 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07002315 }
2316 ]
2317 },
2318 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002319 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -07002320 "records": [
2321 {
2322 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02002323 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07002324 "phv_lsb": 0,
2325 "is_pov": false,
2326 "field_msb": 15,
2327 "phv_msb": 15,
2328 "is_compiler_generated": false,
2329 "field_name": "tcp_ackNo",
2330 "field_width": 4,
2331 "field_lsb": 0
2332 }
2333 ]
2334 }
2335 ],
2336 "egress": [
2337 {
2338 "phv_number": 80,
2339 "records": [
2340 {
2341 "word_bit_width": 8,
2342 "position_offset": 7,
2343 "phv_lsb": 0,
2344 "is_pov": false,
2345 "field_msb": 2,
2346 "phv_msb": 2,
2347 "is_compiler_generated": false,
2348 "field_name": "eg_intr_md_egress_cos",
2349 "field_width": 1,
2350 "field_lsb": 0
2351 }
2352 ]
2353 },
2354 {
2355 "phv_number": 81,
2356 "records": [
2357 {
2358 "word_bit_width": 8,
2359 "position_offset": 0,
2360 "phv_lsb": 0,
2361 "is_pov": true,
2362 "pov_headers": [
2363 {
2364 "bit_index": 0,
2365 "position_offset": 73,
2366 "header_name": "packet_in_hdr",
2367 "hidden": false
2368 },
2369 {
2370 "bit_index": 1,
2371 "position_offset": 74,
2372 "header_name": "packet_out_hdr",
2373 "hidden": false
2374 },
2375 {
2376 "bit_index": 2,
2377 "position_offset": 75,
2378 "header_name": "ethernet",
2379 "hidden": false
2380 },
2381 {
2382 "bit_index": 3,
2383 "position_offset": 76,
2384 "header_name": "ipv4",
2385 "hidden": false
2386 },
2387 {
2388 "bit_index": 4,
2389 "position_offset": 77,
2390 "header_name": "tcp",
2391 "hidden": false
2392 },
2393 {
2394 "bit_index": 5,
2395 "position_offset": 78,
2396 "header_name": "udp",
2397 "hidden": false
2398 }
2399 ],
2400 "field_msb": 7,
2401 "phv_msb": 7,
2402 "is_compiler_generated": false,
2403 "field_name": "POV",
2404 "field_width": 0,
2405 "field_lsb": 0
2406 }
2407 ]
2408 },
2409 {
2410 "phv_number": 144,
2411 "records": [
2412 {
2413 "word_bit_width": 16,
2414 "position_offset": 61,
2415 "phv_lsb": 0,
2416 "is_pov": false,
2417 "field_msb": 8,
2418 "phv_msb": 8,
2419 "is_compiler_generated": false,
2420 "field_name": "eg_intr_md_egress_port",
2421 "field_width": 2,
2422 "field_lsb": 0
2423 }
2424 ]
2425 },
2426 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002427 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -07002428 "records": [
2429 {
2430 "word_bit_width": 32,
2431 "position_offset": 47,
2432 "phv_lsb": 24,
2433 "is_pov": false,
2434 "field_msb": 7,
2435 "phv_msb": 31,
2436 "is_compiler_generated": false,
2437 "field_name": "ipv4_ttl",
2438 "field_width": 1,
2439 "field_lsb": 0
2440 },
2441 {
2442 "word_bit_width": 32,
2443 "position_offset": 18,
2444 "phv_lsb": 16,
2445 "is_pov": false,
2446 "field_msb": 7,
2447 "phv_msb": 23,
2448 "is_compiler_generated": false,
2449 "field_name": "ipv4_protocol",
2450 "field_width": 1,
2451 "field_lsb": 0
2452 },
2453 {
2454 "word_bit_width": 32,
2455 "position_offset": 9,
2456 "phv_lsb": 0,
2457 "is_pov": false,
2458 "field_msb": 15,
2459 "phv_msb": 15,
2460 "is_compiler_generated": false,
2461 "field_name": "ipv4_hdrChecksum",
2462 "field_width": 2,
2463 "field_lsb": 0
2464 }
2465 ]
2466 },
2467 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002468 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -07002469 "records": [
2470 {
2471 "word_bit_width": 32,
2472 "position_offset": 12,
2473 "phv_lsb": 0,
2474 "is_pov": false,
2475 "field_msb": 31,
2476 "phv_msb": 31,
2477 "is_compiler_generated": false,
2478 "field_name": "ipv4_srcAddr",
2479 "field_width": 4,
2480 "field_lsb": 0
2481 }
2482 ]
2483 },
2484 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002485 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -07002486 "records": [
2487 {
2488 "word_bit_width": 32,
2489 "position_offset": 50,
2490 "phv_lsb": 0,
2491 "is_pov": false,
2492 "field_msb": 31,
2493 "phv_msb": 31,
2494 "is_compiler_generated": false,
2495 "field_name": "ipv4_dstAddr",
2496 "field_width": 4,
2497 "field_lsb": 0
2498 }
2499 ]
2500 },
2501 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002502 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -07002503 "records": [
2504 {
2505 "word_bit_width": 32,
2506 "position_offset": 25,
2507 "phv_lsb": 0,
2508 "is_pov": false,
2509 "field_msb": 31,
2510 "phv_msb": 31,
2511 "is_compiler_generated": false,
2512 "field_name": "tcp_ackNo",
2513 "field_width": 4,
2514 "field_lsb": 0
2515 },
2516 {
2517 "word_bit_width": 32,
2518 "position_offset": 16,
2519 "phv_lsb": 16,
2520 "is_pov": false,
2521 "field_msb": 15,
2522 "phv_msb": 31,
2523 "is_compiler_generated": false,
2524 "field_name": "udp_length_",
2525 "field_width": 2,
2526 "field_lsb": 0
2527 },
2528 {
2529 "word_bit_width": 32,
2530 "position_offset": 59,
2531 "phv_lsb": 0,
2532 "is_pov": false,
2533 "field_msb": 15,
2534 "phv_msb": 15,
2535 "is_compiler_generated": false,
2536 "field_name": "udp_checksum",
2537 "field_width": 2,
2538 "field_lsb": 0
2539 }
2540 ]
2541 },
2542 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002543 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -07002544 "records": [
2545 {
2546 "word_bit_width": 32,
2547 "position_offset": 38,
2548 "phv_lsb": 28,
2549 "is_pov": false,
2550 "field_msb": 3,
2551 "phv_msb": 31,
2552 "is_compiler_generated": false,
2553 "field_name": "tcp_dataOffset",
2554 "field_width": 1,
2555 "field_lsb": 0
2556 },
2557 {
2558 "word_bit_width": 32,
2559 "position_offset": 58,
2560 "phv_lsb": 25,
2561 "is_pov": false,
2562 "field_msb": 2,
2563 "phv_msb": 27,
2564 "is_compiler_generated": false,
2565 "field_name": "tcp_res",
2566 "field_width": 1,
2567 "field_lsb": 0
2568 },
2569 {
2570 "word_bit_width": 32,
2571 "position_offset": 11,
2572 "phv_lsb": 22,
2573 "is_pov": false,
2574 "field_msb": 2,
2575 "phv_msb": 24,
2576 "is_compiler_generated": false,
2577 "field_name": "tcp_ecn",
2578 "field_width": 1,
2579 "field_lsb": 0
2580 },
2581 {
2582 "word_bit_width": 32,
2583 "position_offset": 34,
2584 "phv_lsb": 16,
2585 "is_pov": false,
2586 "field_msb": 5,
2587 "phv_msb": 21,
2588 "is_compiler_generated": false,
2589 "field_name": "tcp_ctrl",
2590 "field_width": 1,
2591 "field_lsb": 0
2592 },
2593 {
2594 "word_bit_width": 32,
2595 "position_offset": 41,
2596 "phv_lsb": 0,
2597 "is_pov": false,
2598 "field_msb": 15,
2599 "phv_msb": 15,
2600 "is_compiler_generated": false,
2601 "field_name": "tcp_window",
2602 "field_width": 2,
2603 "field_lsb": 0
2604 }
2605 ]
2606 },
2607 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002608 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -07002609 "records": [
2610 {
2611 "word_bit_width": 32,
2612 "position_offset": 2,
2613 "phv_lsb": 16,
2614 "is_pov": false,
2615 "field_msb": 15,
2616 "phv_msb": 31,
2617 "is_compiler_generated": false,
2618 "field_name": "tcp_checksum",
2619 "field_width": 2,
2620 "field_lsb": 0
2621 },
2622 {
2623 "word_bit_width": 32,
2624 "position_offset": 45,
2625 "phv_lsb": 0,
2626 "is_pov": false,
2627 "field_msb": 15,
2628 "phv_msb": 15,
2629 "is_compiler_generated": false,
2630 "field_name": "tcp_urgentPtr",
2631 "field_width": 2,
2632 "field_lsb": 0
2633 }
2634 ]
2635 },
2636 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002637 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -07002638 "records": [
2639 {
2640 "word_bit_width": 32,
2641 "position_offset": 19,
2642 "phv_lsb": 0,
2643 "is_pov": false,
2644 "field_msb": 39,
2645 "phv_msb": 31,
2646 "is_compiler_generated": false,
2647 "field_name": "ethernet_dstAddr",
2648 "field_width": 6,
2649 "field_lsb": 8
2650 }
2651 ]
2652 },
2653 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002654 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -07002655 "records": [
2656 {
2657 "word_bit_width": 32,
2658 "position_offset": 63,
2659 "phv_lsb": 0,
2660 "is_pov": false,
2661 "field_msb": 31,
2662 "phv_msb": 31,
2663 "is_compiler_generated": false,
2664 "field_name": "ethernet_srcAddr",
2665 "field_width": 6,
2666 "field_lsb": 0
2667 }
2668 ]
2669 },
2670 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002671 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -07002672 "records": [
2673 {
2674 "word_bit_width": 8,
2675 "position_offset": 29,
2676 "phv_lsb": 4,
2677 "is_pov": false,
2678 "field_msb": 3,
2679 "phv_msb": 7,
2680 "is_compiler_generated": false,
2681 "field_name": "ipv4_version",
2682 "field_width": 1,
2683 "field_lsb": 0
2684 },
2685 {
2686 "word_bit_width": 8,
2687 "position_offset": 37,
2688 "phv_lsb": 0,
2689 "is_pov": false,
2690 "field_msb": 3,
2691 "phv_msb": 3,
2692 "is_compiler_generated": false,
2693 "field_name": "ipv4_ihl",
2694 "field_width": 1,
2695 "field_lsb": 0
2696 }
2697 ]
2698 },
2699 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002700 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002701 "records": [
2702 {
2703 "word_bit_width": 8,
2704 "position_offset": 4,
2705 "phv_lsb": 0,
2706 "is_pov": false,
2707 "field_msb": 7,
2708 "phv_msb": 7,
2709 "is_compiler_generated": false,
2710 "field_name": "ipv4_diffserv",
2711 "field_width": 1,
2712 "field_lsb": 0
2713 }
2714 ]
2715 },
2716 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002717 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002718 "records": [
2719 {
2720 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07002721 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002722 "phv_lsb": 0,
2723 "is_pov": false,
2724 "field_msb": 15,
2725 "phv_msb": 7,
2726 "is_compiler_generated": false,
2727 "field_name": "tcp_srcPort",
2728 "field_width": 2,
2729 "field_lsb": 8
2730 },
2731 {
2732 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07002733 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002734 "phv_lsb": 0,
2735 "is_pov": false,
2736 "field_msb": 15,
2737 "phv_msb": 7,
2738 "is_compiler_generated": false,
2739 "field_name": "udp_srcPort",
2740 "field_width": 2,
2741 "field_lsb": 8
2742 }
2743 ]
2744 },
2745 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002746 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002747 "records": [
2748 {
2749 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07002750 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002751 "phv_lsb": 0,
2752 "is_pov": false,
2753 "field_msb": 7,
2754 "phv_msb": 7,
2755 "is_compiler_generated": false,
2756 "field_name": "tcp_srcPort",
2757 "field_width": 2,
2758 "field_lsb": 0
2759 },
2760 {
2761 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07002762 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002763 "phv_lsb": 0,
2764 "is_pov": false,
2765 "field_msb": 7,
2766 "phv_msb": 7,
2767 "is_compiler_generated": false,
2768 "field_name": "udp_srcPort",
2769 "field_width": 2,
2770 "field_lsb": 0
2771 }
2772 ]
2773 },
2774 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002775 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002776 "records": [
2777 {
2778 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07002779 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002780 "phv_lsb": 0,
2781 "is_pov": false,
2782 "field_msb": 47,
2783 "phv_msb": 7,
2784 "is_compiler_generated": false,
2785 "field_name": "ethernet_dstAddr",
2786 "field_width": 6,
2787 "field_lsb": 40
2788 }
2789 ]
2790 },
2791 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002792 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002793 "records": [
2794 {
2795 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07002796 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002797 "phv_lsb": 0,
2798 "is_pov": false,
2799 "field_msb": 39,
2800 "phv_msb": 7,
2801 "is_compiler_generated": false,
2802 "field_name": "ethernet_srcAddr",
2803 "field_width": 6,
2804 "field_lsb": 32
2805 }
2806 ]
2807 },
2808 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002809 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002810 "records": [
2811 {
2812 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07002813 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002814 "phv_lsb": 0,
2815 "is_pov": false,
2816 "field_msb": 15,
2817 "phv_msb": 15,
2818 "is_compiler_generated": false,
2819 "field_name": "ipv4_totalLen",
2820 "field_width": 2,
2821 "field_lsb": 0
2822 }
2823 ]
2824 },
2825 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002826 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002827 "records": [
2828 {
2829 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07002830 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002831 "phv_lsb": 0,
2832 "is_pov": false,
2833 "field_msb": 15,
2834 "phv_msb": 15,
2835 "is_compiler_generated": false,
2836 "field_name": "ipv4_identification",
2837 "field_width": 2,
2838 "field_lsb": 0
2839 }
2840 ]
2841 },
2842 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002843 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002844 "records": [
2845 {
2846 "word_bit_width": 16,
2847 "position_offset": 8,
2848 "phv_lsb": 13,
2849 "is_pov": false,
2850 "field_msb": 2,
2851 "phv_msb": 15,
2852 "is_compiler_generated": false,
2853 "field_name": "ipv4_flags",
2854 "field_width": 1,
2855 "field_lsb": 0
2856 },
2857 {
2858 "word_bit_width": 16,
2859 "position_offset": 5,
2860 "phv_lsb": 0,
2861 "is_pov": false,
2862 "field_msb": 12,
2863 "phv_msb": 12,
2864 "is_compiler_generated": false,
2865 "field_name": "ipv4_fragOffset",
2866 "field_width": 2,
2867 "field_lsb": 0
2868 }
2869 ]
2870 },
2871 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002872 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002873 "records": [
2874 {
2875 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07002876 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002877 "phv_lsb": 0,
2878 "is_pov": false,
2879 "field_msb": 15,
2880 "phv_msb": 15,
2881 "is_compiler_generated": false,
2882 "field_name": "tcp_dstPort",
2883 "field_width": 2,
2884 "field_lsb": 0
2885 },
2886 {
2887 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07002888 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002889 "phv_lsb": 0,
2890 "is_pov": false,
2891 "field_msb": 15,
2892 "phv_msb": 15,
2893 "is_compiler_generated": false,
2894 "field_name": "udp_dstPort",
2895 "field_width": 2,
2896 "field_lsb": 0
2897 }
2898 ]
2899 },
2900 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002901 "phv_number": 330,
2902 "records": [
2903 {
2904 "word_bit_width": 16,
2905 "position_offset": 69,
2906 "phv_lsb": 0,
2907 "is_pov": false,
2908 "field_msb": 31,
2909 "phv_msb": 15,
2910 "is_compiler_generated": false,
2911 "field_name": "tcp_seqNo",
2912 "field_width": 4,
2913 "field_lsb": 16
2914 }
2915 ]
2916 },
2917 {
2918 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002919 "records": [
2920 {
2921 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07002922 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002923 "phv_lsb": 0,
2924 "is_pov": false,
2925 "field_msb": 15,
2926 "phv_msb": 15,
2927 "is_compiler_generated": false,
2928 "field_name": "tcp_seqNo",
2929 "field_width": 4,
2930 "field_lsb": 0
2931 }
2932 ]
2933 },
2934 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002935 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002936 "records": [
2937 {
2938 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07002939 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002940 "phv_lsb": 8,
2941 "is_pov": false,
2942 "field_msb": 7,
2943 "phv_msb": 15,
2944 "is_compiler_generated": false,
2945 "field_name": "ethernet_dstAddr",
2946 "field_width": 6,
2947 "field_lsb": 0
2948 },
2949 {
2950 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07002951 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002952 "phv_lsb": 0,
2953 "is_pov": false,
2954 "field_msb": 47,
2955 "phv_msb": 7,
2956 "is_compiler_generated": false,
2957 "field_name": "ethernet_srcAddr",
2958 "field_width": 6,
2959 "field_lsb": 40
2960 }
2961 ]
2962 },
2963 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002964 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002965 "records": [
2966 {
2967 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07002968 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002969 "phv_lsb": 0,
2970 "is_pov": false,
2971 "field_msb": 15,
2972 "phv_msb": 15,
2973 "is_compiler_generated": false,
2974 "field_name": "ethernet_etherType",
2975 "field_width": 2,
2976 "field_lsb": 0
2977 }
2978 ]
2979 },
2980 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02002981 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02002982 "records": [
2983 {
2984 "word_bit_width": 16,
2985 "position_offset": 0,
2986 "phv_lsb": 7,
2987 "is_pov": false,
2988 "field_msb": 8,
2989 "phv_msb": 15,
2990 "is_compiler_generated": false,
2991 "field_name": "packet_out_hdr_egress_port",
2992 "field_width": 2,
2993 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07002994 },
2995 {
2996 "word_bit_width": 16,
2997 "position_offset": 30,
2998 "phv_lsb": 7,
2999 "is_pov": false,
3000 "field_msb": 8,
3001 "phv_msb": 15,
3002 "is_compiler_generated": false,
3003 "field_name": "packet_in_hdr_ingress_port",
3004 "field_width": 2,
3005 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003006 }
3007 ]
3008 }
3009 ],
3010 "stage_number": 1
3011 },
3012 {
3013 "ingress": [
3014 {
3015 "phv_number": 0,
3016 "records": [
3017 {
3018 "word_bit_width": 32,
3019 "position_offset": 0,
3020 "phv_lsb": 0,
3021 "is_pov": true,
3022 "pov_headers": [],
3023 "field_msb": 31,
3024 "phv_msb": 31,
3025 "is_compiler_generated": false,
3026 "field_name": "POV",
3027 "field_width": 0,
3028 "field_lsb": 0
3029 }
3030 ]
3031 },
3032 {
3033 "phv_number": 1,
3034 "records": [
3035 {
3036 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003037 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003038 "phv_lsb": 24,
3039 "is_pov": false,
3040 "field_msb": 7,
3041 "phv_msb": 31,
3042 "is_compiler_generated": false,
3043 "field_name": "ipv4_protocol",
3044 "field_width": 1,
3045 "field_lsb": 0
3046 },
3047 {
3048 "word_bit_width": 32,
3049 "position_offset": 10,
3050 "phv_lsb": 8,
3051 "is_pov": false,
3052 "field_msb": 15,
3053 "phv_msb": 23,
3054 "is_compiler_generated": false,
3055 "field_name": "ipv4_hdrChecksum",
3056 "field_width": 2,
3057 "field_lsb": 0
3058 },
3059 {
3060 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003061 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003062 "phv_lsb": 0,
3063 "is_pov": false,
3064 "field_msb": 31,
3065 "phv_msb": 7,
3066 "is_compiler_generated": false,
3067 "field_name": "ipv4_srcAddr",
3068 "field_width": 4,
3069 "field_lsb": 24
3070 }
3071 ]
3072 },
3073 {
3074 "phv_number": 2,
3075 "records": [
3076 {
3077 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003078 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003079 "phv_lsb": 0,
3080 "is_pov": false,
3081 "field_msb": 31,
3082 "phv_msb": 31,
3083 "is_compiler_generated": false,
3084 "field_name": "ipv4_dstAddr",
3085 "field_width": 4,
3086 "field_lsb": 0
3087 }
3088 ]
3089 },
3090 {
3091 "phv_number": 3,
3092 "records": [
3093 {
3094 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +02003095 "position_offset": 33,
3096 "phv_lsb": 24,
3097 "is_pov": false,
3098 "field_msb": 7,
3099 "phv_msb": 31,
3100 "is_compiler_generated": false,
3101 "field_name": "tcp_dstPort",
3102 "field_width": 2,
3103 "field_lsb": 0
3104 },
3105 {
3106 "word_bit_width": 32,
3107 "position_offset": 76,
3108 "phv_lsb": 0,
3109 "is_pov": false,
3110 "field_msb": 31,
3111 "phv_msb": 23,
3112 "is_compiler_generated": false,
3113 "field_name": "tcp_seqNo",
3114 "field_width": 4,
3115 "field_lsb": 8
3116 }
3117 ]
3118 },
3119 {
3120 "phv_number": 4,
3121 "records": [
3122 {
3123 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003124 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003125 "phv_lsb": 0,
3126 "is_pov": false,
3127 "field_msb": 39,
3128 "phv_msb": 31,
3129 "is_compiler_generated": false,
3130 "field_name": "ethernet_dstAddr",
3131 "field_width": 6,
3132 "field_lsb": 8
3133 }
3134 ]
3135 },
3136 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003137 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003138 "records": [
3139 {
3140 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003141 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003142 "phv_lsb": 0,
3143 "is_pov": false,
3144 "field_msb": 31,
3145 "phv_msb": 31,
3146 "is_compiler_generated": false,
3147 "field_name": "ethernet_srcAddr",
3148 "field_width": 6,
3149 "field_lsb": 0
3150 }
3151 ]
3152 },
3153 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003154 "phv_number": 64,
3155 "records": [
3156 {
3157 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07003158 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003159 "phv_lsb": 0,
3160 "is_pov": false,
3161 "field_msb": 23,
3162 "phv_msb": 7,
3163 "is_compiler_generated": false,
3164 "field_name": "ipv4_srcAddr",
3165 "field_width": 4,
3166 "field_lsb": 16
3167 }
3168 ]
3169 },
3170 {
Brian O'Connora6862e02017-09-08 01:17:39 -07003171 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003172 "records": [
3173 {
3174 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02003175 "position_offset": 38,
3176 "phv_lsb": 0,
3177 "is_pov": false,
3178 "field_msb": 15,
3179 "phv_msb": 7,
3180 "is_compiler_generated": false,
3181 "field_name": "tcp_srcPort",
3182 "field_width": 2,
3183 "field_lsb": 8
3184 },
3185 {
3186 "word_bit_width": 8,
3187 "position_offset": 66,
3188 "phv_lsb": 0,
3189 "is_pov": false,
3190 "field_msb": 7,
3191 "phv_msb": 7,
3192 "is_compiler_generated": false,
3193 "field_name": "udp_srcPort",
3194 "field_width": 2,
3195 "field_lsb": 0
3196 }
3197 ]
3198 },
3199 {
3200 "phv_number": 66,
3201 "records": [
3202 {
3203 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003204 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003205 "phv_lsb": 0,
3206 "is_pov": false,
3207 "field_msb": 47,
3208 "phv_msb": 7,
3209 "is_compiler_generated": false,
3210 "field_name": "ethernet_dstAddr",
3211 "field_width": 6,
3212 "field_lsb": 40
3213 }
3214 ]
3215 },
3216 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003217 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003218 "records": [
3219 {
3220 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07003221 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003222 "phv_lsb": 0,
3223 "is_pov": false,
3224 "field_msb": 39,
3225 "phv_msb": 7,
3226 "is_compiler_generated": false,
3227 "field_name": "ethernet_srcAddr",
3228 "field_width": 6,
3229 "field_lsb": 32
3230 }
3231 ]
3232 },
3233 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003234 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003235 "records": [
3236 {
3237 "word_bit_width": 8,
3238 "position_offset": 0,
3239 "phv_lsb": 0,
3240 "is_pov": true,
3241 "pov_headers": [
3242 {
3243 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -07003244 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003245 "header_name": "packet_in_hdr",
3246 "hidden": false
3247 },
3248 {
3249 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -07003250 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003251 "header_name": "packet_out_hdr",
3252 "hidden": false
3253 },
3254 {
3255 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -07003256 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003257 "header_name": "ethernet",
3258 "hidden": false
3259 },
3260 {
3261 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -07003262 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003263 "header_name": "ipv4",
3264 "hidden": false
3265 },
3266 {
3267 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07003268 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003269 "header_name": "tcp",
3270 "hidden": false
3271 },
3272 {
3273 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -07003274 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003275 "header_name": "udp",
3276 "hidden": false
3277 }
3278 ],
3279 "field_msb": 39,
3280 "phv_msb": 7,
3281 "is_compiler_generated": false,
3282 "field_name": "POV",
3283 "field_width": 0,
3284 "field_lsb": 32
3285 }
3286 ]
3287 },
3288 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003289 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003290 "records": [
3291 {
3292 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07003293 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003294 "phv_lsb": 5,
3295 "is_pov": false,
3296 "field_msb": 2,
3297 "phv_msb": 7,
3298 "is_compiler_generated": false,
3299 "field_name": "ig_intr_md_for_tm_drop_ctl",
3300 "field_width": 1,
3301 "field_lsb": 0
3302 }
3303 ]
3304 },
3305 {
3306 "phv_number": 128,
3307 "records": [
3308 {
3309 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003310 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003311 "phv_lsb": 15,
3312 "is_pov": false,
3313 "field_msb": 0,
3314 "phv_msb": 15,
3315 "is_compiler_generated": false,
3316 "field_name": "ig_intr_md_resubmit_flag",
3317 "field_width": 1,
3318 "field_lsb": 0
3319 },
3320 {
3321 "word_bit_width": 16,
3322 "position_offset": 8,
3323 "phv_lsb": 0,
3324 "is_pov": false,
3325 "field_msb": 8,
3326 "phv_msb": 8,
3327 "is_compiler_generated": false,
3328 "field_name": "ig_intr_md_ingress_port",
3329 "field_width": 2,
3330 "field_lsb": 0
3331 }
3332 ]
3333 },
3334 {
3335 "phv_number": 129,
3336 "records": [
3337 {
3338 "word_bit_width": 16,
3339 "position_offset": 0,
3340 "phv_lsb": 7,
3341 "is_pov": false,
3342 "field_msb": 8,
3343 "phv_msb": 15,
3344 "is_compiler_generated": false,
3345 "field_name": "packet_out_hdr_egress_port",
3346 "field_width": 2,
3347 "field_lsb": 0
3348 },
3349 {
3350 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003351 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003352 "phv_lsb": 7,
3353 "is_pov": false,
3354 "field_msb": 8,
3355 "phv_msb": 15,
3356 "is_compiler_generated": false,
3357 "field_name": "packet_in_hdr_ingress_port",
3358 "field_width": 2,
3359 "field_lsb": 0
3360 }
3361 ]
3362 },
3363 {
3364 "phv_number": 130,
3365 "records": [
3366 {
3367 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07003368 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003369 "phv_lsb": 0,
3370 "is_pov": false,
3371 "field_msb": 8,
3372 "phv_msb": 8,
3373 "is_compiler_generated": false,
3374 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
3375 "field_width": 2,
3376 "field_lsb": 0
3377 }
3378 ]
3379 },
3380 {
3381 "phv_number": 131,
3382 "records": [
3383 {
3384 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07003385 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003386 "phv_lsb": 0,
3387 "is_pov": false,
3388 "field_msb": 15,
3389 "phv_msb": 15,
3390 "is_compiler_generated": false,
3391 "field_name": "ipv4_srcAddr",
3392 "field_width": 4,
3393 "field_lsb": 0
3394 }
3395 ]
3396 },
3397 {
3398 "phv_number": 132,
3399 "records": [
3400 {
3401 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +02003402 "position_offset": 38,
3403 "phv_lsb": 8,
3404 "is_pov": false,
3405 "field_msb": 7,
3406 "phv_msb": 15,
3407 "is_compiler_generated": false,
3408 "field_name": "tcp_srcPort",
3409 "field_width": 2,
3410 "field_lsb": 0
3411 },
3412 {
3413 "word_bit_width": 16,
3414 "position_offset": 33,
3415 "phv_lsb": 0,
3416 "is_pov": false,
3417 "field_msb": 15,
3418 "phv_msb": 7,
3419 "is_compiler_generated": false,
3420 "field_name": "tcp_dstPort",
3421 "field_width": 2,
3422 "field_lsb": 8
3423 }
3424 ]
3425 },
3426 {
3427 "phv_number": 133,
3428 "records": [
3429 {
3430 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003431 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003432 "phv_lsb": 8,
3433 "is_pov": false,
3434 "field_msb": 7,
3435 "phv_msb": 15,
3436 "is_compiler_generated": false,
3437 "field_name": "ethernet_dstAddr",
3438 "field_width": 6,
3439 "field_lsb": 0
3440 },
3441 {
3442 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07003443 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003444 "phv_lsb": 0,
3445 "is_pov": false,
3446 "field_msb": 47,
3447 "phv_msb": 7,
3448 "is_compiler_generated": false,
3449 "field_name": "ethernet_srcAddr",
3450 "field_width": 6,
3451 "field_lsb": 40
3452 }
3453 ]
3454 },
3455 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003456 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003457 "records": [
3458 {
3459 "word_bit_width": 16,
3460 "position_offset": 5,
3461 "phv_lsb": 0,
3462 "is_pov": false,
3463 "field_msb": 15,
3464 "phv_msb": 15,
3465 "is_compiler_generated": false,
3466 "field_name": "ethernet_etherType",
3467 "field_width": 2,
3468 "field_lsb": 0
3469 }
3470 ]
3471 },
3472 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003473 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003474 "records": [
3475 {
3476 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003477 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003478 "phv_lsb": 0,
3479 "is_pov": false,
3480 "field_msb": 15,
3481 "phv_msb": 15,
3482 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003483 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003484 "field_width": 2,
3485 "field_lsb": 0
3486 }
3487 ]
3488 },
3489 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003490 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003491 "records": [
3492 {
3493 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07003494 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003495 "phv_lsb": 0,
3496 "is_pov": false,
3497 "field_msb": 15,
3498 "phv_msb": 15,
3499 "is_compiler_generated": false,
3500 "field_name": "ecmp_metadata_selector",
3501 "field_width": 2,
3502 "field_lsb": 0
3503 }
3504 ]
3505 },
3506 {
3507 "phv_number": 256,
3508 "records": [
3509 {
3510 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003511 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003512 "phv_lsb": 24,
3513 "is_pov": false,
3514 "field_msb": 7,
3515 "phv_msb": 31,
3516 "is_compiler_generated": false,
3517 "field_name": "ipv4_identification",
3518 "field_width": 2,
3519 "field_lsb": 0
3520 },
3521 {
3522 "word_bit_width": 32,
3523 "position_offset": 7,
3524 "phv_lsb": 21,
3525 "is_pov": false,
3526 "field_msb": 2,
3527 "phv_msb": 23,
3528 "is_compiler_generated": false,
3529 "field_name": "ipv4_flags",
3530 "field_width": 1,
3531 "field_lsb": 0
3532 },
3533 {
3534 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003535 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003536 "phv_lsb": 8,
3537 "is_pov": false,
3538 "field_msb": 12,
3539 "phv_msb": 20,
3540 "is_compiler_generated": false,
3541 "field_name": "ipv4_fragOffset",
3542 "field_width": 2,
3543 "field_lsb": 0
3544 },
3545 {
3546 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003547 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003548 "phv_lsb": 0,
3549 "is_pov": false,
3550 "field_msb": 7,
3551 "phv_msb": 7,
3552 "is_compiler_generated": false,
3553 "field_name": "ipv4_ttl",
3554 "field_width": 1,
3555 "field_lsb": 0
3556 }
3557 ]
3558 },
3559 {
3560 "phv_number": 257,
3561 "records": [
3562 {
3563 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003564 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003565 "phv_lsb": 28,
3566 "is_pov": false,
3567 "field_msb": 3,
3568 "phv_msb": 31,
3569 "is_compiler_generated": false,
3570 "field_name": "tcp_dataOffset",
3571 "field_width": 1,
3572 "field_lsb": 0
3573 },
3574 {
3575 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003576 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003577 "phv_lsb": 25,
3578 "is_pov": false,
3579 "field_msb": 2,
3580 "phv_msb": 27,
3581 "is_compiler_generated": false,
3582 "field_name": "tcp_res",
3583 "field_width": 1,
3584 "field_lsb": 0
3585 },
3586 {
3587 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003588 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003589 "phv_lsb": 22,
3590 "is_pov": false,
3591 "field_msb": 2,
3592 "phv_msb": 24,
3593 "is_compiler_generated": false,
3594 "field_name": "tcp_ecn",
3595 "field_width": 1,
3596 "field_lsb": 0
3597 },
3598 {
3599 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003600 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003601 "phv_lsb": 16,
3602 "is_pov": false,
3603 "field_msb": 5,
3604 "phv_msb": 21,
3605 "is_compiler_generated": false,
3606 "field_name": "tcp_ctrl",
3607 "field_width": 1,
3608 "field_lsb": 0
3609 },
3610 {
3611 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003612 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003613 "phv_lsb": 0,
3614 "is_pov": false,
3615 "field_msb": 15,
3616 "phv_msb": 15,
3617 "is_compiler_generated": false,
3618 "field_name": "tcp_window",
3619 "field_width": 2,
3620 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +02003621 },
3622 {
3623 "word_bit_width": 32,
3624 "position_offset": 17,
3625 "phv_lsb": 16,
3626 "is_pov": false,
3627 "field_msb": 15,
3628 "phv_msb": 31,
3629 "is_compiler_generated": false,
3630 "field_name": "udp_length_",
3631 "field_width": 2,
3632 "field_lsb": 0
3633 },
3634 {
3635 "word_bit_width": 32,
3636 "position_offset": 68,
3637 "phv_lsb": 0,
3638 "is_pov": false,
3639 "field_msb": 15,
3640 "phv_msb": 15,
3641 "is_compiler_generated": false,
3642 "field_name": "udp_checksum",
3643 "field_width": 2,
3644 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003645 }
3646 ]
3647 },
3648 {
Brian O'Connora6862e02017-09-08 01:17:39 -07003649 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003650 "records": [
3651 {
3652 "word_bit_width": 32,
3653 "position_offset": 2,
3654 "phv_lsb": 16,
3655 "is_pov": false,
3656 "field_msb": 15,
3657 "phv_msb": 31,
3658 "is_compiler_generated": false,
3659 "field_name": "tcp_checksum",
3660 "field_width": 2,
3661 "field_lsb": 0
3662 },
3663 {
3664 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07003665 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003666 "phv_lsb": 0,
3667 "is_pov": false,
3668 "field_msb": 15,
3669 "phv_msb": 15,
3670 "is_compiler_generated": false,
3671 "field_name": "tcp_urgentPtr",
3672 "field_width": 2,
3673 "field_lsb": 0
3674 }
3675 ]
3676 },
3677 {
Brian O'Connora6862e02017-09-08 01:17:39 -07003678 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003679 "records": [
3680 {
3681 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07003682 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02003683 "phv_lsb": 4,
3684 "is_pov": false,
3685 "field_msb": 3,
3686 "phv_msb": 7,
3687 "is_compiler_generated": false,
3688 "field_name": "ipv4_version",
3689 "field_width": 1,
3690 "field_lsb": 0
3691 },
3692 {
3693 "word_bit_width": 8,
3694 "position_offset": 40,
3695 "phv_lsb": 0,
3696 "is_pov": false,
3697 "field_msb": 3,
3698 "phv_msb": 3,
3699 "is_compiler_generated": false,
3700 "field_name": "ipv4_ihl",
3701 "field_width": 1,
3702 "field_lsb": 0
3703 }
3704 ]
3705 },
3706 {
Brian O'Connora6862e02017-09-08 01:17:39 -07003707 "phv_number": 289,
3708 "records": [
3709 {
3710 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02003711 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -07003712 "phv_lsb": 0,
3713 "is_pov": false,
3714 "field_msb": 7,
3715 "phv_msb": 7,
3716 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02003717 "field_name": "tcp_seqNo",
3718 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07003719 "field_lsb": 0
3720 },
3721 {
3722 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02003723 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -07003724 "phv_lsb": 0,
3725 "is_pov": false,
3726 "field_msb": 15,
3727 "phv_msb": 7,
3728 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02003729 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -07003730 "field_width": 2,
3731 "field_lsb": 8
3732 }
3733 ]
3734 },
3735 {
Brian O'Connora6862e02017-09-08 01:17:39 -07003736 "phv_number": 320,
3737 "records": [
3738 {
3739 "word_bit_width": 16,
3740 "position_offset": 4,
3741 "phv_lsb": 8,
3742 "is_pov": false,
3743 "field_msb": 7,
3744 "phv_msb": 15,
3745 "is_compiler_generated": false,
3746 "field_name": "ipv4_diffserv",
3747 "field_width": 1,
3748 "field_lsb": 0
3749 },
3750 {
3751 "word_bit_width": 16,
3752 "position_offset": 63,
3753 "phv_lsb": 0,
3754 "is_pov": false,
3755 "field_msb": 15,
3756 "phv_msb": 7,
3757 "is_compiler_generated": false,
3758 "field_name": "ipv4_totalLen",
3759 "field_width": 2,
3760 "field_lsb": 8
3761 }
3762 ]
3763 },
3764 {
3765 "phv_number": 321,
3766 "records": [
3767 {
3768 "word_bit_width": 16,
3769 "position_offset": 63,
3770 "phv_lsb": 8,
3771 "is_pov": false,
3772 "field_msb": 7,
3773 "phv_msb": 15,
3774 "is_compiler_generated": false,
3775 "field_name": "ipv4_totalLen",
3776 "field_width": 2,
3777 "field_lsb": 0
3778 },
3779 {
3780 "word_bit_width": 16,
3781 "position_offset": 49,
3782 "phv_lsb": 0,
3783 "is_pov": false,
3784 "field_msb": 15,
3785 "phv_msb": 7,
3786 "is_compiler_generated": false,
3787 "field_name": "ipv4_identification",
3788 "field_width": 2,
3789 "field_lsb": 8
3790 }
3791 ]
3792 },
3793 {
3794 "phv_number": 322,
3795 "records": [
3796 {
3797 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003798 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07003799 "phv_lsb": 0,
3800 "is_pov": false,
3801 "field_msb": 31,
3802 "phv_msb": 15,
3803 "is_compiler_generated": false,
3804 "field_name": "tcp_ackNo",
3805 "field_width": 4,
3806 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +02003807 },
3808 {
3809 "word_bit_width": 16,
3810 "position_offset": 55,
3811 "phv_lsb": 0,
3812 "is_pov": false,
3813 "field_msb": 15,
3814 "phv_msb": 15,
3815 "is_compiler_generated": false,
3816 "field_name": "udp_dstPort",
3817 "field_width": 2,
3818 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07003819 }
3820 ]
3821 },
3822 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003823 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -07003824 "records": [
3825 {
3826 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02003827 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07003828 "phv_lsb": 0,
3829 "is_pov": false,
3830 "field_msb": 15,
3831 "phv_msb": 15,
3832 "is_compiler_generated": false,
3833 "field_name": "tcp_ackNo",
3834 "field_width": 4,
3835 "field_lsb": 0
3836 }
3837 ]
3838 }
3839 ],
3840 "egress": [
3841 {
3842 "phv_number": 80,
3843 "records": [
3844 {
3845 "word_bit_width": 8,
3846 "position_offset": 7,
3847 "phv_lsb": 0,
3848 "is_pov": false,
3849 "field_msb": 2,
3850 "phv_msb": 2,
3851 "is_compiler_generated": false,
3852 "field_name": "eg_intr_md_egress_cos",
3853 "field_width": 1,
3854 "field_lsb": 0
3855 }
3856 ]
3857 },
3858 {
3859 "phv_number": 81,
3860 "records": [
3861 {
3862 "word_bit_width": 8,
3863 "position_offset": 0,
3864 "phv_lsb": 0,
3865 "is_pov": true,
3866 "pov_headers": [
3867 {
3868 "bit_index": 0,
3869 "position_offset": 73,
3870 "header_name": "packet_in_hdr",
3871 "hidden": false
3872 },
3873 {
3874 "bit_index": 1,
3875 "position_offset": 74,
3876 "header_name": "packet_out_hdr",
3877 "hidden": false
3878 },
3879 {
3880 "bit_index": 2,
3881 "position_offset": 75,
3882 "header_name": "ethernet",
3883 "hidden": false
3884 },
3885 {
3886 "bit_index": 3,
3887 "position_offset": 76,
3888 "header_name": "ipv4",
3889 "hidden": false
3890 },
3891 {
3892 "bit_index": 4,
3893 "position_offset": 77,
3894 "header_name": "tcp",
3895 "hidden": false
3896 },
3897 {
3898 "bit_index": 5,
3899 "position_offset": 78,
3900 "header_name": "udp",
3901 "hidden": false
3902 }
3903 ],
3904 "field_msb": 7,
3905 "phv_msb": 7,
3906 "is_compiler_generated": false,
3907 "field_name": "POV",
3908 "field_width": 0,
3909 "field_lsb": 0
3910 }
3911 ]
3912 },
3913 {
3914 "phv_number": 144,
3915 "records": [
3916 {
3917 "word_bit_width": 16,
3918 "position_offset": 61,
3919 "phv_lsb": 0,
3920 "is_pov": false,
3921 "field_msb": 8,
3922 "phv_msb": 8,
3923 "is_compiler_generated": false,
3924 "field_name": "eg_intr_md_egress_port",
3925 "field_width": 2,
3926 "field_lsb": 0
3927 }
3928 ]
3929 },
3930 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003931 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -07003932 "records": [
3933 {
3934 "word_bit_width": 32,
3935 "position_offset": 47,
3936 "phv_lsb": 24,
3937 "is_pov": false,
3938 "field_msb": 7,
3939 "phv_msb": 31,
3940 "is_compiler_generated": false,
3941 "field_name": "ipv4_ttl",
3942 "field_width": 1,
3943 "field_lsb": 0
3944 },
3945 {
3946 "word_bit_width": 32,
3947 "position_offset": 18,
3948 "phv_lsb": 16,
3949 "is_pov": false,
3950 "field_msb": 7,
3951 "phv_msb": 23,
3952 "is_compiler_generated": false,
3953 "field_name": "ipv4_protocol",
3954 "field_width": 1,
3955 "field_lsb": 0
3956 },
3957 {
3958 "word_bit_width": 32,
3959 "position_offset": 9,
3960 "phv_lsb": 0,
3961 "is_pov": false,
3962 "field_msb": 15,
3963 "phv_msb": 15,
3964 "is_compiler_generated": false,
3965 "field_name": "ipv4_hdrChecksum",
3966 "field_width": 2,
3967 "field_lsb": 0
3968 }
3969 ]
3970 },
3971 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003972 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -07003973 "records": [
3974 {
3975 "word_bit_width": 32,
3976 "position_offset": 12,
3977 "phv_lsb": 0,
3978 "is_pov": false,
3979 "field_msb": 31,
3980 "phv_msb": 31,
3981 "is_compiler_generated": false,
3982 "field_name": "ipv4_srcAddr",
3983 "field_width": 4,
3984 "field_lsb": 0
3985 }
3986 ]
3987 },
3988 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02003989 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -07003990 "records": [
3991 {
3992 "word_bit_width": 32,
3993 "position_offset": 50,
3994 "phv_lsb": 0,
3995 "is_pov": false,
3996 "field_msb": 31,
3997 "phv_msb": 31,
3998 "is_compiler_generated": false,
3999 "field_name": "ipv4_dstAddr",
4000 "field_width": 4,
4001 "field_lsb": 0
4002 }
4003 ]
4004 },
4005 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004006 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -07004007 "records": [
4008 {
4009 "word_bit_width": 32,
4010 "position_offset": 25,
4011 "phv_lsb": 0,
4012 "is_pov": false,
4013 "field_msb": 31,
4014 "phv_msb": 31,
4015 "is_compiler_generated": false,
4016 "field_name": "tcp_ackNo",
4017 "field_width": 4,
4018 "field_lsb": 0
4019 },
4020 {
4021 "word_bit_width": 32,
4022 "position_offset": 16,
4023 "phv_lsb": 16,
4024 "is_pov": false,
4025 "field_msb": 15,
4026 "phv_msb": 31,
4027 "is_compiler_generated": false,
4028 "field_name": "udp_length_",
4029 "field_width": 2,
4030 "field_lsb": 0
4031 },
4032 {
4033 "word_bit_width": 32,
4034 "position_offset": 59,
4035 "phv_lsb": 0,
4036 "is_pov": false,
4037 "field_msb": 15,
4038 "phv_msb": 15,
4039 "is_compiler_generated": false,
4040 "field_name": "udp_checksum",
4041 "field_width": 2,
4042 "field_lsb": 0
4043 }
4044 ]
4045 },
4046 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004047 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -07004048 "records": [
4049 {
4050 "word_bit_width": 32,
4051 "position_offset": 38,
4052 "phv_lsb": 28,
4053 "is_pov": false,
4054 "field_msb": 3,
4055 "phv_msb": 31,
4056 "is_compiler_generated": false,
4057 "field_name": "tcp_dataOffset",
4058 "field_width": 1,
4059 "field_lsb": 0
4060 },
4061 {
4062 "word_bit_width": 32,
4063 "position_offset": 58,
4064 "phv_lsb": 25,
4065 "is_pov": false,
4066 "field_msb": 2,
4067 "phv_msb": 27,
4068 "is_compiler_generated": false,
4069 "field_name": "tcp_res",
4070 "field_width": 1,
4071 "field_lsb": 0
4072 },
4073 {
4074 "word_bit_width": 32,
4075 "position_offset": 11,
4076 "phv_lsb": 22,
4077 "is_pov": false,
4078 "field_msb": 2,
4079 "phv_msb": 24,
4080 "is_compiler_generated": false,
4081 "field_name": "tcp_ecn",
4082 "field_width": 1,
4083 "field_lsb": 0
4084 },
4085 {
4086 "word_bit_width": 32,
4087 "position_offset": 34,
4088 "phv_lsb": 16,
4089 "is_pov": false,
4090 "field_msb": 5,
4091 "phv_msb": 21,
4092 "is_compiler_generated": false,
4093 "field_name": "tcp_ctrl",
4094 "field_width": 1,
4095 "field_lsb": 0
4096 },
4097 {
4098 "word_bit_width": 32,
4099 "position_offset": 41,
4100 "phv_lsb": 0,
4101 "is_pov": false,
4102 "field_msb": 15,
4103 "phv_msb": 15,
4104 "is_compiler_generated": false,
4105 "field_name": "tcp_window",
4106 "field_width": 2,
4107 "field_lsb": 0
4108 }
4109 ]
4110 },
4111 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004112 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -07004113 "records": [
4114 {
4115 "word_bit_width": 32,
4116 "position_offset": 2,
4117 "phv_lsb": 16,
4118 "is_pov": false,
4119 "field_msb": 15,
4120 "phv_msb": 31,
4121 "is_compiler_generated": false,
4122 "field_name": "tcp_checksum",
4123 "field_width": 2,
4124 "field_lsb": 0
4125 },
4126 {
4127 "word_bit_width": 32,
4128 "position_offset": 45,
4129 "phv_lsb": 0,
4130 "is_pov": false,
4131 "field_msb": 15,
4132 "phv_msb": 15,
4133 "is_compiler_generated": false,
4134 "field_name": "tcp_urgentPtr",
4135 "field_width": 2,
4136 "field_lsb": 0
4137 }
4138 ]
4139 },
4140 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004141 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -07004142 "records": [
4143 {
4144 "word_bit_width": 32,
4145 "position_offset": 19,
4146 "phv_lsb": 0,
4147 "is_pov": false,
4148 "field_msb": 39,
4149 "phv_msb": 31,
4150 "is_compiler_generated": false,
4151 "field_name": "ethernet_dstAddr",
4152 "field_width": 6,
4153 "field_lsb": 8
4154 }
4155 ]
4156 },
4157 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004158 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -07004159 "records": [
4160 {
4161 "word_bit_width": 32,
4162 "position_offset": 63,
4163 "phv_lsb": 0,
4164 "is_pov": false,
4165 "field_msb": 31,
4166 "phv_msb": 31,
4167 "is_compiler_generated": false,
4168 "field_name": "ethernet_srcAddr",
4169 "field_width": 6,
4170 "field_lsb": 0
4171 }
4172 ]
4173 },
4174 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004175 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -07004176 "records": [
4177 {
4178 "word_bit_width": 8,
4179 "position_offset": 29,
4180 "phv_lsb": 4,
4181 "is_pov": false,
4182 "field_msb": 3,
4183 "phv_msb": 7,
4184 "is_compiler_generated": false,
4185 "field_name": "ipv4_version",
4186 "field_width": 1,
4187 "field_lsb": 0
4188 },
4189 {
4190 "word_bit_width": 8,
4191 "position_offset": 37,
4192 "phv_lsb": 0,
4193 "is_pov": false,
4194 "field_msb": 3,
4195 "phv_msb": 3,
4196 "is_compiler_generated": false,
4197 "field_name": "ipv4_ihl",
4198 "field_width": 1,
4199 "field_lsb": 0
4200 }
4201 ]
4202 },
4203 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004204 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004205 "records": [
4206 {
4207 "word_bit_width": 8,
4208 "position_offset": 4,
4209 "phv_lsb": 0,
4210 "is_pov": false,
4211 "field_msb": 7,
4212 "phv_msb": 7,
4213 "is_compiler_generated": false,
4214 "field_name": "ipv4_diffserv",
4215 "field_width": 1,
4216 "field_lsb": 0
4217 }
4218 ]
4219 },
4220 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004221 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004222 "records": [
4223 {
4224 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07004225 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004226 "phv_lsb": 0,
4227 "is_pov": false,
4228 "field_msb": 15,
4229 "phv_msb": 7,
4230 "is_compiler_generated": false,
4231 "field_name": "tcp_srcPort",
4232 "field_width": 2,
4233 "field_lsb": 8
4234 },
4235 {
4236 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07004237 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004238 "phv_lsb": 0,
4239 "is_pov": false,
4240 "field_msb": 15,
4241 "phv_msb": 7,
4242 "is_compiler_generated": false,
4243 "field_name": "udp_srcPort",
4244 "field_width": 2,
4245 "field_lsb": 8
4246 }
4247 ]
4248 },
4249 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004250 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004251 "records": [
4252 {
4253 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07004254 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004255 "phv_lsb": 0,
4256 "is_pov": false,
4257 "field_msb": 7,
4258 "phv_msb": 7,
4259 "is_compiler_generated": false,
4260 "field_name": "tcp_srcPort",
4261 "field_width": 2,
4262 "field_lsb": 0
4263 },
4264 {
4265 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07004266 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004267 "phv_lsb": 0,
4268 "is_pov": false,
4269 "field_msb": 7,
4270 "phv_msb": 7,
4271 "is_compiler_generated": false,
4272 "field_name": "udp_srcPort",
4273 "field_width": 2,
4274 "field_lsb": 0
4275 }
4276 ]
4277 },
4278 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004279 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004280 "records": [
4281 {
4282 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07004283 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004284 "phv_lsb": 0,
4285 "is_pov": false,
4286 "field_msb": 47,
4287 "phv_msb": 7,
4288 "is_compiler_generated": false,
4289 "field_name": "ethernet_dstAddr",
4290 "field_width": 6,
4291 "field_lsb": 40
4292 }
4293 ]
4294 },
4295 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004296 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004297 "records": [
4298 {
4299 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07004300 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004301 "phv_lsb": 0,
4302 "is_pov": false,
4303 "field_msb": 39,
4304 "phv_msb": 7,
4305 "is_compiler_generated": false,
4306 "field_name": "ethernet_srcAddr",
4307 "field_width": 6,
4308 "field_lsb": 32
4309 }
4310 ]
4311 },
4312 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004313 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004314 "records": [
4315 {
4316 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004317 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004318 "phv_lsb": 0,
4319 "is_pov": false,
4320 "field_msb": 15,
4321 "phv_msb": 15,
4322 "is_compiler_generated": false,
4323 "field_name": "ipv4_totalLen",
4324 "field_width": 2,
4325 "field_lsb": 0
4326 }
4327 ]
4328 },
4329 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004330 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004331 "records": [
4332 {
4333 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004334 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004335 "phv_lsb": 0,
4336 "is_pov": false,
4337 "field_msb": 15,
4338 "phv_msb": 15,
4339 "is_compiler_generated": false,
4340 "field_name": "ipv4_identification",
4341 "field_width": 2,
4342 "field_lsb": 0
4343 }
4344 ]
4345 },
4346 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004347 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004348 "records": [
4349 {
4350 "word_bit_width": 16,
4351 "position_offset": 8,
4352 "phv_lsb": 13,
4353 "is_pov": false,
4354 "field_msb": 2,
4355 "phv_msb": 15,
4356 "is_compiler_generated": false,
4357 "field_name": "ipv4_flags",
4358 "field_width": 1,
4359 "field_lsb": 0
4360 },
4361 {
4362 "word_bit_width": 16,
4363 "position_offset": 5,
4364 "phv_lsb": 0,
4365 "is_pov": false,
4366 "field_msb": 12,
4367 "phv_msb": 12,
4368 "is_compiler_generated": false,
4369 "field_name": "ipv4_fragOffset",
4370 "field_width": 2,
4371 "field_lsb": 0
4372 }
4373 ]
4374 },
4375 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004376 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004377 "records": [
4378 {
4379 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004380 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004381 "phv_lsb": 0,
4382 "is_pov": false,
4383 "field_msb": 15,
4384 "phv_msb": 15,
4385 "is_compiler_generated": false,
4386 "field_name": "tcp_dstPort",
4387 "field_width": 2,
4388 "field_lsb": 0
4389 },
4390 {
4391 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004392 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004393 "phv_lsb": 0,
4394 "is_pov": false,
4395 "field_msb": 15,
4396 "phv_msb": 15,
4397 "is_compiler_generated": false,
4398 "field_name": "udp_dstPort",
4399 "field_width": 2,
4400 "field_lsb": 0
4401 }
4402 ]
4403 },
4404 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004405 "phv_number": 330,
4406 "records": [
4407 {
4408 "word_bit_width": 16,
4409 "position_offset": 69,
4410 "phv_lsb": 0,
4411 "is_pov": false,
4412 "field_msb": 31,
4413 "phv_msb": 15,
4414 "is_compiler_generated": false,
4415 "field_name": "tcp_seqNo",
4416 "field_width": 4,
4417 "field_lsb": 16
4418 }
4419 ]
4420 },
4421 {
4422 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004423 "records": [
4424 {
4425 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004426 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004427 "phv_lsb": 0,
4428 "is_pov": false,
4429 "field_msb": 15,
4430 "phv_msb": 15,
4431 "is_compiler_generated": false,
4432 "field_name": "tcp_seqNo",
4433 "field_width": 4,
4434 "field_lsb": 0
4435 }
4436 ]
4437 },
4438 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004439 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004440 "records": [
4441 {
4442 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004443 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004444 "phv_lsb": 8,
4445 "is_pov": false,
4446 "field_msb": 7,
4447 "phv_msb": 15,
4448 "is_compiler_generated": false,
4449 "field_name": "ethernet_dstAddr",
4450 "field_width": 6,
4451 "field_lsb": 0
4452 },
4453 {
4454 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004455 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004456 "phv_lsb": 0,
4457 "is_pov": false,
4458 "field_msb": 47,
4459 "phv_msb": 7,
4460 "is_compiler_generated": false,
4461 "field_name": "ethernet_srcAddr",
4462 "field_width": 6,
4463 "field_lsb": 40
4464 }
4465 ]
4466 },
4467 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004468 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004469 "records": [
4470 {
4471 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004472 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004473 "phv_lsb": 0,
4474 "is_pov": false,
4475 "field_msb": 15,
4476 "phv_msb": 15,
4477 "is_compiler_generated": false,
4478 "field_name": "ethernet_etherType",
4479 "field_width": 2,
4480 "field_lsb": 0
4481 }
4482 ]
4483 },
4484 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004485 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004486 "records": [
4487 {
4488 "word_bit_width": 16,
4489 "position_offset": 0,
4490 "phv_lsb": 7,
4491 "is_pov": false,
4492 "field_msb": 8,
4493 "phv_msb": 15,
4494 "is_compiler_generated": false,
4495 "field_name": "packet_out_hdr_egress_port",
4496 "field_width": 2,
4497 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07004498 },
4499 {
4500 "word_bit_width": 16,
4501 "position_offset": 30,
4502 "phv_lsb": 7,
4503 "is_pov": false,
4504 "field_msb": 8,
4505 "phv_msb": 15,
4506 "is_compiler_generated": false,
4507 "field_name": "packet_in_hdr_ingress_port",
4508 "field_width": 2,
4509 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004510 }
4511 ]
4512 }
4513 ],
4514 "stage_number": 2
4515 },
4516 {
4517 "ingress": [
4518 {
4519 "phv_number": 0,
4520 "records": [
4521 {
4522 "word_bit_width": 32,
4523 "position_offset": 0,
4524 "phv_lsb": 0,
4525 "is_pov": true,
4526 "pov_headers": [],
4527 "field_msb": 31,
4528 "phv_msb": 31,
4529 "is_compiler_generated": false,
4530 "field_name": "POV",
4531 "field_width": 0,
4532 "field_lsb": 0
4533 }
4534 ]
4535 },
4536 {
4537 "phv_number": 1,
4538 "records": [
4539 {
4540 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07004541 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004542 "phv_lsb": 24,
4543 "is_pov": false,
4544 "field_msb": 7,
4545 "phv_msb": 31,
4546 "is_compiler_generated": false,
4547 "field_name": "ipv4_protocol",
4548 "field_width": 1,
4549 "field_lsb": 0
4550 },
4551 {
4552 "word_bit_width": 32,
4553 "position_offset": 10,
4554 "phv_lsb": 8,
4555 "is_pov": false,
4556 "field_msb": 15,
4557 "phv_msb": 23,
4558 "is_compiler_generated": false,
4559 "field_name": "ipv4_hdrChecksum",
4560 "field_width": 2,
4561 "field_lsb": 0
4562 },
4563 {
4564 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07004565 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004566 "phv_lsb": 0,
4567 "is_pov": false,
4568 "field_msb": 31,
4569 "phv_msb": 7,
4570 "is_compiler_generated": false,
4571 "field_name": "ipv4_srcAddr",
4572 "field_width": 4,
4573 "field_lsb": 24
4574 }
4575 ]
4576 },
4577 {
4578 "phv_number": 2,
4579 "records": [
4580 {
4581 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07004582 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004583 "phv_lsb": 0,
4584 "is_pov": false,
4585 "field_msb": 31,
4586 "phv_msb": 31,
4587 "is_compiler_generated": false,
4588 "field_name": "ipv4_dstAddr",
4589 "field_width": 4,
4590 "field_lsb": 0
4591 }
4592 ]
4593 },
4594 {
4595 "phv_number": 3,
4596 "records": [
4597 {
4598 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +02004599 "position_offset": 33,
4600 "phv_lsb": 24,
4601 "is_pov": false,
4602 "field_msb": 7,
4603 "phv_msb": 31,
4604 "is_compiler_generated": false,
4605 "field_name": "tcp_dstPort",
4606 "field_width": 2,
4607 "field_lsb": 0
4608 },
4609 {
4610 "word_bit_width": 32,
4611 "position_offset": 76,
4612 "phv_lsb": 0,
4613 "is_pov": false,
4614 "field_msb": 31,
4615 "phv_msb": 23,
4616 "is_compiler_generated": false,
4617 "field_name": "tcp_seqNo",
4618 "field_width": 4,
4619 "field_lsb": 8
4620 }
4621 ]
4622 },
4623 {
4624 "phv_number": 4,
4625 "records": [
4626 {
4627 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02004628 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004629 "phv_lsb": 0,
4630 "is_pov": false,
4631 "field_msb": 39,
4632 "phv_msb": 31,
4633 "is_compiler_generated": false,
4634 "field_name": "ethernet_dstAddr",
4635 "field_width": 6,
4636 "field_lsb": 8
4637 }
4638 ]
4639 },
4640 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004641 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004642 "records": [
4643 {
4644 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07004645 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004646 "phv_lsb": 0,
4647 "is_pov": false,
4648 "field_msb": 31,
4649 "phv_msb": 31,
4650 "is_compiler_generated": false,
4651 "field_name": "ethernet_srcAddr",
4652 "field_width": 6,
4653 "field_lsb": 0
4654 }
4655 ]
4656 },
4657 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004658 "phv_number": 64,
4659 "records": [
4660 {
4661 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07004662 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004663 "phv_lsb": 0,
4664 "is_pov": false,
4665 "field_msb": 23,
4666 "phv_msb": 7,
4667 "is_compiler_generated": false,
4668 "field_name": "ipv4_srcAddr",
4669 "field_width": 4,
4670 "field_lsb": 16
4671 }
4672 ]
4673 },
4674 {
Brian O'Connora6862e02017-09-08 01:17:39 -07004675 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004676 "records": [
4677 {
4678 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02004679 "position_offset": 38,
4680 "phv_lsb": 0,
4681 "is_pov": false,
4682 "field_msb": 15,
4683 "phv_msb": 7,
4684 "is_compiler_generated": false,
4685 "field_name": "tcp_srcPort",
4686 "field_width": 2,
4687 "field_lsb": 8
4688 },
4689 {
4690 "word_bit_width": 8,
4691 "position_offset": 66,
4692 "phv_lsb": 0,
4693 "is_pov": false,
4694 "field_msb": 7,
4695 "phv_msb": 7,
4696 "is_compiler_generated": false,
4697 "field_name": "udp_srcPort",
4698 "field_width": 2,
4699 "field_lsb": 0
4700 }
4701 ]
4702 },
4703 {
4704 "phv_number": 66,
4705 "records": [
4706 {
4707 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02004708 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004709 "phv_lsb": 0,
4710 "is_pov": false,
4711 "field_msb": 47,
4712 "phv_msb": 7,
4713 "is_compiler_generated": false,
4714 "field_name": "ethernet_dstAddr",
4715 "field_width": 6,
4716 "field_lsb": 40
4717 }
4718 ]
4719 },
4720 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004721 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004722 "records": [
4723 {
4724 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07004725 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004726 "phv_lsb": 0,
4727 "is_pov": false,
4728 "field_msb": 39,
4729 "phv_msb": 7,
4730 "is_compiler_generated": false,
4731 "field_name": "ethernet_srcAddr",
4732 "field_width": 6,
4733 "field_lsb": 32
4734 }
4735 ]
4736 },
4737 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004738 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004739 "records": [
4740 {
4741 "word_bit_width": 8,
4742 "position_offset": 0,
4743 "phv_lsb": 0,
4744 "is_pov": true,
4745 "pov_headers": [
4746 {
4747 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -07004748 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004749 "header_name": "packet_in_hdr",
4750 "hidden": false
4751 },
4752 {
4753 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -07004754 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004755 "header_name": "packet_out_hdr",
4756 "hidden": false
4757 },
4758 {
4759 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -07004760 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004761 "header_name": "ethernet",
4762 "hidden": false
4763 },
4764 {
4765 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -07004766 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004767 "header_name": "ipv4",
4768 "hidden": false
4769 },
4770 {
4771 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07004772 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004773 "header_name": "tcp",
4774 "hidden": false
4775 },
4776 {
4777 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -07004778 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004779 "header_name": "udp",
4780 "hidden": false
4781 }
4782 ],
4783 "field_msb": 39,
4784 "phv_msb": 7,
4785 "is_compiler_generated": false,
4786 "field_name": "POV",
4787 "field_width": 0,
4788 "field_lsb": 32
4789 }
4790 ]
4791 },
4792 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004793 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004794 "records": [
4795 {
4796 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07004797 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004798 "phv_lsb": 5,
4799 "is_pov": false,
4800 "field_msb": 2,
4801 "phv_msb": 7,
4802 "is_compiler_generated": false,
4803 "field_name": "ig_intr_md_for_tm_drop_ctl",
4804 "field_width": 1,
4805 "field_lsb": 0
4806 }
4807 ]
4808 },
4809 {
4810 "phv_number": 128,
4811 "records": [
4812 {
4813 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02004814 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004815 "phv_lsb": 15,
4816 "is_pov": false,
4817 "field_msb": 0,
4818 "phv_msb": 15,
4819 "is_compiler_generated": false,
4820 "field_name": "ig_intr_md_resubmit_flag",
4821 "field_width": 1,
4822 "field_lsb": 0
4823 },
4824 {
4825 "word_bit_width": 16,
4826 "position_offset": 8,
4827 "phv_lsb": 0,
4828 "is_pov": false,
4829 "field_msb": 8,
4830 "phv_msb": 8,
4831 "is_compiler_generated": false,
4832 "field_name": "ig_intr_md_ingress_port",
4833 "field_width": 2,
4834 "field_lsb": 0
4835 }
4836 ]
4837 },
4838 {
4839 "phv_number": 129,
4840 "records": [
4841 {
4842 "word_bit_width": 16,
4843 "position_offset": 0,
4844 "phv_lsb": 7,
4845 "is_pov": false,
4846 "field_msb": 8,
4847 "phv_msb": 15,
4848 "is_compiler_generated": false,
4849 "field_name": "packet_out_hdr_egress_port",
4850 "field_width": 2,
4851 "field_lsb": 0
4852 },
4853 {
4854 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02004855 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004856 "phv_lsb": 7,
4857 "is_pov": false,
4858 "field_msb": 8,
4859 "phv_msb": 15,
4860 "is_compiler_generated": false,
4861 "field_name": "packet_in_hdr_ingress_port",
4862 "field_width": 2,
4863 "field_lsb": 0
4864 }
4865 ]
4866 },
4867 {
4868 "phv_number": 130,
4869 "records": [
4870 {
4871 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004872 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004873 "phv_lsb": 0,
4874 "is_pov": false,
4875 "field_msb": 8,
4876 "phv_msb": 8,
4877 "is_compiler_generated": false,
4878 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
4879 "field_width": 2,
4880 "field_lsb": 0
4881 }
4882 ]
4883 },
4884 {
4885 "phv_number": 131,
4886 "records": [
4887 {
4888 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004889 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004890 "phv_lsb": 0,
4891 "is_pov": false,
4892 "field_msb": 15,
4893 "phv_msb": 15,
4894 "is_compiler_generated": false,
4895 "field_name": "ipv4_srcAddr",
4896 "field_width": 4,
4897 "field_lsb": 0
4898 }
4899 ]
4900 },
4901 {
4902 "phv_number": 132,
4903 "records": [
4904 {
4905 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +02004906 "position_offset": 38,
4907 "phv_lsb": 8,
4908 "is_pov": false,
4909 "field_msb": 7,
4910 "phv_msb": 15,
4911 "is_compiler_generated": false,
4912 "field_name": "tcp_srcPort",
4913 "field_width": 2,
4914 "field_lsb": 0
4915 },
4916 {
4917 "word_bit_width": 16,
4918 "position_offset": 33,
4919 "phv_lsb": 0,
4920 "is_pov": false,
4921 "field_msb": 15,
4922 "phv_msb": 7,
4923 "is_compiler_generated": false,
4924 "field_name": "tcp_dstPort",
4925 "field_width": 2,
4926 "field_lsb": 8
4927 }
4928 ]
4929 },
4930 {
4931 "phv_number": 133,
4932 "records": [
4933 {
4934 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02004935 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004936 "phv_lsb": 8,
4937 "is_pov": false,
4938 "field_msb": 7,
4939 "phv_msb": 15,
4940 "is_compiler_generated": false,
4941 "field_name": "ethernet_dstAddr",
4942 "field_width": 6,
4943 "field_lsb": 0
4944 },
4945 {
4946 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004947 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004948 "phv_lsb": 0,
4949 "is_pov": false,
4950 "field_msb": 47,
4951 "phv_msb": 7,
4952 "is_compiler_generated": false,
4953 "field_name": "ethernet_srcAddr",
4954 "field_width": 6,
4955 "field_lsb": 40
4956 }
4957 ]
4958 },
4959 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004960 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004961 "records": [
4962 {
4963 "word_bit_width": 16,
4964 "position_offset": 5,
4965 "phv_lsb": 0,
4966 "is_pov": false,
4967 "field_msb": 15,
4968 "phv_msb": 15,
4969 "is_compiler_generated": false,
4970 "field_name": "ethernet_etherType",
4971 "field_width": 2,
4972 "field_lsb": 0
4973 }
4974 ]
4975 },
4976 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004977 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004978 "records": [
4979 {
4980 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02004981 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004982 "phv_lsb": 0,
4983 "is_pov": false,
4984 "field_msb": 15,
4985 "phv_msb": 15,
4986 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02004987 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004988 "field_width": 2,
4989 "field_lsb": 0
4990 }
4991 ]
4992 },
4993 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02004994 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004995 "records": [
4996 {
4997 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07004998 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02004999 "phv_lsb": 0,
5000 "is_pov": false,
5001 "field_msb": 15,
5002 "phv_msb": 15,
5003 "is_compiler_generated": false,
5004 "field_name": "ecmp_metadata_selector",
5005 "field_width": 2,
5006 "field_lsb": 0
5007 }
5008 ]
5009 },
5010 {
5011 "phv_number": 256,
5012 "records": [
5013 {
5014 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07005015 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005016 "phv_lsb": 24,
5017 "is_pov": false,
5018 "field_msb": 7,
5019 "phv_msb": 31,
5020 "is_compiler_generated": false,
5021 "field_name": "ipv4_identification",
5022 "field_width": 2,
5023 "field_lsb": 0
5024 },
5025 {
5026 "word_bit_width": 32,
5027 "position_offset": 7,
5028 "phv_lsb": 21,
5029 "is_pov": false,
5030 "field_msb": 2,
5031 "phv_msb": 23,
5032 "is_compiler_generated": false,
5033 "field_name": "ipv4_flags",
5034 "field_width": 1,
5035 "field_lsb": 0
5036 },
5037 {
5038 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07005039 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005040 "phv_lsb": 8,
5041 "is_pov": false,
5042 "field_msb": 12,
5043 "phv_msb": 20,
5044 "is_compiler_generated": false,
5045 "field_name": "ipv4_fragOffset",
5046 "field_width": 2,
5047 "field_lsb": 0
5048 },
5049 {
5050 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07005051 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005052 "phv_lsb": 0,
5053 "is_pov": false,
5054 "field_msb": 7,
5055 "phv_msb": 7,
5056 "is_compiler_generated": false,
5057 "field_name": "ipv4_ttl",
5058 "field_width": 1,
5059 "field_lsb": 0
5060 }
5061 ]
5062 },
5063 {
5064 "phv_number": 257,
5065 "records": [
5066 {
5067 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07005068 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005069 "phv_lsb": 28,
5070 "is_pov": false,
5071 "field_msb": 3,
5072 "phv_msb": 31,
5073 "is_compiler_generated": false,
5074 "field_name": "tcp_dataOffset",
5075 "field_width": 1,
5076 "field_lsb": 0
5077 },
5078 {
5079 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07005080 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005081 "phv_lsb": 25,
5082 "is_pov": false,
5083 "field_msb": 2,
5084 "phv_msb": 27,
5085 "is_compiler_generated": false,
5086 "field_name": "tcp_res",
5087 "field_width": 1,
5088 "field_lsb": 0
5089 },
5090 {
5091 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07005092 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005093 "phv_lsb": 22,
5094 "is_pov": false,
5095 "field_msb": 2,
5096 "phv_msb": 24,
5097 "is_compiler_generated": false,
5098 "field_name": "tcp_ecn",
5099 "field_width": 1,
5100 "field_lsb": 0
5101 },
5102 {
5103 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02005104 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005105 "phv_lsb": 16,
5106 "is_pov": false,
5107 "field_msb": 5,
5108 "phv_msb": 21,
5109 "is_compiler_generated": false,
5110 "field_name": "tcp_ctrl",
5111 "field_width": 1,
5112 "field_lsb": 0
5113 },
5114 {
5115 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07005116 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005117 "phv_lsb": 0,
5118 "is_pov": false,
5119 "field_msb": 15,
5120 "phv_msb": 15,
5121 "is_compiler_generated": false,
5122 "field_name": "tcp_window",
5123 "field_width": 2,
5124 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +02005125 },
5126 {
5127 "word_bit_width": 32,
5128 "position_offset": 17,
5129 "phv_lsb": 16,
5130 "is_pov": false,
5131 "field_msb": 15,
5132 "phv_msb": 31,
5133 "is_compiler_generated": false,
5134 "field_name": "udp_length_",
5135 "field_width": 2,
5136 "field_lsb": 0
5137 },
5138 {
5139 "word_bit_width": 32,
5140 "position_offset": 68,
5141 "phv_lsb": 0,
5142 "is_pov": false,
5143 "field_msb": 15,
5144 "phv_msb": 15,
5145 "is_compiler_generated": false,
5146 "field_name": "udp_checksum",
5147 "field_width": 2,
5148 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005149 }
5150 ]
5151 },
5152 {
Brian O'Connora6862e02017-09-08 01:17:39 -07005153 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005154 "records": [
5155 {
5156 "word_bit_width": 32,
5157 "position_offset": 2,
5158 "phv_lsb": 16,
5159 "is_pov": false,
5160 "field_msb": 15,
5161 "phv_msb": 31,
5162 "is_compiler_generated": false,
5163 "field_name": "tcp_checksum",
5164 "field_width": 2,
5165 "field_lsb": 0
5166 },
5167 {
5168 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07005169 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005170 "phv_lsb": 0,
5171 "is_pov": false,
5172 "field_msb": 15,
5173 "phv_msb": 15,
5174 "is_compiler_generated": false,
5175 "field_name": "tcp_urgentPtr",
5176 "field_width": 2,
5177 "field_lsb": 0
5178 }
5179 ]
5180 },
5181 {
Brian O'Connora6862e02017-09-08 01:17:39 -07005182 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005183 "records": [
5184 {
5185 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07005186 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005187 "phv_lsb": 4,
5188 "is_pov": false,
5189 "field_msb": 3,
5190 "phv_msb": 7,
5191 "is_compiler_generated": false,
5192 "field_name": "ipv4_version",
5193 "field_width": 1,
5194 "field_lsb": 0
5195 },
5196 {
5197 "word_bit_width": 8,
5198 "position_offset": 40,
5199 "phv_lsb": 0,
5200 "is_pov": false,
5201 "field_msb": 3,
5202 "phv_msb": 3,
5203 "is_compiler_generated": false,
5204 "field_name": "ipv4_ihl",
5205 "field_width": 1,
5206 "field_lsb": 0
5207 }
5208 ]
5209 },
5210 {
Brian O'Connora6862e02017-09-08 01:17:39 -07005211 "phv_number": 289,
5212 "records": [
5213 {
5214 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02005215 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -07005216 "phv_lsb": 0,
5217 "is_pov": false,
5218 "field_msb": 7,
5219 "phv_msb": 7,
5220 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02005221 "field_name": "tcp_seqNo",
5222 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07005223 "field_lsb": 0
5224 },
5225 {
5226 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02005227 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -07005228 "phv_lsb": 0,
5229 "is_pov": false,
5230 "field_msb": 15,
5231 "phv_msb": 7,
5232 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02005233 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -07005234 "field_width": 2,
5235 "field_lsb": 8
5236 }
5237 ]
5238 },
5239 {
Brian O'Connora6862e02017-09-08 01:17:39 -07005240 "phv_number": 320,
5241 "records": [
5242 {
5243 "word_bit_width": 16,
5244 "position_offset": 4,
5245 "phv_lsb": 8,
5246 "is_pov": false,
5247 "field_msb": 7,
5248 "phv_msb": 15,
5249 "is_compiler_generated": false,
5250 "field_name": "ipv4_diffserv",
5251 "field_width": 1,
5252 "field_lsb": 0
5253 },
5254 {
5255 "word_bit_width": 16,
5256 "position_offset": 63,
5257 "phv_lsb": 0,
5258 "is_pov": false,
5259 "field_msb": 15,
5260 "phv_msb": 7,
5261 "is_compiler_generated": false,
5262 "field_name": "ipv4_totalLen",
5263 "field_width": 2,
5264 "field_lsb": 8
5265 }
5266 ]
5267 },
5268 {
5269 "phv_number": 321,
5270 "records": [
5271 {
5272 "word_bit_width": 16,
5273 "position_offset": 63,
5274 "phv_lsb": 8,
5275 "is_pov": false,
5276 "field_msb": 7,
5277 "phv_msb": 15,
5278 "is_compiler_generated": false,
5279 "field_name": "ipv4_totalLen",
5280 "field_width": 2,
5281 "field_lsb": 0
5282 },
5283 {
5284 "word_bit_width": 16,
5285 "position_offset": 49,
5286 "phv_lsb": 0,
5287 "is_pov": false,
5288 "field_msb": 15,
5289 "phv_msb": 7,
5290 "is_compiler_generated": false,
5291 "field_name": "ipv4_identification",
5292 "field_width": 2,
5293 "field_lsb": 8
5294 }
5295 ]
5296 },
5297 {
5298 "phv_number": 322,
5299 "records": [
5300 {
5301 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02005302 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07005303 "phv_lsb": 0,
5304 "is_pov": false,
5305 "field_msb": 31,
5306 "phv_msb": 15,
5307 "is_compiler_generated": false,
5308 "field_name": "tcp_ackNo",
5309 "field_width": 4,
5310 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +02005311 },
5312 {
5313 "word_bit_width": 16,
5314 "position_offset": 55,
5315 "phv_lsb": 0,
5316 "is_pov": false,
5317 "field_msb": 15,
5318 "phv_msb": 15,
5319 "is_compiler_generated": false,
5320 "field_name": "udp_dstPort",
5321 "field_width": 2,
5322 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07005323 }
5324 ]
5325 },
5326 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005327 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -07005328 "records": [
5329 {
5330 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02005331 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07005332 "phv_lsb": 0,
5333 "is_pov": false,
5334 "field_msb": 15,
5335 "phv_msb": 15,
5336 "is_compiler_generated": false,
5337 "field_name": "tcp_ackNo",
5338 "field_width": 4,
5339 "field_lsb": 0
5340 }
5341 ]
5342 }
5343 ],
5344 "egress": [
5345 {
5346 "phv_number": 80,
5347 "records": [
5348 {
5349 "word_bit_width": 8,
5350 "position_offset": 7,
5351 "phv_lsb": 0,
5352 "is_pov": false,
5353 "field_msb": 2,
5354 "phv_msb": 2,
5355 "is_compiler_generated": false,
5356 "field_name": "eg_intr_md_egress_cos",
5357 "field_width": 1,
5358 "field_lsb": 0
5359 }
5360 ]
5361 },
5362 {
5363 "phv_number": 81,
5364 "records": [
5365 {
5366 "word_bit_width": 8,
5367 "position_offset": 0,
5368 "phv_lsb": 0,
5369 "is_pov": true,
5370 "pov_headers": [
5371 {
5372 "bit_index": 0,
5373 "position_offset": 73,
5374 "header_name": "packet_in_hdr",
5375 "hidden": false
5376 },
5377 {
5378 "bit_index": 1,
5379 "position_offset": 74,
5380 "header_name": "packet_out_hdr",
5381 "hidden": false
5382 },
5383 {
5384 "bit_index": 2,
5385 "position_offset": 75,
5386 "header_name": "ethernet",
5387 "hidden": false
5388 },
5389 {
5390 "bit_index": 3,
5391 "position_offset": 76,
5392 "header_name": "ipv4",
5393 "hidden": false
5394 },
5395 {
5396 "bit_index": 4,
5397 "position_offset": 77,
5398 "header_name": "tcp",
5399 "hidden": false
5400 },
5401 {
5402 "bit_index": 5,
5403 "position_offset": 78,
5404 "header_name": "udp",
5405 "hidden": false
5406 }
5407 ],
5408 "field_msb": 7,
5409 "phv_msb": 7,
5410 "is_compiler_generated": false,
5411 "field_name": "POV",
5412 "field_width": 0,
5413 "field_lsb": 0
5414 }
5415 ]
5416 },
5417 {
5418 "phv_number": 144,
5419 "records": [
5420 {
5421 "word_bit_width": 16,
5422 "position_offset": 61,
5423 "phv_lsb": 0,
5424 "is_pov": false,
5425 "field_msb": 8,
5426 "phv_msb": 8,
5427 "is_compiler_generated": false,
5428 "field_name": "eg_intr_md_egress_port",
5429 "field_width": 2,
5430 "field_lsb": 0
5431 }
5432 ]
5433 },
5434 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005435 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -07005436 "records": [
5437 {
5438 "word_bit_width": 32,
5439 "position_offset": 47,
5440 "phv_lsb": 24,
5441 "is_pov": false,
5442 "field_msb": 7,
5443 "phv_msb": 31,
5444 "is_compiler_generated": false,
5445 "field_name": "ipv4_ttl",
5446 "field_width": 1,
5447 "field_lsb": 0
5448 },
5449 {
5450 "word_bit_width": 32,
5451 "position_offset": 18,
5452 "phv_lsb": 16,
5453 "is_pov": false,
5454 "field_msb": 7,
5455 "phv_msb": 23,
5456 "is_compiler_generated": false,
5457 "field_name": "ipv4_protocol",
5458 "field_width": 1,
5459 "field_lsb": 0
5460 },
5461 {
5462 "word_bit_width": 32,
5463 "position_offset": 9,
5464 "phv_lsb": 0,
5465 "is_pov": false,
5466 "field_msb": 15,
5467 "phv_msb": 15,
5468 "is_compiler_generated": false,
5469 "field_name": "ipv4_hdrChecksum",
5470 "field_width": 2,
5471 "field_lsb": 0
5472 }
5473 ]
5474 },
5475 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005476 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -07005477 "records": [
5478 {
5479 "word_bit_width": 32,
5480 "position_offset": 12,
5481 "phv_lsb": 0,
5482 "is_pov": false,
5483 "field_msb": 31,
5484 "phv_msb": 31,
5485 "is_compiler_generated": false,
5486 "field_name": "ipv4_srcAddr",
5487 "field_width": 4,
5488 "field_lsb": 0
5489 }
5490 ]
5491 },
5492 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005493 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -07005494 "records": [
5495 {
5496 "word_bit_width": 32,
5497 "position_offset": 50,
5498 "phv_lsb": 0,
5499 "is_pov": false,
5500 "field_msb": 31,
5501 "phv_msb": 31,
5502 "is_compiler_generated": false,
5503 "field_name": "ipv4_dstAddr",
5504 "field_width": 4,
5505 "field_lsb": 0
5506 }
5507 ]
5508 },
5509 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005510 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -07005511 "records": [
5512 {
5513 "word_bit_width": 32,
5514 "position_offset": 25,
5515 "phv_lsb": 0,
5516 "is_pov": false,
5517 "field_msb": 31,
5518 "phv_msb": 31,
5519 "is_compiler_generated": false,
5520 "field_name": "tcp_ackNo",
5521 "field_width": 4,
5522 "field_lsb": 0
5523 },
5524 {
5525 "word_bit_width": 32,
5526 "position_offset": 16,
5527 "phv_lsb": 16,
5528 "is_pov": false,
5529 "field_msb": 15,
5530 "phv_msb": 31,
5531 "is_compiler_generated": false,
5532 "field_name": "udp_length_",
5533 "field_width": 2,
5534 "field_lsb": 0
5535 },
5536 {
5537 "word_bit_width": 32,
5538 "position_offset": 59,
5539 "phv_lsb": 0,
5540 "is_pov": false,
5541 "field_msb": 15,
5542 "phv_msb": 15,
5543 "is_compiler_generated": false,
5544 "field_name": "udp_checksum",
5545 "field_width": 2,
5546 "field_lsb": 0
5547 }
5548 ]
5549 },
5550 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005551 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -07005552 "records": [
5553 {
5554 "word_bit_width": 32,
5555 "position_offset": 38,
5556 "phv_lsb": 28,
5557 "is_pov": false,
5558 "field_msb": 3,
5559 "phv_msb": 31,
5560 "is_compiler_generated": false,
5561 "field_name": "tcp_dataOffset",
5562 "field_width": 1,
5563 "field_lsb": 0
5564 },
5565 {
5566 "word_bit_width": 32,
5567 "position_offset": 58,
5568 "phv_lsb": 25,
5569 "is_pov": false,
5570 "field_msb": 2,
5571 "phv_msb": 27,
5572 "is_compiler_generated": false,
5573 "field_name": "tcp_res",
5574 "field_width": 1,
5575 "field_lsb": 0
5576 },
5577 {
5578 "word_bit_width": 32,
5579 "position_offset": 11,
5580 "phv_lsb": 22,
5581 "is_pov": false,
5582 "field_msb": 2,
5583 "phv_msb": 24,
5584 "is_compiler_generated": false,
5585 "field_name": "tcp_ecn",
5586 "field_width": 1,
5587 "field_lsb": 0
5588 },
5589 {
5590 "word_bit_width": 32,
5591 "position_offset": 34,
5592 "phv_lsb": 16,
5593 "is_pov": false,
5594 "field_msb": 5,
5595 "phv_msb": 21,
5596 "is_compiler_generated": false,
5597 "field_name": "tcp_ctrl",
5598 "field_width": 1,
5599 "field_lsb": 0
5600 },
5601 {
5602 "word_bit_width": 32,
5603 "position_offset": 41,
5604 "phv_lsb": 0,
5605 "is_pov": false,
5606 "field_msb": 15,
5607 "phv_msb": 15,
5608 "is_compiler_generated": false,
5609 "field_name": "tcp_window",
5610 "field_width": 2,
5611 "field_lsb": 0
5612 }
5613 ]
5614 },
5615 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005616 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -07005617 "records": [
5618 {
5619 "word_bit_width": 32,
5620 "position_offset": 2,
5621 "phv_lsb": 16,
5622 "is_pov": false,
5623 "field_msb": 15,
5624 "phv_msb": 31,
5625 "is_compiler_generated": false,
5626 "field_name": "tcp_checksum",
5627 "field_width": 2,
5628 "field_lsb": 0
5629 },
5630 {
5631 "word_bit_width": 32,
5632 "position_offset": 45,
5633 "phv_lsb": 0,
5634 "is_pov": false,
5635 "field_msb": 15,
5636 "phv_msb": 15,
5637 "is_compiler_generated": false,
5638 "field_name": "tcp_urgentPtr",
5639 "field_width": 2,
5640 "field_lsb": 0
5641 }
5642 ]
5643 },
5644 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005645 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -07005646 "records": [
5647 {
5648 "word_bit_width": 32,
5649 "position_offset": 19,
5650 "phv_lsb": 0,
5651 "is_pov": false,
5652 "field_msb": 39,
5653 "phv_msb": 31,
5654 "is_compiler_generated": false,
5655 "field_name": "ethernet_dstAddr",
5656 "field_width": 6,
5657 "field_lsb": 8
5658 }
5659 ]
5660 },
5661 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005662 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -07005663 "records": [
5664 {
5665 "word_bit_width": 32,
5666 "position_offset": 63,
5667 "phv_lsb": 0,
5668 "is_pov": false,
5669 "field_msb": 31,
5670 "phv_msb": 31,
5671 "is_compiler_generated": false,
5672 "field_name": "ethernet_srcAddr",
5673 "field_width": 6,
5674 "field_lsb": 0
5675 }
5676 ]
5677 },
5678 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005679 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -07005680 "records": [
5681 {
5682 "word_bit_width": 8,
5683 "position_offset": 29,
5684 "phv_lsb": 4,
5685 "is_pov": false,
5686 "field_msb": 3,
5687 "phv_msb": 7,
5688 "is_compiler_generated": false,
5689 "field_name": "ipv4_version",
5690 "field_width": 1,
5691 "field_lsb": 0
5692 },
5693 {
5694 "word_bit_width": 8,
5695 "position_offset": 37,
5696 "phv_lsb": 0,
5697 "is_pov": false,
5698 "field_msb": 3,
5699 "phv_msb": 3,
5700 "is_compiler_generated": false,
5701 "field_name": "ipv4_ihl",
5702 "field_width": 1,
5703 "field_lsb": 0
5704 }
5705 ]
5706 },
5707 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005708 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005709 "records": [
5710 {
5711 "word_bit_width": 8,
5712 "position_offset": 4,
5713 "phv_lsb": 0,
5714 "is_pov": false,
5715 "field_msb": 7,
5716 "phv_msb": 7,
5717 "is_compiler_generated": false,
5718 "field_name": "ipv4_diffserv",
5719 "field_width": 1,
5720 "field_lsb": 0
5721 }
5722 ]
5723 },
5724 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005725 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005726 "records": [
5727 {
5728 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07005729 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005730 "phv_lsb": 0,
5731 "is_pov": false,
5732 "field_msb": 15,
5733 "phv_msb": 7,
5734 "is_compiler_generated": false,
5735 "field_name": "tcp_srcPort",
5736 "field_width": 2,
5737 "field_lsb": 8
5738 },
5739 {
5740 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07005741 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005742 "phv_lsb": 0,
5743 "is_pov": false,
5744 "field_msb": 15,
5745 "phv_msb": 7,
5746 "is_compiler_generated": false,
5747 "field_name": "udp_srcPort",
5748 "field_width": 2,
5749 "field_lsb": 8
5750 }
5751 ]
5752 },
5753 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005754 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005755 "records": [
5756 {
5757 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07005758 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005759 "phv_lsb": 0,
5760 "is_pov": false,
5761 "field_msb": 7,
5762 "phv_msb": 7,
5763 "is_compiler_generated": false,
5764 "field_name": "tcp_srcPort",
5765 "field_width": 2,
5766 "field_lsb": 0
5767 },
5768 {
5769 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07005770 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005771 "phv_lsb": 0,
5772 "is_pov": false,
5773 "field_msb": 7,
5774 "phv_msb": 7,
5775 "is_compiler_generated": false,
5776 "field_name": "udp_srcPort",
5777 "field_width": 2,
5778 "field_lsb": 0
5779 }
5780 ]
5781 },
5782 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005783 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005784 "records": [
5785 {
5786 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07005787 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005788 "phv_lsb": 0,
5789 "is_pov": false,
5790 "field_msb": 47,
5791 "phv_msb": 7,
5792 "is_compiler_generated": false,
5793 "field_name": "ethernet_dstAddr",
5794 "field_width": 6,
5795 "field_lsb": 40
5796 }
5797 ]
5798 },
5799 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005800 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005801 "records": [
5802 {
5803 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07005804 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005805 "phv_lsb": 0,
5806 "is_pov": false,
5807 "field_msb": 39,
5808 "phv_msb": 7,
5809 "is_compiler_generated": false,
5810 "field_name": "ethernet_srcAddr",
5811 "field_width": 6,
5812 "field_lsb": 32
5813 }
5814 ]
5815 },
5816 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005817 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005818 "records": [
5819 {
5820 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07005821 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005822 "phv_lsb": 0,
5823 "is_pov": false,
5824 "field_msb": 15,
5825 "phv_msb": 15,
5826 "is_compiler_generated": false,
5827 "field_name": "ipv4_totalLen",
5828 "field_width": 2,
5829 "field_lsb": 0
5830 }
5831 ]
5832 },
5833 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005834 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005835 "records": [
5836 {
5837 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07005838 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005839 "phv_lsb": 0,
5840 "is_pov": false,
5841 "field_msb": 15,
5842 "phv_msb": 15,
5843 "is_compiler_generated": false,
5844 "field_name": "ipv4_identification",
5845 "field_width": 2,
5846 "field_lsb": 0
5847 }
5848 ]
5849 },
5850 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005851 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005852 "records": [
5853 {
5854 "word_bit_width": 16,
5855 "position_offset": 8,
5856 "phv_lsb": 13,
5857 "is_pov": false,
5858 "field_msb": 2,
5859 "phv_msb": 15,
5860 "is_compiler_generated": false,
5861 "field_name": "ipv4_flags",
5862 "field_width": 1,
5863 "field_lsb": 0
5864 },
5865 {
5866 "word_bit_width": 16,
5867 "position_offset": 5,
5868 "phv_lsb": 0,
5869 "is_pov": false,
5870 "field_msb": 12,
5871 "phv_msb": 12,
5872 "is_compiler_generated": false,
5873 "field_name": "ipv4_fragOffset",
5874 "field_width": 2,
5875 "field_lsb": 0
5876 }
5877 ]
5878 },
5879 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005880 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005881 "records": [
5882 {
5883 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07005884 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005885 "phv_lsb": 0,
5886 "is_pov": false,
5887 "field_msb": 15,
5888 "phv_msb": 15,
5889 "is_compiler_generated": false,
5890 "field_name": "tcp_dstPort",
5891 "field_width": 2,
5892 "field_lsb": 0
5893 },
5894 {
5895 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07005896 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005897 "phv_lsb": 0,
5898 "is_pov": false,
5899 "field_msb": 15,
5900 "phv_msb": 15,
5901 "is_compiler_generated": false,
5902 "field_name": "udp_dstPort",
5903 "field_width": 2,
5904 "field_lsb": 0
5905 }
5906 ]
5907 },
5908 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005909 "phv_number": 330,
5910 "records": [
5911 {
5912 "word_bit_width": 16,
5913 "position_offset": 69,
5914 "phv_lsb": 0,
5915 "is_pov": false,
5916 "field_msb": 31,
5917 "phv_msb": 15,
5918 "is_compiler_generated": false,
5919 "field_name": "tcp_seqNo",
5920 "field_width": 4,
5921 "field_lsb": 16
5922 }
5923 ]
5924 },
5925 {
5926 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005927 "records": [
5928 {
5929 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07005930 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005931 "phv_lsb": 0,
5932 "is_pov": false,
5933 "field_msb": 15,
5934 "phv_msb": 15,
5935 "is_compiler_generated": false,
5936 "field_name": "tcp_seqNo",
5937 "field_width": 4,
5938 "field_lsb": 0
5939 }
5940 ]
5941 },
5942 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005943 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005944 "records": [
5945 {
5946 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07005947 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005948 "phv_lsb": 8,
5949 "is_pov": false,
5950 "field_msb": 7,
5951 "phv_msb": 15,
5952 "is_compiler_generated": false,
5953 "field_name": "ethernet_dstAddr",
5954 "field_width": 6,
5955 "field_lsb": 0
5956 },
5957 {
5958 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07005959 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005960 "phv_lsb": 0,
5961 "is_pov": false,
5962 "field_msb": 47,
5963 "phv_msb": 7,
5964 "is_compiler_generated": false,
5965 "field_name": "ethernet_srcAddr",
5966 "field_width": 6,
5967 "field_lsb": 40
5968 }
5969 ]
5970 },
5971 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005972 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005973 "records": [
5974 {
5975 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07005976 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005977 "phv_lsb": 0,
5978 "is_pov": false,
5979 "field_msb": 15,
5980 "phv_msb": 15,
5981 "is_compiler_generated": false,
5982 "field_name": "ethernet_etherType",
5983 "field_width": 2,
5984 "field_lsb": 0
5985 }
5986 ]
5987 },
5988 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02005989 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02005990 "records": [
5991 {
5992 "word_bit_width": 16,
5993 "position_offset": 0,
5994 "phv_lsb": 7,
5995 "is_pov": false,
5996 "field_msb": 8,
5997 "phv_msb": 15,
5998 "is_compiler_generated": false,
5999 "field_name": "packet_out_hdr_egress_port",
6000 "field_width": 2,
6001 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07006002 },
6003 {
6004 "word_bit_width": 16,
6005 "position_offset": 30,
6006 "phv_lsb": 7,
6007 "is_pov": false,
6008 "field_msb": 8,
6009 "phv_msb": 15,
6010 "is_compiler_generated": false,
6011 "field_name": "packet_in_hdr_ingress_port",
6012 "field_width": 2,
6013 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006014 }
6015 ]
6016 }
6017 ],
6018 "stage_number": 3
6019 },
6020 {
6021 "ingress": [
6022 {
6023 "phv_number": 0,
6024 "records": [
6025 {
6026 "word_bit_width": 32,
6027 "position_offset": 0,
6028 "phv_lsb": 0,
6029 "is_pov": true,
6030 "pov_headers": [],
6031 "field_msb": 31,
6032 "phv_msb": 31,
6033 "is_compiler_generated": false,
6034 "field_name": "POV",
6035 "field_width": 0,
6036 "field_lsb": 0
6037 }
6038 ]
6039 },
6040 {
6041 "phv_number": 1,
6042 "records": [
6043 {
6044 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006045 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006046 "phv_lsb": 24,
6047 "is_pov": false,
6048 "field_msb": 7,
6049 "phv_msb": 31,
6050 "is_compiler_generated": false,
6051 "field_name": "ipv4_protocol",
6052 "field_width": 1,
6053 "field_lsb": 0
6054 },
6055 {
6056 "word_bit_width": 32,
6057 "position_offset": 10,
6058 "phv_lsb": 8,
6059 "is_pov": false,
6060 "field_msb": 15,
6061 "phv_msb": 23,
6062 "is_compiler_generated": false,
6063 "field_name": "ipv4_hdrChecksum",
6064 "field_width": 2,
6065 "field_lsb": 0
6066 },
6067 {
6068 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006069 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006070 "phv_lsb": 0,
6071 "is_pov": false,
6072 "field_msb": 31,
6073 "phv_msb": 7,
6074 "is_compiler_generated": false,
6075 "field_name": "ipv4_srcAddr",
6076 "field_width": 4,
6077 "field_lsb": 24
6078 }
6079 ]
6080 },
6081 {
6082 "phv_number": 2,
6083 "records": [
6084 {
6085 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006086 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006087 "phv_lsb": 0,
6088 "is_pov": false,
6089 "field_msb": 31,
6090 "phv_msb": 31,
6091 "is_compiler_generated": false,
6092 "field_name": "ipv4_dstAddr",
6093 "field_width": 4,
6094 "field_lsb": 0
6095 }
6096 ]
6097 },
6098 {
6099 "phv_number": 3,
6100 "records": [
6101 {
6102 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +02006103 "position_offset": 33,
6104 "phv_lsb": 24,
6105 "is_pov": false,
6106 "field_msb": 7,
6107 "phv_msb": 31,
6108 "is_compiler_generated": false,
6109 "field_name": "tcp_dstPort",
6110 "field_width": 2,
6111 "field_lsb": 0
6112 },
6113 {
6114 "word_bit_width": 32,
6115 "position_offset": 76,
6116 "phv_lsb": 0,
6117 "is_pov": false,
6118 "field_msb": 31,
6119 "phv_msb": 23,
6120 "is_compiler_generated": false,
6121 "field_name": "tcp_seqNo",
6122 "field_width": 4,
6123 "field_lsb": 8
6124 }
6125 ]
6126 },
6127 {
6128 "phv_number": 4,
6129 "records": [
6130 {
6131 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006132 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006133 "phv_lsb": 0,
6134 "is_pov": false,
6135 "field_msb": 39,
6136 "phv_msb": 31,
6137 "is_compiler_generated": false,
6138 "field_name": "ethernet_dstAddr",
6139 "field_width": 6,
6140 "field_lsb": 8
6141 }
6142 ]
6143 },
6144 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006145 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006146 "records": [
6147 {
6148 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006149 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006150 "phv_lsb": 0,
6151 "is_pov": false,
6152 "field_msb": 31,
6153 "phv_msb": 31,
6154 "is_compiler_generated": false,
6155 "field_name": "ethernet_srcAddr",
6156 "field_width": 6,
6157 "field_lsb": 0
6158 }
6159 ]
6160 },
6161 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006162 "phv_number": 64,
6163 "records": [
6164 {
6165 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07006166 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006167 "phv_lsb": 0,
6168 "is_pov": false,
6169 "field_msb": 23,
6170 "phv_msb": 7,
6171 "is_compiler_generated": false,
6172 "field_name": "ipv4_srcAddr",
6173 "field_width": 4,
6174 "field_lsb": 16
6175 }
6176 ]
6177 },
6178 {
Brian O'Connora6862e02017-09-08 01:17:39 -07006179 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006180 "records": [
6181 {
6182 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02006183 "position_offset": 38,
6184 "phv_lsb": 0,
6185 "is_pov": false,
6186 "field_msb": 15,
6187 "phv_msb": 7,
6188 "is_compiler_generated": false,
6189 "field_name": "tcp_srcPort",
6190 "field_width": 2,
6191 "field_lsb": 8
6192 },
6193 {
6194 "word_bit_width": 8,
6195 "position_offset": 66,
6196 "phv_lsb": 0,
6197 "is_pov": false,
6198 "field_msb": 7,
6199 "phv_msb": 7,
6200 "is_compiler_generated": false,
6201 "field_name": "udp_srcPort",
6202 "field_width": 2,
6203 "field_lsb": 0
6204 }
6205 ]
6206 },
6207 {
6208 "phv_number": 66,
6209 "records": [
6210 {
6211 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006212 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006213 "phv_lsb": 0,
6214 "is_pov": false,
6215 "field_msb": 47,
6216 "phv_msb": 7,
6217 "is_compiler_generated": false,
6218 "field_name": "ethernet_dstAddr",
6219 "field_width": 6,
6220 "field_lsb": 40
6221 }
6222 ]
6223 },
6224 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006225 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006226 "records": [
6227 {
6228 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07006229 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006230 "phv_lsb": 0,
6231 "is_pov": false,
6232 "field_msb": 39,
6233 "phv_msb": 7,
6234 "is_compiler_generated": false,
6235 "field_name": "ethernet_srcAddr",
6236 "field_width": 6,
6237 "field_lsb": 32
6238 }
6239 ]
6240 },
6241 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006242 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006243 "records": [
6244 {
6245 "word_bit_width": 8,
6246 "position_offset": 0,
6247 "phv_lsb": 0,
6248 "is_pov": true,
6249 "pov_headers": [
6250 {
6251 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -07006252 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006253 "header_name": "packet_in_hdr",
6254 "hidden": false
6255 },
6256 {
6257 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -07006258 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006259 "header_name": "packet_out_hdr",
6260 "hidden": false
6261 },
6262 {
6263 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -07006264 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006265 "header_name": "ethernet",
6266 "hidden": false
6267 },
6268 {
6269 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -07006270 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006271 "header_name": "ipv4",
6272 "hidden": false
6273 },
6274 {
6275 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07006276 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006277 "header_name": "tcp",
6278 "hidden": false
6279 },
6280 {
6281 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -07006282 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006283 "header_name": "udp",
6284 "hidden": false
6285 }
6286 ],
6287 "field_msb": 39,
6288 "phv_msb": 7,
6289 "is_compiler_generated": false,
6290 "field_name": "POV",
6291 "field_width": 0,
6292 "field_lsb": 32
6293 }
6294 ]
6295 },
6296 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006297 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006298 "records": [
6299 {
6300 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07006301 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006302 "phv_lsb": 5,
6303 "is_pov": false,
6304 "field_msb": 2,
6305 "phv_msb": 7,
6306 "is_compiler_generated": false,
6307 "field_name": "ig_intr_md_for_tm_drop_ctl",
6308 "field_width": 1,
6309 "field_lsb": 0
6310 }
6311 ]
6312 },
6313 {
6314 "phv_number": 128,
6315 "records": [
6316 {
6317 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006318 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006319 "phv_lsb": 15,
6320 "is_pov": false,
6321 "field_msb": 0,
6322 "phv_msb": 15,
6323 "is_compiler_generated": false,
6324 "field_name": "ig_intr_md_resubmit_flag",
6325 "field_width": 1,
6326 "field_lsb": 0
6327 },
6328 {
6329 "word_bit_width": 16,
6330 "position_offset": 8,
6331 "phv_lsb": 0,
6332 "is_pov": false,
6333 "field_msb": 8,
6334 "phv_msb": 8,
6335 "is_compiler_generated": false,
6336 "field_name": "ig_intr_md_ingress_port",
6337 "field_width": 2,
6338 "field_lsb": 0
6339 }
6340 ]
6341 },
6342 {
6343 "phv_number": 129,
6344 "records": [
6345 {
6346 "word_bit_width": 16,
6347 "position_offset": 0,
6348 "phv_lsb": 7,
6349 "is_pov": false,
6350 "field_msb": 8,
6351 "phv_msb": 15,
6352 "is_compiler_generated": false,
6353 "field_name": "packet_out_hdr_egress_port",
6354 "field_width": 2,
6355 "field_lsb": 0
6356 },
6357 {
6358 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006359 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006360 "phv_lsb": 7,
6361 "is_pov": false,
6362 "field_msb": 8,
6363 "phv_msb": 15,
6364 "is_compiler_generated": false,
6365 "field_name": "packet_in_hdr_ingress_port",
6366 "field_width": 2,
6367 "field_lsb": 0
6368 }
6369 ]
6370 },
6371 {
6372 "phv_number": 130,
6373 "records": [
6374 {
6375 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07006376 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006377 "phv_lsb": 0,
6378 "is_pov": false,
6379 "field_msb": 8,
6380 "phv_msb": 8,
6381 "is_compiler_generated": false,
6382 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
6383 "field_width": 2,
6384 "field_lsb": 0
6385 }
6386 ]
6387 },
6388 {
6389 "phv_number": 131,
6390 "records": [
6391 {
6392 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07006393 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006394 "phv_lsb": 0,
6395 "is_pov": false,
6396 "field_msb": 15,
6397 "phv_msb": 15,
6398 "is_compiler_generated": false,
6399 "field_name": "ipv4_srcAddr",
6400 "field_width": 4,
6401 "field_lsb": 0
6402 }
6403 ]
6404 },
6405 {
6406 "phv_number": 132,
6407 "records": [
6408 {
6409 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +02006410 "position_offset": 38,
6411 "phv_lsb": 8,
6412 "is_pov": false,
6413 "field_msb": 7,
6414 "phv_msb": 15,
6415 "is_compiler_generated": false,
6416 "field_name": "tcp_srcPort",
6417 "field_width": 2,
6418 "field_lsb": 0
6419 },
6420 {
6421 "word_bit_width": 16,
6422 "position_offset": 33,
6423 "phv_lsb": 0,
6424 "is_pov": false,
6425 "field_msb": 15,
6426 "phv_msb": 7,
6427 "is_compiler_generated": false,
6428 "field_name": "tcp_dstPort",
6429 "field_width": 2,
6430 "field_lsb": 8
6431 }
6432 ]
6433 },
6434 {
6435 "phv_number": 133,
6436 "records": [
6437 {
6438 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006439 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006440 "phv_lsb": 8,
6441 "is_pov": false,
6442 "field_msb": 7,
6443 "phv_msb": 15,
6444 "is_compiler_generated": false,
6445 "field_name": "ethernet_dstAddr",
6446 "field_width": 6,
6447 "field_lsb": 0
6448 },
6449 {
6450 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07006451 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006452 "phv_lsb": 0,
6453 "is_pov": false,
6454 "field_msb": 47,
6455 "phv_msb": 7,
6456 "is_compiler_generated": false,
6457 "field_name": "ethernet_srcAddr",
6458 "field_width": 6,
6459 "field_lsb": 40
6460 }
6461 ]
6462 },
6463 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006464 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006465 "records": [
6466 {
6467 "word_bit_width": 16,
6468 "position_offset": 5,
6469 "phv_lsb": 0,
6470 "is_pov": false,
6471 "field_msb": 15,
6472 "phv_msb": 15,
6473 "is_compiler_generated": false,
6474 "field_name": "ethernet_etherType",
6475 "field_width": 2,
6476 "field_lsb": 0
6477 }
6478 ]
6479 },
6480 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006481 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006482 "records": [
6483 {
6484 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006485 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006486 "phv_lsb": 0,
6487 "is_pov": false,
6488 "field_msb": 15,
6489 "phv_msb": 15,
6490 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006491 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006492 "field_width": 2,
6493 "field_lsb": 0
6494 }
6495 ]
6496 },
6497 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006498 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006499 "records": [
6500 {
6501 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07006502 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006503 "phv_lsb": 0,
6504 "is_pov": false,
6505 "field_msb": 15,
6506 "phv_msb": 15,
6507 "is_compiler_generated": false,
6508 "field_name": "ecmp_metadata_selector",
6509 "field_width": 2,
6510 "field_lsb": 0
6511 }
6512 ]
6513 },
6514 {
6515 "phv_number": 256,
6516 "records": [
6517 {
6518 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006519 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006520 "phv_lsb": 24,
6521 "is_pov": false,
6522 "field_msb": 7,
6523 "phv_msb": 31,
6524 "is_compiler_generated": false,
6525 "field_name": "ipv4_identification",
6526 "field_width": 2,
6527 "field_lsb": 0
6528 },
6529 {
6530 "word_bit_width": 32,
6531 "position_offset": 7,
6532 "phv_lsb": 21,
6533 "is_pov": false,
6534 "field_msb": 2,
6535 "phv_msb": 23,
6536 "is_compiler_generated": false,
6537 "field_name": "ipv4_flags",
6538 "field_width": 1,
6539 "field_lsb": 0
6540 },
6541 {
6542 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006543 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006544 "phv_lsb": 8,
6545 "is_pov": false,
6546 "field_msb": 12,
6547 "phv_msb": 20,
6548 "is_compiler_generated": false,
6549 "field_name": "ipv4_fragOffset",
6550 "field_width": 2,
6551 "field_lsb": 0
6552 },
6553 {
6554 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006555 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006556 "phv_lsb": 0,
6557 "is_pov": false,
6558 "field_msb": 7,
6559 "phv_msb": 7,
6560 "is_compiler_generated": false,
6561 "field_name": "ipv4_ttl",
6562 "field_width": 1,
6563 "field_lsb": 0
6564 }
6565 ]
6566 },
6567 {
6568 "phv_number": 257,
6569 "records": [
6570 {
6571 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006572 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006573 "phv_lsb": 28,
6574 "is_pov": false,
6575 "field_msb": 3,
6576 "phv_msb": 31,
6577 "is_compiler_generated": false,
6578 "field_name": "tcp_dataOffset",
6579 "field_width": 1,
6580 "field_lsb": 0
6581 },
6582 {
6583 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006584 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006585 "phv_lsb": 25,
6586 "is_pov": false,
6587 "field_msb": 2,
6588 "phv_msb": 27,
6589 "is_compiler_generated": false,
6590 "field_name": "tcp_res",
6591 "field_width": 1,
6592 "field_lsb": 0
6593 },
6594 {
6595 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006596 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006597 "phv_lsb": 22,
6598 "is_pov": false,
6599 "field_msb": 2,
6600 "phv_msb": 24,
6601 "is_compiler_generated": false,
6602 "field_name": "tcp_ecn",
6603 "field_width": 1,
6604 "field_lsb": 0
6605 },
6606 {
6607 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006608 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006609 "phv_lsb": 16,
6610 "is_pov": false,
6611 "field_msb": 5,
6612 "phv_msb": 21,
6613 "is_compiler_generated": false,
6614 "field_name": "tcp_ctrl",
6615 "field_width": 1,
6616 "field_lsb": 0
6617 },
6618 {
6619 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006620 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006621 "phv_lsb": 0,
6622 "is_pov": false,
6623 "field_msb": 15,
6624 "phv_msb": 15,
6625 "is_compiler_generated": false,
6626 "field_name": "tcp_window",
6627 "field_width": 2,
6628 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +02006629 },
6630 {
6631 "word_bit_width": 32,
6632 "position_offset": 17,
6633 "phv_lsb": 16,
6634 "is_pov": false,
6635 "field_msb": 15,
6636 "phv_msb": 31,
6637 "is_compiler_generated": false,
6638 "field_name": "udp_length_",
6639 "field_width": 2,
6640 "field_lsb": 0
6641 },
6642 {
6643 "word_bit_width": 32,
6644 "position_offset": 68,
6645 "phv_lsb": 0,
6646 "is_pov": false,
6647 "field_msb": 15,
6648 "phv_msb": 15,
6649 "is_compiler_generated": false,
6650 "field_name": "udp_checksum",
6651 "field_width": 2,
6652 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006653 }
6654 ]
6655 },
6656 {
Brian O'Connora6862e02017-09-08 01:17:39 -07006657 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006658 "records": [
6659 {
6660 "word_bit_width": 32,
6661 "position_offset": 2,
6662 "phv_lsb": 16,
6663 "is_pov": false,
6664 "field_msb": 15,
6665 "phv_msb": 31,
6666 "is_compiler_generated": false,
6667 "field_name": "tcp_checksum",
6668 "field_width": 2,
6669 "field_lsb": 0
6670 },
6671 {
6672 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07006673 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006674 "phv_lsb": 0,
6675 "is_pov": false,
6676 "field_msb": 15,
6677 "phv_msb": 15,
6678 "is_compiler_generated": false,
6679 "field_name": "tcp_urgentPtr",
6680 "field_width": 2,
6681 "field_lsb": 0
6682 }
6683 ]
6684 },
6685 {
Brian O'Connora6862e02017-09-08 01:17:39 -07006686 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006687 "records": [
6688 {
6689 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07006690 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02006691 "phv_lsb": 4,
6692 "is_pov": false,
6693 "field_msb": 3,
6694 "phv_msb": 7,
6695 "is_compiler_generated": false,
6696 "field_name": "ipv4_version",
6697 "field_width": 1,
6698 "field_lsb": 0
6699 },
6700 {
6701 "word_bit_width": 8,
6702 "position_offset": 40,
6703 "phv_lsb": 0,
6704 "is_pov": false,
6705 "field_msb": 3,
6706 "phv_msb": 3,
6707 "is_compiler_generated": false,
6708 "field_name": "ipv4_ihl",
6709 "field_width": 1,
6710 "field_lsb": 0
6711 }
6712 ]
6713 },
6714 {
Brian O'Connora6862e02017-09-08 01:17:39 -07006715 "phv_number": 289,
6716 "records": [
6717 {
6718 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02006719 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -07006720 "phv_lsb": 0,
6721 "is_pov": false,
6722 "field_msb": 7,
6723 "phv_msb": 7,
6724 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02006725 "field_name": "tcp_seqNo",
6726 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07006727 "field_lsb": 0
6728 },
6729 {
6730 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02006731 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -07006732 "phv_lsb": 0,
6733 "is_pov": false,
6734 "field_msb": 15,
6735 "phv_msb": 7,
6736 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02006737 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -07006738 "field_width": 2,
6739 "field_lsb": 8
6740 }
6741 ]
6742 },
6743 {
Brian O'Connora6862e02017-09-08 01:17:39 -07006744 "phv_number": 320,
6745 "records": [
6746 {
6747 "word_bit_width": 16,
6748 "position_offset": 4,
6749 "phv_lsb": 8,
6750 "is_pov": false,
6751 "field_msb": 7,
6752 "phv_msb": 15,
6753 "is_compiler_generated": false,
6754 "field_name": "ipv4_diffserv",
6755 "field_width": 1,
6756 "field_lsb": 0
6757 },
6758 {
6759 "word_bit_width": 16,
6760 "position_offset": 63,
6761 "phv_lsb": 0,
6762 "is_pov": false,
6763 "field_msb": 15,
6764 "phv_msb": 7,
6765 "is_compiler_generated": false,
6766 "field_name": "ipv4_totalLen",
6767 "field_width": 2,
6768 "field_lsb": 8
6769 }
6770 ]
6771 },
6772 {
6773 "phv_number": 321,
6774 "records": [
6775 {
6776 "word_bit_width": 16,
6777 "position_offset": 63,
6778 "phv_lsb": 8,
6779 "is_pov": false,
6780 "field_msb": 7,
6781 "phv_msb": 15,
6782 "is_compiler_generated": false,
6783 "field_name": "ipv4_totalLen",
6784 "field_width": 2,
6785 "field_lsb": 0
6786 },
6787 {
6788 "word_bit_width": 16,
6789 "position_offset": 49,
6790 "phv_lsb": 0,
6791 "is_pov": false,
6792 "field_msb": 15,
6793 "phv_msb": 7,
6794 "is_compiler_generated": false,
6795 "field_name": "ipv4_identification",
6796 "field_width": 2,
6797 "field_lsb": 8
6798 }
6799 ]
6800 },
6801 {
6802 "phv_number": 322,
6803 "records": [
6804 {
6805 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006806 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07006807 "phv_lsb": 0,
6808 "is_pov": false,
6809 "field_msb": 31,
6810 "phv_msb": 15,
6811 "is_compiler_generated": false,
6812 "field_name": "tcp_ackNo",
6813 "field_width": 4,
6814 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +02006815 },
6816 {
6817 "word_bit_width": 16,
6818 "position_offset": 55,
6819 "phv_lsb": 0,
6820 "is_pov": false,
6821 "field_msb": 15,
6822 "phv_msb": 15,
6823 "is_compiler_generated": false,
6824 "field_name": "udp_dstPort",
6825 "field_width": 2,
6826 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07006827 }
6828 ]
6829 },
6830 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006831 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -07006832 "records": [
6833 {
6834 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02006835 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07006836 "phv_lsb": 0,
6837 "is_pov": false,
6838 "field_msb": 15,
6839 "phv_msb": 15,
6840 "is_compiler_generated": false,
6841 "field_name": "tcp_ackNo",
6842 "field_width": 4,
6843 "field_lsb": 0
6844 }
6845 ]
6846 }
6847 ],
6848 "egress": [
6849 {
6850 "phv_number": 80,
6851 "records": [
6852 {
6853 "word_bit_width": 8,
6854 "position_offset": 7,
6855 "phv_lsb": 0,
6856 "is_pov": false,
6857 "field_msb": 2,
6858 "phv_msb": 2,
6859 "is_compiler_generated": false,
6860 "field_name": "eg_intr_md_egress_cos",
6861 "field_width": 1,
6862 "field_lsb": 0
6863 }
6864 ]
6865 },
6866 {
6867 "phv_number": 81,
6868 "records": [
6869 {
6870 "word_bit_width": 8,
6871 "position_offset": 0,
6872 "phv_lsb": 0,
6873 "is_pov": true,
6874 "pov_headers": [
6875 {
6876 "bit_index": 0,
6877 "position_offset": 73,
6878 "header_name": "packet_in_hdr",
6879 "hidden": false
6880 },
6881 {
6882 "bit_index": 1,
6883 "position_offset": 74,
6884 "header_name": "packet_out_hdr",
6885 "hidden": false
6886 },
6887 {
6888 "bit_index": 2,
6889 "position_offset": 75,
6890 "header_name": "ethernet",
6891 "hidden": false
6892 },
6893 {
6894 "bit_index": 3,
6895 "position_offset": 76,
6896 "header_name": "ipv4",
6897 "hidden": false
6898 },
6899 {
6900 "bit_index": 4,
6901 "position_offset": 77,
6902 "header_name": "tcp",
6903 "hidden": false
6904 },
6905 {
6906 "bit_index": 5,
6907 "position_offset": 78,
6908 "header_name": "udp",
6909 "hidden": false
6910 }
6911 ],
6912 "field_msb": 7,
6913 "phv_msb": 7,
6914 "is_compiler_generated": false,
6915 "field_name": "POV",
6916 "field_width": 0,
6917 "field_lsb": 0
6918 }
6919 ]
6920 },
6921 {
6922 "phv_number": 144,
6923 "records": [
6924 {
6925 "word_bit_width": 16,
6926 "position_offset": 61,
6927 "phv_lsb": 0,
6928 "is_pov": false,
6929 "field_msb": 8,
6930 "phv_msb": 8,
6931 "is_compiler_generated": false,
6932 "field_name": "eg_intr_md_egress_port",
6933 "field_width": 2,
6934 "field_lsb": 0
6935 }
6936 ]
6937 },
6938 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006939 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -07006940 "records": [
6941 {
6942 "word_bit_width": 32,
6943 "position_offset": 47,
6944 "phv_lsb": 24,
6945 "is_pov": false,
6946 "field_msb": 7,
6947 "phv_msb": 31,
6948 "is_compiler_generated": false,
6949 "field_name": "ipv4_ttl",
6950 "field_width": 1,
6951 "field_lsb": 0
6952 },
6953 {
6954 "word_bit_width": 32,
6955 "position_offset": 18,
6956 "phv_lsb": 16,
6957 "is_pov": false,
6958 "field_msb": 7,
6959 "phv_msb": 23,
6960 "is_compiler_generated": false,
6961 "field_name": "ipv4_protocol",
6962 "field_width": 1,
6963 "field_lsb": 0
6964 },
6965 {
6966 "word_bit_width": 32,
6967 "position_offset": 9,
6968 "phv_lsb": 0,
6969 "is_pov": false,
6970 "field_msb": 15,
6971 "phv_msb": 15,
6972 "is_compiler_generated": false,
6973 "field_name": "ipv4_hdrChecksum",
6974 "field_width": 2,
6975 "field_lsb": 0
6976 }
6977 ]
6978 },
6979 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006980 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -07006981 "records": [
6982 {
6983 "word_bit_width": 32,
6984 "position_offset": 12,
6985 "phv_lsb": 0,
6986 "is_pov": false,
6987 "field_msb": 31,
6988 "phv_msb": 31,
6989 "is_compiler_generated": false,
6990 "field_name": "ipv4_srcAddr",
6991 "field_width": 4,
6992 "field_lsb": 0
6993 }
6994 ]
6995 },
6996 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02006997 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -07006998 "records": [
6999 {
7000 "word_bit_width": 32,
7001 "position_offset": 50,
7002 "phv_lsb": 0,
7003 "is_pov": false,
7004 "field_msb": 31,
7005 "phv_msb": 31,
7006 "is_compiler_generated": false,
7007 "field_name": "ipv4_dstAddr",
7008 "field_width": 4,
7009 "field_lsb": 0
7010 }
7011 ]
7012 },
7013 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007014 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -07007015 "records": [
7016 {
7017 "word_bit_width": 32,
7018 "position_offset": 25,
7019 "phv_lsb": 0,
7020 "is_pov": false,
7021 "field_msb": 31,
7022 "phv_msb": 31,
7023 "is_compiler_generated": false,
7024 "field_name": "tcp_ackNo",
7025 "field_width": 4,
7026 "field_lsb": 0
7027 },
7028 {
7029 "word_bit_width": 32,
7030 "position_offset": 16,
7031 "phv_lsb": 16,
7032 "is_pov": false,
7033 "field_msb": 15,
7034 "phv_msb": 31,
7035 "is_compiler_generated": false,
7036 "field_name": "udp_length_",
7037 "field_width": 2,
7038 "field_lsb": 0
7039 },
7040 {
7041 "word_bit_width": 32,
7042 "position_offset": 59,
7043 "phv_lsb": 0,
7044 "is_pov": false,
7045 "field_msb": 15,
7046 "phv_msb": 15,
7047 "is_compiler_generated": false,
7048 "field_name": "udp_checksum",
7049 "field_width": 2,
7050 "field_lsb": 0
7051 }
7052 ]
7053 },
7054 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007055 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -07007056 "records": [
7057 {
7058 "word_bit_width": 32,
7059 "position_offset": 38,
7060 "phv_lsb": 28,
7061 "is_pov": false,
7062 "field_msb": 3,
7063 "phv_msb": 31,
7064 "is_compiler_generated": false,
7065 "field_name": "tcp_dataOffset",
7066 "field_width": 1,
7067 "field_lsb": 0
7068 },
7069 {
7070 "word_bit_width": 32,
7071 "position_offset": 58,
7072 "phv_lsb": 25,
7073 "is_pov": false,
7074 "field_msb": 2,
7075 "phv_msb": 27,
7076 "is_compiler_generated": false,
7077 "field_name": "tcp_res",
7078 "field_width": 1,
7079 "field_lsb": 0
7080 },
7081 {
7082 "word_bit_width": 32,
7083 "position_offset": 11,
7084 "phv_lsb": 22,
7085 "is_pov": false,
7086 "field_msb": 2,
7087 "phv_msb": 24,
7088 "is_compiler_generated": false,
7089 "field_name": "tcp_ecn",
7090 "field_width": 1,
7091 "field_lsb": 0
7092 },
7093 {
7094 "word_bit_width": 32,
7095 "position_offset": 34,
7096 "phv_lsb": 16,
7097 "is_pov": false,
7098 "field_msb": 5,
7099 "phv_msb": 21,
7100 "is_compiler_generated": false,
7101 "field_name": "tcp_ctrl",
7102 "field_width": 1,
7103 "field_lsb": 0
7104 },
7105 {
7106 "word_bit_width": 32,
7107 "position_offset": 41,
7108 "phv_lsb": 0,
7109 "is_pov": false,
7110 "field_msb": 15,
7111 "phv_msb": 15,
7112 "is_compiler_generated": false,
7113 "field_name": "tcp_window",
7114 "field_width": 2,
7115 "field_lsb": 0
7116 }
7117 ]
7118 },
7119 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007120 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -07007121 "records": [
7122 {
7123 "word_bit_width": 32,
7124 "position_offset": 2,
7125 "phv_lsb": 16,
7126 "is_pov": false,
7127 "field_msb": 15,
7128 "phv_msb": 31,
7129 "is_compiler_generated": false,
7130 "field_name": "tcp_checksum",
7131 "field_width": 2,
7132 "field_lsb": 0
7133 },
7134 {
7135 "word_bit_width": 32,
7136 "position_offset": 45,
7137 "phv_lsb": 0,
7138 "is_pov": false,
7139 "field_msb": 15,
7140 "phv_msb": 15,
7141 "is_compiler_generated": false,
7142 "field_name": "tcp_urgentPtr",
7143 "field_width": 2,
7144 "field_lsb": 0
7145 }
7146 ]
7147 },
7148 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007149 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -07007150 "records": [
7151 {
7152 "word_bit_width": 32,
7153 "position_offset": 19,
7154 "phv_lsb": 0,
7155 "is_pov": false,
7156 "field_msb": 39,
7157 "phv_msb": 31,
7158 "is_compiler_generated": false,
7159 "field_name": "ethernet_dstAddr",
7160 "field_width": 6,
7161 "field_lsb": 8
7162 }
7163 ]
7164 },
7165 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007166 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -07007167 "records": [
7168 {
7169 "word_bit_width": 32,
7170 "position_offset": 63,
7171 "phv_lsb": 0,
7172 "is_pov": false,
7173 "field_msb": 31,
7174 "phv_msb": 31,
7175 "is_compiler_generated": false,
7176 "field_name": "ethernet_srcAddr",
7177 "field_width": 6,
7178 "field_lsb": 0
7179 }
7180 ]
7181 },
7182 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007183 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -07007184 "records": [
7185 {
7186 "word_bit_width": 8,
7187 "position_offset": 29,
7188 "phv_lsb": 4,
7189 "is_pov": false,
7190 "field_msb": 3,
7191 "phv_msb": 7,
7192 "is_compiler_generated": false,
7193 "field_name": "ipv4_version",
7194 "field_width": 1,
7195 "field_lsb": 0
7196 },
7197 {
7198 "word_bit_width": 8,
7199 "position_offset": 37,
7200 "phv_lsb": 0,
7201 "is_pov": false,
7202 "field_msb": 3,
7203 "phv_msb": 3,
7204 "is_compiler_generated": false,
7205 "field_name": "ipv4_ihl",
7206 "field_width": 1,
7207 "field_lsb": 0
7208 }
7209 ]
7210 },
7211 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007212 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007213 "records": [
7214 {
7215 "word_bit_width": 8,
7216 "position_offset": 4,
7217 "phv_lsb": 0,
7218 "is_pov": false,
7219 "field_msb": 7,
7220 "phv_msb": 7,
7221 "is_compiler_generated": false,
7222 "field_name": "ipv4_diffserv",
7223 "field_width": 1,
7224 "field_lsb": 0
7225 }
7226 ]
7227 },
7228 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007229 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007230 "records": [
7231 {
7232 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07007233 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007234 "phv_lsb": 0,
7235 "is_pov": false,
7236 "field_msb": 15,
7237 "phv_msb": 7,
7238 "is_compiler_generated": false,
7239 "field_name": "tcp_srcPort",
7240 "field_width": 2,
7241 "field_lsb": 8
7242 },
7243 {
7244 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07007245 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007246 "phv_lsb": 0,
7247 "is_pov": false,
7248 "field_msb": 15,
7249 "phv_msb": 7,
7250 "is_compiler_generated": false,
7251 "field_name": "udp_srcPort",
7252 "field_width": 2,
7253 "field_lsb": 8
7254 }
7255 ]
7256 },
7257 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007258 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007259 "records": [
7260 {
7261 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07007262 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007263 "phv_lsb": 0,
7264 "is_pov": false,
7265 "field_msb": 7,
7266 "phv_msb": 7,
7267 "is_compiler_generated": false,
7268 "field_name": "tcp_srcPort",
7269 "field_width": 2,
7270 "field_lsb": 0
7271 },
7272 {
7273 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07007274 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007275 "phv_lsb": 0,
7276 "is_pov": false,
7277 "field_msb": 7,
7278 "phv_msb": 7,
7279 "is_compiler_generated": false,
7280 "field_name": "udp_srcPort",
7281 "field_width": 2,
7282 "field_lsb": 0
7283 }
7284 ]
7285 },
7286 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007287 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007288 "records": [
7289 {
7290 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07007291 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007292 "phv_lsb": 0,
7293 "is_pov": false,
7294 "field_msb": 47,
7295 "phv_msb": 7,
7296 "is_compiler_generated": false,
7297 "field_name": "ethernet_dstAddr",
7298 "field_width": 6,
7299 "field_lsb": 40
7300 }
7301 ]
7302 },
7303 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007304 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007305 "records": [
7306 {
7307 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07007308 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007309 "phv_lsb": 0,
7310 "is_pov": false,
7311 "field_msb": 39,
7312 "phv_msb": 7,
7313 "is_compiler_generated": false,
7314 "field_name": "ethernet_srcAddr",
7315 "field_width": 6,
7316 "field_lsb": 32
7317 }
7318 ]
7319 },
7320 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007321 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007322 "records": [
7323 {
7324 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007325 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007326 "phv_lsb": 0,
7327 "is_pov": false,
7328 "field_msb": 15,
7329 "phv_msb": 15,
7330 "is_compiler_generated": false,
7331 "field_name": "ipv4_totalLen",
7332 "field_width": 2,
7333 "field_lsb": 0
7334 }
7335 ]
7336 },
7337 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007338 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007339 "records": [
7340 {
7341 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007342 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007343 "phv_lsb": 0,
7344 "is_pov": false,
7345 "field_msb": 15,
7346 "phv_msb": 15,
7347 "is_compiler_generated": false,
7348 "field_name": "ipv4_identification",
7349 "field_width": 2,
7350 "field_lsb": 0
7351 }
7352 ]
7353 },
7354 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007355 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007356 "records": [
7357 {
7358 "word_bit_width": 16,
7359 "position_offset": 8,
7360 "phv_lsb": 13,
7361 "is_pov": false,
7362 "field_msb": 2,
7363 "phv_msb": 15,
7364 "is_compiler_generated": false,
7365 "field_name": "ipv4_flags",
7366 "field_width": 1,
7367 "field_lsb": 0
7368 },
7369 {
7370 "word_bit_width": 16,
7371 "position_offset": 5,
7372 "phv_lsb": 0,
7373 "is_pov": false,
7374 "field_msb": 12,
7375 "phv_msb": 12,
7376 "is_compiler_generated": false,
7377 "field_name": "ipv4_fragOffset",
7378 "field_width": 2,
7379 "field_lsb": 0
7380 }
7381 ]
7382 },
7383 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007384 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007385 "records": [
7386 {
7387 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007388 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007389 "phv_lsb": 0,
7390 "is_pov": false,
7391 "field_msb": 15,
7392 "phv_msb": 15,
7393 "is_compiler_generated": false,
7394 "field_name": "tcp_dstPort",
7395 "field_width": 2,
7396 "field_lsb": 0
7397 },
7398 {
7399 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007400 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007401 "phv_lsb": 0,
7402 "is_pov": false,
7403 "field_msb": 15,
7404 "phv_msb": 15,
7405 "is_compiler_generated": false,
7406 "field_name": "udp_dstPort",
7407 "field_width": 2,
7408 "field_lsb": 0
7409 }
7410 ]
7411 },
7412 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007413 "phv_number": 330,
7414 "records": [
7415 {
7416 "word_bit_width": 16,
7417 "position_offset": 69,
7418 "phv_lsb": 0,
7419 "is_pov": false,
7420 "field_msb": 31,
7421 "phv_msb": 15,
7422 "is_compiler_generated": false,
7423 "field_name": "tcp_seqNo",
7424 "field_width": 4,
7425 "field_lsb": 16
7426 }
7427 ]
7428 },
7429 {
7430 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007431 "records": [
7432 {
7433 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007434 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007435 "phv_lsb": 0,
7436 "is_pov": false,
7437 "field_msb": 15,
7438 "phv_msb": 15,
7439 "is_compiler_generated": false,
7440 "field_name": "tcp_seqNo",
7441 "field_width": 4,
7442 "field_lsb": 0
7443 }
7444 ]
7445 },
7446 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007447 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007448 "records": [
7449 {
7450 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007451 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007452 "phv_lsb": 8,
7453 "is_pov": false,
7454 "field_msb": 7,
7455 "phv_msb": 15,
7456 "is_compiler_generated": false,
7457 "field_name": "ethernet_dstAddr",
7458 "field_width": 6,
7459 "field_lsb": 0
7460 },
7461 {
7462 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007463 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007464 "phv_lsb": 0,
7465 "is_pov": false,
7466 "field_msb": 47,
7467 "phv_msb": 7,
7468 "is_compiler_generated": false,
7469 "field_name": "ethernet_srcAddr",
7470 "field_width": 6,
7471 "field_lsb": 40
7472 }
7473 ]
7474 },
7475 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007476 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007477 "records": [
7478 {
7479 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007480 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007481 "phv_lsb": 0,
7482 "is_pov": false,
7483 "field_msb": 15,
7484 "phv_msb": 15,
7485 "is_compiler_generated": false,
7486 "field_name": "ethernet_etherType",
7487 "field_width": 2,
7488 "field_lsb": 0
7489 }
7490 ]
7491 },
7492 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007493 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007494 "records": [
7495 {
7496 "word_bit_width": 16,
7497 "position_offset": 0,
7498 "phv_lsb": 7,
7499 "is_pov": false,
7500 "field_msb": 8,
7501 "phv_msb": 15,
7502 "is_compiler_generated": false,
7503 "field_name": "packet_out_hdr_egress_port",
7504 "field_width": 2,
7505 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07007506 },
7507 {
7508 "word_bit_width": 16,
7509 "position_offset": 30,
7510 "phv_lsb": 7,
7511 "is_pov": false,
7512 "field_msb": 8,
7513 "phv_msb": 15,
7514 "is_compiler_generated": false,
7515 "field_name": "packet_in_hdr_ingress_port",
7516 "field_width": 2,
7517 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007518 }
7519 ]
7520 }
7521 ],
7522 "stage_number": 4
7523 },
7524 {
7525 "ingress": [
7526 {
7527 "phv_number": 0,
7528 "records": [
7529 {
7530 "word_bit_width": 32,
7531 "position_offset": 0,
7532 "phv_lsb": 0,
7533 "is_pov": true,
7534 "pov_headers": [],
7535 "field_msb": 31,
7536 "phv_msb": 31,
7537 "is_compiler_generated": false,
7538 "field_name": "POV",
7539 "field_width": 0,
7540 "field_lsb": 0
7541 }
7542 ]
7543 },
7544 {
7545 "phv_number": 1,
7546 "records": [
7547 {
7548 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07007549 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007550 "phv_lsb": 24,
7551 "is_pov": false,
7552 "field_msb": 7,
7553 "phv_msb": 31,
7554 "is_compiler_generated": false,
7555 "field_name": "ipv4_protocol",
7556 "field_width": 1,
7557 "field_lsb": 0
7558 },
7559 {
7560 "word_bit_width": 32,
7561 "position_offset": 10,
7562 "phv_lsb": 8,
7563 "is_pov": false,
7564 "field_msb": 15,
7565 "phv_msb": 23,
7566 "is_compiler_generated": false,
7567 "field_name": "ipv4_hdrChecksum",
7568 "field_width": 2,
7569 "field_lsb": 0
7570 },
7571 {
7572 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07007573 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007574 "phv_lsb": 0,
7575 "is_pov": false,
7576 "field_msb": 31,
7577 "phv_msb": 7,
7578 "is_compiler_generated": false,
7579 "field_name": "ipv4_srcAddr",
7580 "field_width": 4,
7581 "field_lsb": 24
7582 }
7583 ]
7584 },
7585 {
7586 "phv_number": 2,
7587 "records": [
7588 {
7589 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07007590 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007591 "phv_lsb": 0,
7592 "is_pov": false,
7593 "field_msb": 31,
7594 "phv_msb": 31,
7595 "is_compiler_generated": false,
7596 "field_name": "ipv4_dstAddr",
7597 "field_width": 4,
7598 "field_lsb": 0
7599 }
7600 ]
7601 },
7602 {
7603 "phv_number": 3,
7604 "records": [
7605 {
7606 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +02007607 "position_offset": 33,
7608 "phv_lsb": 24,
7609 "is_pov": false,
7610 "field_msb": 7,
7611 "phv_msb": 31,
7612 "is_compiler_generated": false,
7613 "field_name": "tcp_dstPort",
7614 "field_width": 2,
7615 "field_lsb": 0
7616 },
7617 {
7618 "word_bit_width": 32,
7619 "position_offset": 76,
7620 "phv_lsb": 0,
7621 "is_pov": false,
7622 "field_msb": 31,
7623 "phv_msb": 23,
7624 "is_compiler_generated": false,
7625 "field_name": "tcp_seqNo",
7626 "field_width": 4,
7627 "field_lsb": 8
7628 }
7629 ]
7630 },
7631 {
7632 "phv_number": 4,
7633 "records": [
7634 {
7635 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02007636 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007637 "phv_lsb": 0,
7638 "is_pov": false,
7639 "field_msb": 39,
7640 "phv_msb": 31,
7641 "is_compiler_generated": false,
7642 "field_name": "ethernet_dstAddr",
7643 "field_width": 6,
7644 "field_lsb": 8
7645 }
7646 ]
7647 },
7648 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007649 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007650 "records": [
7651 {
7652 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07007653 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007654 "phv_lsb": 0,
7655 "is_pov": false,
7656 "field_msb": 31,
7657 "phv_msb": 31,
7658 "is_compiler_generated": false,
7659 "field_name": "ethernet_srcAddr",
7660 "field_width": 6,
7661 "field_lsb": 0
7662 }
7663 ]
7664 },
7665 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007666 "phv_number": 64,
7667 "records": [
7668 {
7669 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07007670 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007671 "phv_lsb": 0,
7672 "is_pov": false,
7673 "field_msb": 23,
7674 "phv_msb": 7,
7675 "is_compiler_generated": false,
7676 "field_name": "ipv4_srcAddr",
7677 "field_width": 4,
7678 "field_lsb": 16
7679 }
7680 ]
7681 },
7682 {
Brian O'Connora6862e02017-09-08 01:17:39 -07007683 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007684 "records": [
7685 {
7686 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02007687 "position_offset": 38,
7688 "phv_lsb": 0,
7689 "is_pov": false,
7690 "field_msb": 15,
7691 "phv_msb": 7,
7692 "is_compiler_generated": false,
7693 "field_name": "tcp_srcPort",
7694 "field_width": 2,
7695 "field_lsb": 8
7696 },
7697 {
7698 "word_bit_width": 8,
7699 "position_offset": 66,
7700 "phv_lsb": 0,
7701 "is_pov": false,
7702 "field_msb": 7,
7703 "phv_msb": 7,
7704 "is_compiler_generated": false,
7705 "field_name": "udp_srcPort",
7706 "field_width": 2,
7707 "field_lsb": 0
7708 }
7709 ]
7710 },
7711 {
7712 "phv_number": 66,
7713 "records": [
7714 {
7715 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02007716 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007717 "phv_lsb": 0,
7718 "is_pov": false,
7719 "field_msb": 47,
7720 "phv_msb": 7,
7721 "is_compiler_generated": false,
7722 "field_name": "ethernet_dstAddr",
7723 "field_width": 6,
7724 "field_lsb": 40
7725 }
7726 ]
7727 },
7728 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007729 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007730 "records": [
7731 {
7732 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07007733 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007734 "phv_lsb": 0,
7735 "is_pov": false,
7736 "field_msb": 39,
7737 "phv_msb": 7,
7738 "is_compiler_generated": false,
7739 "field_name": "ethernet_srcAddr",
7740 "field_width": 6,
7741 "field_lsb": 32
7742 }
7743 ]
7744 },
7745 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007746 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007747 "records": [
7748 {
7749 "word_bit_width": 8,
7750 "position_offset": 0,
7751 "phv_lsb": 0,
7752 "is_pov": true,
7753 "pov_headers": [
7754 {
7755 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -07007756 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007757 "header_name": "packet_in_hdr",
7758 "hidden": false
7759 },
7760 {
7761 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -07007762 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007763 "header_name": "packet_out_hdr",
7764 "hidden": false
7765 },
7766 {
7767 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -07007768 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007769 "header_name": "ethernet",
7770 "hidden": false
7771 },
7772 {
7773 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -07007774 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007775 "header_name": "ipv4",
7776 "hidden": false
7777 },
7778 {
7779 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07007780 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007781 "header_name": "tcp",
7782 "hidden": false
7783 },
7784 {
7785 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -07007786 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007787 "header_name": "udp",
7788 "hidden": false
7789 }
7790 ],
7791 "field_msb": 39,
7792 "phv_msb": 7,
7793 "is_compiler_generated": false,
7794 "field_name": "POV",
7795 "field_width": 0,
7796 "field_lsb": 32
7797 }
7798 ]
7799 },
7800 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007801 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007802 "records": [
7803 {
7804 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07007805 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007806 "phv_lsb": 5,
7807 "is_pov": false,
7808 "field_msb": 2,
7809 "phv_msb": 7,
7810 "is_compiler_generated": false,
7811 "field_name": "ig_intr_md_for_tm_drop_ctl",
7812 "field_width": 1,
7813 "field_lsb": 0
7814 }
7815 ]
7816 },
7817 {
7818 "phv_number": 128,
7819 "records": [
7820 {
7821 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02007822 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007823 "phv_lsb": 15,
7824 "is_pov": false,
7825 "field_msb": 0,
7826 "phv_msb": 15,
7827 "is_compiler_generated": false,
7828 "field_name": "ig_intr_md_resubmit_flag",
7829 "field_width": 1,
7830 "field_lsb": 0
7831 },
7832 {
7833 "word_bit_width": 16,
7834 "position_offset": 8,
7835 "phv_lsb": 0,
7836 "is_pov": false,
7837 "field_msb": 8,
7838 "phv_msb": 8,
7839 "is_compiler_generated": false,
7840 "field_name": "ig_intr_md_ingress_port",
7841 "field_width": 2,
7842 "field_lsb": 0
7843 }
7844 ]
7845 },
7846 {
7847 "phv_number": 129,
7848 "records": [
7849 {
7850 "word_bit_width": 16,
7851 "position_offset": 0,
7852 "phv_lsb": 7,
7853 "is_pov": false,
7854 "field_msb": 8,
7855 "phv_msb": 15,
7856 "is_compiler_generated": false,
7857 "field_name": "packet_out_hdr_egress_port",
7858 "field_width": 2,
7859 "field_lsb": 0
7860 },
7861 {
7862 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02007863 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007864 "phv_lsb": 7,
7865 "is_pov": false,
7866 "field_msb": 8,
7867 "phv_msb": 15,
7868 "is_compiler_generated": false,
7869 "field_name": "packet_in_hdr_ingress_port",
7870 "field_width": 2,
7871 "field_lsb": 0
7872 }
7873 ]
7874 },
7875 {
7876 "phv_number": 130,
7877 "records": [
7878 {
7879 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007880 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007881 "phv_lsb": 0,
7882 "is_pov": false,
7883 "field_msb": 8,
7884 "phv_msb": 8,
7885 "is_compiler_generated": false,
7886 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
7887 "field_width": 2,
7888 "field_lsb": 0
7889 }
7890 ]
7891 },
7892 {
7893 "phv_number": 131,
7894 "records": [
7895 {
7896 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007897 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007898 "phv_lsb": 0,
7899 "is_pov": false,
7900 "field_msb": 15,
7901 "phv_msb": 15,
7902 "is_compiler_generated": false,
7903 "field_name": "ipv4_srcAddr",
7904 "field_width": 4,
7905 "field_lsb": 0
7906 }
7907 ]
7908 },
7909 {
7910 "phv_number": 132,
7911 "records": [
7912 {
7913 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +02007914 "position_offset": 38,
7915 "phv_lsb": 8,
7916 "is_pov": false,
7917 "field_msb": 7,
7918 "phv_msb": 15,
7919 "is_compiler_generated": false,
7920 "field_name": "tcp_srcPort",
7921 "field_width": 2,
7922 "field_lsb": 0
7923 },
7924 {
7925 "word_bit_width": 16,
7926 "position_offset": 33,
7927 "phv_lsb": 0,
7928 "is_pov": false,
7929 "field_msb": 15,
7930 "phv_msb": 7,
7931 "is_compiler_generated": false,
7932 "field_name": "tcp_dstPort",
7933 "field_width": 2,
7934 "field_lsb": 8
7935 }
7936 ]
7937 },
7938 {
7939 "phv_number": 133,
7940 "records": [
7941 {
7942 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02007943 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007944 "phv_lsb": 8,
7945 "is_pov": false,
7946 "field_msb": 7,
7947 "phv_msb": 15,
7948 "is_compiler_generated": false,
7949 "field_name": "ethernet_dstAddr",
7950 "field_width": 6,
7951 "field_lsb": 0
7952 },
7953 {
7954 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07007955 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007956 "phv_lsb": 0,
7957 "is_pov": false,
7958 "field_msb": 47,
7959 "phv_msb": 7,
7960 "is_compiler_generated": false,
7961 "field_name": "ethernet_srcAddr",
7962 "field_width": 6,
7963 "field_lsb": 40
7964 }
7965 ]
7966 },
7967 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007968 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007969 "records": [
7970 {
7971 "word_bit_width": 16,
7972 "position_offset": 5,
7973 "phv_lsb": 0,
7974 "is_pov": false,
7975 "field_msb": 15,
7976 "phv_msb": 15,
7977 "is_compiler_generated": false,
7978 "field_name": "ethernet_etherType",
7979 "field_width": 2,
7980 "field_lsb": 0
7981 }
7982 ]
7983 },
7984 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02007985 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007986 "records": [
7987 {
7988 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02007989 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007990 "phv_lsb": 0,
7991 "is_pov": false,
7992 "field_msb": 15,
7993 "phv_msb": 15,
7994 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02007995 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +02007996 "field_width": 2,
7997 "field_lsb": 0
7998 }
7999 ]
8000 },
8001 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008002 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008003 "records": [
8004 {
8005 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07008006 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008007 "phv_lsb": 0,
8008 "is_pov": false,
8009 "field_msb": 15,
8010 "phv_msb": 15,
8011 "is_compiler_generated": false,
8012 "field_name": "ecmp_metadata_selector",
8013 "field_width": 2,
8014 "field_lsb": 0
8015 }
8016 ]
8017 },
8018 {
8019 "phv_number": 256,
8020 "records": [
8021 {
8022 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07008023 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008024 "phv_lsb": 24,
8025 "is_pov": false,
8026 "field_msb": 7,
8027 "phv_msb": 31,
8028 "is_compiler_generated": false,
8029 "field_name": "ipv4_identification",
8030 "field_width": 2,
8031 "field_lsb": 0
8032 },
8033 {
8034 "word_bit_width": 32,
8035 "position_offset": 7,
8036 "phv_lsb": 21,
8037 "is_pov": false,
8038 "field_msb": 2,
8039 "phv_msb": 23,
8040 "is_compiler_generated": false,
8041 "field_name": "ipv4_flags",
8042 "field_width": 1,
8043 "field_lsb": 0
8044 },
8045 {
8046 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07008047 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008048 "phv_lsb": 8,
8049 "is_pov": false,
8050 "field_msb": 12,
8051 "phv_msb": 20,
8052 "is_compiler_generated": false,
8053 "field_name": "ipv4_fragOffset",
8054 "field_width": 2,
8055 "field_lsb": 0
8056 },
8057 {
8058 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07008059 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008060 "phv_lsb": 0,
8061 "is_pov": false,
8062 "field_msb": 7,
8063 "phv_msb": 7,
8064 "is_compiler_generated": false,
8065 "field_name": "ipv4_ttl",
8066 "field_width": 1,
8067 "field_lsb": 0
8068 }
8069 ]
8070 },
8071 {
8072 "phv_number": 257,
8073 "records": [
8074 {
8075 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07008076 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008077 "phv_lsb": 28,
8078 "is_pov": false,
8079 "field_msb": 3,
8080 "phv_msb": 31,
8081 "is_compiler_generated": false,
8082 "field_name": "tcp_dataOffset",
8083 "field_width": 1,
8084 "field_lsb": 0
8085 },
8086 {
8087 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07008088 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008089 "phv_lsb": 25,
8090 "is_pov": false,
8091 "field_msb": 2,
8092 "phv_msb": 27,
8093 "is_compiler_generated": false,
8094 "field_name": "tcp_res",
8095 "field_width": 1,
8096 "field_lsb": 0
8097 },
8098 {
8099 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07008100 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008101 "phv_lsb": 22,
8102 "is_pov": false,
8103 "field_msb": 2,
8104 "phv_msb": 24,
8105 "is_compiler_generated": false,
8106 "field_name": "tcp_ecn",
8107 "field_width": 1,
8108 "field_lsb": 0
8109 },
8110 {
8111 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02008112 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008113 "phv_lsb": 16,
8114 "is_pov": false,
8115 "field_msb": 5,
8116 "phv_msb": 21,
8117 "is_compiler_generated": false,
8118 "field_name": "tcp_ctrl",
8119 "field_width": 1,
8120 "field_lsb": 0
8121 },
8122 {
8123 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07008124 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008125 "phv_lsb": 0,
8126 "is_pov": false,
8127 "field_msb": 15,
8128 "phv_msb": 15,
8129 "is_compiler_generated": false,
8130 "field_name": "tcp_window",
8131 "field_width": 2,
8132 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +02008133 },
8134 {
8135 "word_bit_width": 32,
8136 "position_offset": 17,
8137 "phv_lsb": 16,
8138 "is_pov": false,
8139 "field_msb": 15,
8140 "phv_msb": 31,
8141 "is_compiler_generated": false,
8142 "field_name": "udp_length_",
8143 "field_width": 2,
8144 "field_lsb": 0
8145 },
8146 {
8147 "word_bit_width": 32,
8148 "position_offset": 68,
8149 "phv_lsb": 0,
8150 "is_pov": false,
8151 "field_msb": 15,
8152 "phv_msb": 15,
8153 "is_compiler_generated": false,
8154 "field_name": "udp_checksum",
8155 "field_width": 2,
8156 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008157 }
8158 ]
8159 },
8160 {
Brian O'Connora6862e02017-09-08 01:17:39 -07008161 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008162 "records": [
8163 {
8164 "word_bit_width": 32,
8165 "position_offset": 2,
8166 "phv_lsb": 16,
8167 "is_pov": false,
8168 "field_msb": 15,
8169 "phv_msb": 31,
8170 "is_compiler_generated": false,
8171 "field_name": "tcp_checksum",
8172 "field_width": 2,
8173 "field_lsb": 0
8174 },
8175 {
8176 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07008177 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008178 "phv_lsb": 0,
8179 "is_pov": false,
8180 "field_msb": 15,
8181 "phv_msb": 15,
8182 "is_compiler_generated": false,
8183 "field_name": "tcp_urgentPtr",
8184 "field_width": 2,
8185 "field_lsb": 0
8186 }
8187 ]
8188 },
8189 {
Brian O'Connora6862e02017-09-08 01:17:39 -07008190 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008191 "records": [
8192 {
8193 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07008194 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008195 "phv_lsb": 4,
8196 "is_pov": false,
8197 "field_msb": 3,
8198 "phv_msb": 7,
8199 "is_compiler_generated": false,
8200 "field_name": "ipv4_version",
8201 "field_width": 1,
8202 "field_lsb": 0
8203 },
8204 {
8205 "word_bit_width": 8,
8206 "position_offset": 40,
8207 "phv_lsb": 0,
8208 "is_pov": false,
8209 "field_msb": 3,
8210 "phv_msb": 3,
8211 "is_compiler_generated": false,
8212 "field_name": "ipv4_ihl",
8213 "field_width": 1,
8214 "field_lsb": 0
8215 }
8216 ]
8217 },
8218 {
Brian O'Connora6862e02017-09-08 01:17:39 -07008219 "phv_number": 289,
8220 "records": [
8221 {
8222 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02008223 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -07008224 "phv_lsb": 0,
8225 "is_pov": false,
8226 "field_msb": 7,
8227 "phv_msb": 7,
8228 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02008229 "field_name": "tcp_seqNo",
8230 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07008231 "field_lsb": 0
8232 },
8233 {
8234 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02008235 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -07008236 "phv_lsb": 0,
8237 "is_pov": false,
8238 "field_msb": 15,
8239 "phv_msb": 7,
8240 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02008241 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -07008242 "field_width": 2,
8243 "field_lsb": 8
8244 }
8245 ]
8246 },
8247 {
Brian O'Connora6862e02017-09-08 01:17:39 -07008248 "phv_number": 320,
8249 "records": [
8250 {
8251 "word_bit_width": 16,
8252 "position_offset": 4,
8253 "phv_lsb": 8,
8254 "is_pov": false,
8255 "field_msb": 7,
8256 "phv_msb": 15,
8257 "is_compiler_generated": false,
8258 "field_name": "ipv4_diffserv",
8259 "field_width": 1,
8260 "field_lsb": 0
8261 },
8262 {
8263 "word_bit_width": 16,
8264 "position_offset": 63,
8265 "phv_lsb": 0,
8266 "is_pov": false,
8267 "field_msb": 15,
8268 "phv_msb": 7,
8269 "is_compiler_generated": false,
8270 "field_name": "ipv4_totalLen",
8271 "field_width": 2,
8272 "field_lsb": 8
8273 }
8274 ]
8275 },
8276 {
8277 "phv_number": 321,
8278 "records": [
8279 {
8280 "word_bit_width": 16,
8281 "position_offset": 63,
8282 "phv_lsb": 8,
8283 "is_pov": false,
8284 "field_msb": 7,
8285 "phv_msb": 15,
8286 "is_compiler_generated": false,
8287 "field_name": "ipv4_totalLen",
8288 "field_width": 2,
8289 "field_lsb": 0
8290 },
8291 {
8292 "word_bit_width": 16,
8293 "position_offset": 49,
8294 "phv_lsb": 0,
8295 "is_pov": false,
8296 "field_msb": 15,
8297 "phv_msb": 7,
8298 "is_compiler_generated": false,
8299 "field_name": "ipv4_identification",
8300 "field_width": 2,
8301 "field_lsb": 8
8302 }
8303 ]
8304 },
8305 {
8306 "phv_number": 322,
8307 "records": [
8308 {
8309 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02008310 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07008311 "phv_lsb": 0,
8312 "is_pov": false,
8313 "field_msb": 31,
8314 "phv_msb": 15,
8315 "is_compiler_generated": false,
8316 "field_name": "tcp_ackNo",
8317 "field_width": 4,
8318 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +02008319 },
8320 {
8321 "word_bit_width": 16,
8322 "position_offset": 55,
8323 "phv_lsb": 0,
8324 "is_pov": false,
8325 "field_msb": 15,
8326 "phv_msb": 15,
8327 "is_compiler_generated": false,
8328 "field_name": "udp_dstPort",
8329 "field_width": 2,
8330 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07008331 }
8332 ]
8333 },
8334 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008335 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -07008336 "records": [
8337 {
8338 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02008339 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07008340 "phv_lsb": 0,
8341 "is_pov": false,
8342 "field_msb": 15,
8343 "phv_msb": 15,
8344 "is_compiler_generated": false,
8345 "field_name": "tcp_ackNo",
8346 "field_width": 4,
8347 "field_lsb": 0
8348 }
8349 ]
8350 }
8351 ],
8352 "egress": [
8353 {
8354 "phv_number": 80,
8355 "records": [
8356 {
8357 "word_bit_width": 8,
8358 "position_offset": 7,
8359 "phv_lsb": 0,
8360 "is_pov": false,
8361 "field_msb": 2,
8362 "phv_msb": 2,
8363 "is_compiler_generated": false,
8364 "field_name": "eg_intr_md_egress_cos",
8365 "field_width": 1,
8366 "field_lsb": 0
8367 }
8368 ]
8369 },
8370 {
8371 "phv_number": 81,
8372 "records": [
8373 {
8374 "word_bit_width": 8,
8375 "position_offset": 0,
8376 "phv_lsb": 0,
8377 "is_pov": true,
8378 "pov_headers": [
8379 {
8380 "bit_index": 0,
8381 "position_offset": 73,
8382 "header_name": "packet_in_hdr",
8383 "hidden": false
8384 },
8385 {
8386 "bit_index": 1,
8387 "position_offset": 74,
8388 "header_name": "packet_out_hdr",
8389 "hidden": false
8390 },
8391 {
8392 "bit_index": 2,
8393 "position_offset": 75,
8394 "header_name": "ethernet",
8395 "hidden": false
8396 },
8397 {
8398 "bit_index": 3,
8399 "position_offset": 76,
8400 "header_name": "ipv4",
8401 "hidden": false
8402 },
8403 {
8404 "bit_index": 4,
8405 "position_offset": 77,
8406 "header_name": "tcp",
8407 "hidden": false
8408 },
8409 {
8410 "bit_index": 5,
8411 "position_offset": 78,
8412 "header_name": "udp",
8413 "hidden": false
8414 }
8415 ],
8416 "field_msb": 7,
8417 "phv_msb": 7,
8418 "is_compiler_generated": false,
8419 "field_name": "POV",
8420 "field_width": 0,
8421 "field_lsb": 0
8422 }
8423 ]
8424 },
8425 {
8426 "phv_number": 144,
8427 "records": [
8428 {
8429 "word_bit_width": 16,
8430 "position_offset": 61,
8431 "phv_lsb": 0,
8432 "is_pov": false,
8433 "field_msb": 8,
8434 "phv_msb": 8,
8435 "is_compiler_generated": false,
8436 "field_name": "eg_intr_md_egress_port",
8437 "field_width": 2,
8438 "field_lsb": 0
8439 }
8440 ]
8441 },
8442 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008443 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -07008444 "records": [
8445 {
8446 "word_bit_width": 32,
8447 "position_offset": 47,
8448 "phv_lsb": 24,
8449 "is_pov": false,
8450 "field_msb": 7,
8451 "phv_msb": 31,
8452 "is_compiler_generated": false,
8453 "field_name": "ipv4_ttl",
8454 "field_width": 1,
8455 "field_lsb": 0
8456 },
8457 {
8458 "word_bit_width": 32,
8459 "position_offset": 18,
8460 "phv_lsb": 16,
8461 "is_pov": false,
8462 "field_msb": 7,
8463 "phv_msb": 23,
8464 "is_compiler_generated": false,
8465 "field_name": "ipv4_protocol",
8466 "field_width": 1,
8467 "field_lsb": 0
8468 },
8469 {
8470 "word_bit_width": 32,
8471 "position_offset": 9,
8472 "phv_lsb": 0,
8473 "is_pov": false,
8474 "field_msb": 15,
8475 "phv_msb": 15,
8476 "is_compiler_generated": false,
8477 "field_name": "ipv4_hdrChecksum",
8478 "field_width": 2,
8479 "field_lsb": 0
8480 }
8481 ]
8482 },
8483 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008484 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -07008485 "records": [
8486 {
8487 "word_bit_width": 32,
8488 "position_offset": 12,
8489 "phv_lsb": 0,
8490 "is_pov": false,
8491 "field_msb": 31,
8492 "phv_msb": 31,
8493 "is_compiler_generated": false,
8494 "field_name": "ipv4_srcAddr",
8495 "field_width": 4,
8496 "field_lsb": 0
8497 }
8498 ]
8499 },
8500 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008501 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -07008502 "records": [
8503 {
8504 "word_bit_width": 32,
8505 "position_offset": 50,
8506 "phv_lsb": 0,
8507 "is_pov": false,
8508 "field_msb": 31,
8509 "phv_msb": 31,
8510 "is_compiler_generated": false,
8511 "field_name": "ipv4_dstAddr",
8512 "field_width": 4,
8513 "field_lsb": 0
8514 }
8515 ]
8516 },
8517 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008518 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -07008519 "records": [
8520 {
8521 "word_bit_width": 32,
8522 "position_offset": 25,
8523 "phv_lsb": 0,
8524 "is_pov": false,
8525 "field_msb": 31,
8526 "phv_msb": 31,
8527 "is_compiler_generated": false,
8528 "field_name": "tcp_ackNo",
8529 "field_width": 4,
8530 "field_lsb": 0
8531 },
8532 {
8533 "word_bit_width": 32,
8534 "position_offset": 16,
8535 "phv_lsb": 16,
8536 "is_pov": false,
8537 "field_msb": 15,
8538 "phv_msb": 31,
8539 "is_compiler_generated": false,
8540 "field_name": "udp_length_",
8541 "field_width": 2,
8542 "field_lsb": 0
8543 },
8544 {
8545 "word_bit_width": 32,
8546 "position_offset": 59,
8547 "phv_lsb": 0,
8548 "is_pov": false,
8549 "field_msb": 15,
8550 "phv_msb": 15,
8551 "is_compiler_generated": false,
8552 "field_name": "udp_checksum",
8553 "field_width": 2,
8554 "field_lsb": 0
8555 }
8556 ]
8557 },
8558 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008559 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -07008560 "records": [
8561 {
8562 "word_bit_width": 32,
8563 "position_offset": 38,
8564 "phv_lsb": 28,
8565 "is_pov": false,
8566 "field_msb": 3,
8567 "phv_msb": 31,
8568 "is_compiler_generated": false,
8569 "field_name": "tcp_dataOffset",
8570 "field_width": 1,
8571 "field_lsb": 0
8572 },
8573 {
8574 "word_bit_width": 32,
8575 "position_offset": 58,
8576 "phv_lsb": 25,
8577 "is_pov": false,
8578 "field_msb": 2,
8579 "phv_msb": 27,
8580 "is_compiler_generated": false,
8581 "field_name": "tcp_res",
8582 "field_width": 1,
8583 "field_lsb": 0
8584 },
8585 {
8586 "word_bit_width": 32,
8587 "position_offset": 11,
8588 "phv_lsb": 22,
8589 "is_pov": false,
8590 "field_msb": 2,
8591 "phv_msb": 24,
8592 "is_compiler_generated": false,
8593 "field_name": "tcp_ecn",
8594 "field_width": 1,
8595 "field_lsb": 0
8596 },
8597 {
8598 "word_bit_width": 32,
8599 "position_offset": 34,
8600 "phv_lsb": 16,
8601 "is_pov": false,
8602 "field_msb": 5,
8603 "phv_msb": 21,
8604 "is_compiler_generated": false,
8605 "field_name": "tcp_ctrl",
8606 "field_width": 1,
8607 "field_lsb": 0
8608 },
8609 {
8610 "word_bit_width": 32,
8611 "position_offset": 41,
8612 "phv_lsb": 0,
8613 "is_pov": false,
8614 "field_msb": 15,
8615 "phv_msb": 15,
8616 "is_compiler_generated": false,
8617 "field_name": "tcp_window",
8618 "field_width": 2,
8619 "field_lsb": 0
8620 }
8621 ]
8622 },
8623 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008624 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -07008625 "records": [
8626 {
8627 "word_bit_width": 32,
8628 "position_offset": 2,
8629 "phv_lsb": 16,
8630 "is_pov": false,
8631 "field_msb": 15,
8632 "phv_msb": 31,
8633 "is_compiler_generated": false,
8634 "field_name": "tcp_checksum",
8635 "field_width": 2,
8636 "field_lsb": 0
8637 },
8638 {
8639 "word_bit_width": 32,
8640 "position_offset": 45,
8641 "phv_lsb": 0,
8642 "is_pov": false,
8643 "field_msb": 15,
8644 "phv_msb": 15,
8645 "is_compiler_generated": false,
8646 "field_name": "tcp_urgentPtr",
8647 "field_width": 2,
8648 "field_lsb": 0
8649 }
8650 ]
8651 },
8652 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008653 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -07008654 "records": [
8655 {
8656 "word_bit_width": 32,
8657 "position_offset": 19,
8658 "phv_lsb": 0,
8659 "is_pov": false,
8660 "field_msb": 39,
8661 "phv_msb": 31,
8662 "is_compiler_generated": false,
8663 "field_name": "ethernet_dstAddr",
8664 "field_width": 6,
8665 "field_lsb": 8
8666 }
8667 ]
8668 },
8669 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008670 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -07008671 "records": [
8672 {
8673 "word_bit_width": 32,
8674 "position_offset": 63,
8675 "phv_lsb": 0,
8676 "is_pov": false,
8677 "field_msb": 31,
8678 "phv_msb": 31,
8679 "is_compiler_generated": false,
8680 "field_name": "ethernet_srcAddr",
8681 "field_width": 6,
8682 "field_lsb": 0
8683 }
8684 ]
8685 },
8686 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008687 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -07008688 "records": [
8689 {
8690 "word_bit_width": 8,
8691 "position_offset": 29,
8692 "phv_lsb": 4,
8693 "is_pov": false,
8694 "field_msb": 3,
8695 "phv_msb": 7,
8696 "is_compiler_generated": false,
8697 "field_name": "ipv4_version",
8698 "field_width": 1,
8699 "field_lsb": 0
8700 },
8701 {
8702 "word_bit_width": 8,
8703 "position_offset": 37,
8704 "phv_lsb": 0,
8705 "is_pov": false,
8706 "field_msb": 3,
8707 "phv_msb": 3,
8708 "is_compiler_generated": false,
8709 "field_name": "ipv4_ihl",
8710 "field_width": 1,
8711 "field_lsb": 0
8712 }
8713 ]
8714 },
8715 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008716 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008717 "records": [
8718 {
8719 "word_bit_width": 8,
8720 "position_offset": 4,
8721 "phv_lsb": 0,
8722 "is_pov": false,
8723 "field_msb": 7,
8724 "phv_msb": 7,
8725 "is_compiler_generated": false,
8726 "field_name": "ipv4_diffserv",
8727 "field_width": 1,
8728 "field_lsb": 0
8729 }
8730 ]
8731 },
8732 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008733 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008734 "records": [
8735 {
8736 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07008737 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008738 "phv_lsb": 0,
8739 "is_pov": false,
8740 "field_msb": 15,
8741 "phv_msb": 7,
8742 "is_compiler_generated": false,
8743 "field_name": "tcp_srcPort",
8744 "field_width": 2,
8745 "field_lsb": 8
8746 },
8747 {
8748 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07008749 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008750 "phv_lsb": 0,
8751 "is_pov": false,
8752 "field_msb": 15,
8753 "phv_msb": 7,
8754 "is_compiler_generated": false,
8755 "field_name": "udp_srcPort",
8756 "field_width": 2,
8757 "field_lsb": 8
8758 }
8759 ]
8760 },
8761 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008762 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008763 "records": [
8764 {
8765 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07008766 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008767 "phv_lsb": 0,
8768 "is_pov": false,
8769 "field_msb": 7,
8770 "phv_msb": 7,
8771 "is_compiler_generated": false,
8772 "field_name": "tcp_srcPort",
8773 "field_width": 2,
8774 "field_lsb": 0
8775 },
8776 {
8777 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07008778 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008779 "phv_lsb": 0,
8780 "is_pov": false,
8781 "field_msb": 7,
8782 "phv_msb": 7,
8783 "is_compiler_generated": false,
8784 "field_name": "udp_srcPort",
8785 "field_width": 2,
8786 "field_lsb": 0
8787 }
8788 ]
8789 },
8790 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008791 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008792 "records": [
8793 {
8794 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07008795 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008796 "phv_lsb": 0,
8797 "is_pov": false,
8798 "field_msb": 47,
8799 "phv_msb": 7,
8800 "is_compiler_generated": false,
8801 "field_name": "ethernet_dstAddr",
8802 "field_width": 6,
8803 "field_lsb": 40
8804 }
8805 ]
8806 },
8807 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008808 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008809 "records": [
8810 {
8811 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07008812 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008813 "phv_lsb": 0,
8814 "is_pov": false,
8815 "field_msb": 39,
8816 "phv_msb": 7,
8817 "is_compiler_generated": false,
8818 "field_name": "ethernet_srcAddr",
8819 "field_width": 6,
8820 "field_lsb": 32
8821 }
8822 ]
8823 },
8824 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008825 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008826 "records": [
8827 {
8828 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07008829 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008830 "phv_lsb": 0,
8831 "is_pov": false,
8832 "field_msb": 15,
8833 "phv_msb": 15,
8834 "is_compiler_generated": false,
8835 "field_name": "ipv4_totalLen",
8836 "field_width": 2,
8837 "field_lsb": 0
8838 }
8839 ]
8840 },
8841 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008842 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008843 "records": [
8844 {
8845 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07008846 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008847 "phv_lsb": 0,
8848 "is_pov": false,
8849 "field_msb": 15,
8850 "phv_msb": 15,
8851 "is_compiler_generated": false,
8852 "field_name": "ipv4_identification",
8853 "field_width": 2,
8854 "field_lsb": 0
8855 }
8856 ]
8857 },
8858 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008859 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008860 "records": [
8861 {
8862 "word_bit_width": 16,
8863 "position_offset": 8,
8864 "phv_lsb": 13,
8865 "is_pov": false,
8866 "field_msb": 2,
8867 "phv_msb": 15,
8868 "is_compiler_generated": false,
8869 "field_name": "ipv4_flags",
8870 "field_width": 1,
8871 "field_lsb": 0
8872 },
8873 {
8874 "word_bit_width": 16,
8875 "position_offset": 5,
8876 "phv_lsb": 0,
8877 "is_pov": false,
8878 "field_msb": 12,
8879 "phv_msb": 12,
8880 "is_compiler_generated": false,
8881 "field_name": "ipv4_fragOffset",
8882 "field_width": 2,
8883 "field_lsb": 0
8884 }
8885 ]
8886 },
8887 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008888 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008889 "records": [
8890 {
8891 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07008892 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008893 "phv_lsb": 0,
8894 "is_pov": false,
8895 "field_msb": 15,
8896 "phv_msb": 15,
8897 "is_compiler_generated": false,
8898 "field_name": "tcp_dstPort",
8899 "field_width": 2,
8900 "field_lsb": 0
8901 },
8902 {
8903 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07008904 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008905 "phv_lsb": 0,
8906 "is_pov": false,
8907 "field_msb": 15,
8908 "phv_msb": 15,
8909 "is_compiler_generated": false,
8910 "field_name": "udp_dstPort",
8911 "field_width": 2,
8912 "field_lsb": 0
8913 }
8914 ]
8915 },
8916 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008917 "phv_number": 330,
8918 "records": [
8919 {
8920 "word_bit_width": 16,
8921 "position_offset": 69,
8922 "phv_lsb": 0,
8923 "is_pov": false,
8924 "field_msb": 31,
8925 "phv_msb": 15,
8926 "is_compiler_generated": false,
8927 "field_name": "tcp_seqNo",
8928 "field_width": 4,
8929 "field_lsb": 16
8930 }
8931 ]
8932 },
8933 {
8934 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008935 "records": [
8936 {
8937 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07008938 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008939 "phv_lsb": 0,
8940 "is_pov": false,
8941 "field_msb": 15,
8942 "phv_msb": 15,
8943 "is_compiler_generated": false,
8944 "field_name": "tcp_seqNo",
8945 "field_width": 4,
8946 "field_lsb": 0
8947 }
8948 ]
8949 },
8950 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008951 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008952 "records": [
8953 {
8954 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07008955 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008956 "phv_lsb": 8,
8957 "is_pov": false,
8958 "field_msb": 7,
8959 "phv_msb": 15,
8960 "is_compiler_generated": false,
8961 "field_name": "ethernet_dstAddr",
8962 "field_width": 6,
8963 "field_lsb": 0
8964 },
8965 {
8966 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07008967 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008968 "phv_lsb": 0,
8969 "is_pov": false,
8970 "field_msb": 47,
8971 "phv_msb": 7,
8972 "is_compiler_generated": false,
8973 "field_name": "ethernet_srcAddr",
8974 "field_width": 6,
8975 "field_lsb": 40
8976 }
8977 ]
8978 },
8979 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008980 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008981 "records": [
8982 {
8983 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07008984 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008985 "phv_lsb": 0,
8986 "is_pov": false,
8987 "field_msb": 15,
8988 "phv_msb": 15,
8989 "is_compiler_generated": false,
8990 "field_name": "ethernet_etherType",
8991 "field_width": 2,
8992 "field_lsb": 0
8993 }
8994 ]
8995 },
8996 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02008997 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02008998 "records": [
8999 {
9000 "word_bit_width": 16,
9001 "position_offset": 0,
9002 "phv_lsb": 7,
9003 "is_pov": false,
9004 "field_msb": 8,
9005 "phv_msb": 15,
9006 "is_compiler_generated": false,
9007 "field_name": "packet_out_hdr_egress_port",
9008 "field_width": 2,
9009 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07009010 },
9011 {
9012 "word_bit_width": 16,
9013 "position_offset": 30,
9014 "phv_lsb": 7,
9015 "is_pov": false,
9016 "field_msb": 8,
9017 "phv_msb": 15,
9018 "is_compiler_generated": false,
9019 "field_name": "packet_in_hdr_ingress_port",
9020 "field_width": 2,
9021 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009022 }
9023 ]
9024 }
9025 ],
9026 "stage_number": 5
9027 },
9028 {
9029 "ingress": [
9030 {
9031 "phv_number": 0,
9032 "records": [
9033 {
9034 "word_bit_width": 32,
9035 "position_offset": 0,
9036 "phv_lsb": 0,
9037 "is_pov": true,
9038 "pov_headers": [],
9039 "field_msb": 31,
9040 "phv_msb": 31,
9041 "is_compiler_generated": false,
9042 "field_name": "POV",
9043 "field_width": 0,
9044 "field_lsb": 0
9045 }
9046 ]
9047 },
9048 {
9049 "phv_number": 1,
9050 "records": [
9051 {
9052 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009053 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009054 "phv_lsb": 24,
9055 "is_pov": false,
9056 "field_msb": 7,
9057 "phv_msb": 31,
9058 "is_compiler_generated": false,
9059 "field_name": "ipv4_protocol",
9060 "field_width": 1,
9061 "field_lsb": 0
9062 },
9063 {
9064 "word_bit_width": 32,
9065 "position_offset": 10,
9066 "phv_lsb": 8,
9067 "is_pov": false,
9068 "field_msb": 15,
9069 "phv_msb": 23,
9070 "is_compiler_generated": false,
9071 "field_name": "ipv4_hdrChecksum",
9072 "field_width": 2,
9073 "field_lsb": 0
9074 },
9075 {
9076 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009077 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009078 "phv_lsb": 0,
9079 "is_pov": false,
9080 "field_msb": 31,
9081 "phv_msb": 7,
9082 "is_compiler_generated": false,
9083 "field_name": "ipv4_srcAddr",
9084 "field_width": 4,
9085 "field_lsb": 24
9086 }
9087 ]
9088 },
9089 {
9090 "phv_number": 2,
9091 "records": [
9092 {
9093 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009094 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009095 "phv_lsb": 0,
9096 "is_pov": false,
9097 "field_msb": 31,
9098 "phv_msb": 31,
9099 "is_compiler_generated": false,
9100 "field_name": "ipv4_dstAddr",
9101 "field_width": 4,
9102 "field_lsb": 0
9103 }
9104 ]
9105 },
9106 {
9107 "phv_number": 3,
9108 "records": [
9109 {
9110 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +02009111 "position_offset": 33,
9112 "phv_lsb": 24,
9113 "is_pov": false,
9114 "field_msb": 7,
9115 "phv_msb": 31,
9116 "is_compiler_generated": false,
9117 "field_name": "tcp_dstPort",
9118 "field_width": 2,
9119 "field_lsb": 0
9120 },
9121 {
9122 "word_bit_width": 32,
9123 "position_offset": 76,
9124 "phv_lsb": 0,
9125 "is_pov": false,
9126 "field_msb": 31,
9127 "phv_msb": 23,
9128 "is_compiler_generated": false,
9129 "field_name": "tcp_seqNo",
9130 "field_width": 4,
9131 "field_lsb": 8
9132 }
9133 ]
9134 },
9135 {
9136 "phv_number": 4,
9137 "records": [
9138 {
9139 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009140 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009141 "phv_lsb": 0,
9142 "is_pov": false,
9143 "field_msb": 39,
9144 "phv_msb": 31,
9145 "is_compiler_generated": false,
9146 "field_name": "ethernet_dstAddr",
9147 "field_width": 6,
9148 "field_lsb": 8
9149 }
9150 ]
9151 },
9152 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009153 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009154 "records": [
9155 {
9156 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009157 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009158 "phv_lsb": 0,
9159 "is_pov": false,
9160 "field_msb": 31,
9161 "phv_msb": 31,
9162 "is_compiler_generated": false,
9163 "field_name": "ethernet_srcAddr",
9164 "field_width": 6,
9165 "field_lsb": 0
9166 }
9167 ]
9168 },
9169 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009170 "phv_number": 64,
9171 "records": [
9172 {
9173 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07009174 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009175 "phv_lsb": 0,
9176 "is_pov": false,
9177 "field_msb": 23,
9178 "phv_msb": 7,
9179 "is_compiler_generated": false,
9180 "field_name": "ipv4_srcAddr",
9181 "field_width": 4,
9182 "field_lsb": 16
9183 }
9184 ]
9185 },
9186 {
Brian O'Connora6862e02017-09-08 01:17:39 -07009187 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009188 "records": [
9189 {
9190 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02009191 "position_offset": 38,
9192 "phv_lsb": 0,
9193 "is_pov": false,
9194 "field_msb": 15,
9195 "phv_msb": 7,
9196 "is_compiler_generated": false,
9197 "field_name": "tcp_srcPort",
9198 "field_width": 2,
9199 "field_lsb": 8
9200 },
9201 {
9202 "word_bit_width": 8,
9203 "position_offset": 66,
9204 "phv_lsb": 0,
9205 "is_pov": false,
9206 "field_msb": 7,
9207 "phv_msb": 7,
9208 "is_compiler_generated": false,
9209 "field_name": "udp_srcPort",
9210 "field_width": 2,
9211 "field_lsb": 0
9212 }
9213 ]
9214 },
9215 {
9216 "phv_number": 66,
9217 "records": [
9218 {
9219 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009220 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009221 "phv_lsb": 0,
9222 "is_pov": false,
9223 "field_msb": 47,
9224 "phv_msb": 7,
9225 "is_compiler_generated": false,
9226 "field_name": "ethernet_dstAddr",
9227 "field_width": 6,
9228 "field_lsb": 40
9229 }
9230 ]
9231 },
9232 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009233 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009234 "records": [
9235 {
9236 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07009237 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009238 "phv_lsb": 0,
9239 "is_pov": false,
9240 "field_msb": 39,
9241 "phv_msb": 7,
9242 "is_compiler_generated": false,
9243 "field_name": "ethernet_srcAddr",
9244 "field_width": 6,
9245 "field_lsb": 32
9246 }
9247 ]
9248 },
9249 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009250 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009251 "records": [
9252 {
9253 "word_bit_width": 8,
9254 "position_offset": 0,
9255 "phv_lsb": 0,
9256 "is_pov": true,
9257 "pov_headers": [
9258 {
9259 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -07009260 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009261 "header_name": "packet_in_hdr",
9262 "hidden": false
9263 },
9264 {
9265 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -07009266 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009267 "header_name": "packet_out_hdr",
9268 "hidden": false
9269 },
9270 {
9271 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -07009272 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009273 "header_name": "ethernet",
9274 "hidden": false
9275 },
9276 {
9277 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -07009278 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009279 "header_name": "ipv4",
9280 "hidden": false
9281 },
9282 {
9283 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07009284 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009285 "header_name": "tcp",
9286 "hidden": false
9287 },
9288 {
9289 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -07009290 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009291 "header_name": "udp",
9292 "hidden": false
9293 }
9294 ],
9295 "field_msb": 39,
9296 "phv_msb": 7,
9297 "is_compiler_generated": false,
9298 "field_name": "POV",
9299 "field_width": 0,
9300 "field_lsb": 32
9301 }
9302 ]
9303 },
9304 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009305 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009306 "records": [
9307 {
9308 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07009309 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009310 "phv_lsb": 5,
9311 "is_pov": false,
9312 "field_msb": 2,
9313 "phv_msb": 7,
9314 "is_compiler_generated": false,
9315 "field_name": "ig_intr_md_for_tm_drop_ctl",
9316 "field_width": 1,
9317 "field_lsb": 0
9318 }
9319 ]
9320 },
9321 {
9322 "phv_number": 128,
9323 "records": [
9324 {
9325 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009326 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009327 "phv_lsb": 15,
9328 "is_pov": false,
9329 "field_msb": 0,
9330 "phv_msb": 15,
9331 "is_compiler_generated": false,
9332 "field_name": "ig_intr_md_resubmit_flag",
9333 "field_width": 1,
9334 "field_lsb": 0
9335 },
9336 {
9337 "word_bit_width": 16,
9338 "position_offset": 8,
9339 "phv_lsb": 0,
9340 "is_pov": false,
9341 "field_msb": 8,
9342 "phv_msb": 8,
9343 "is_compiler_generated": false,
9344 "field_name": "ig_intr_md_ingress_port",
9345 "field_width": 2,
9346 "field_lsb": 0
9347 }
9348 ]
9349 },
9350 {
9351 "phv_number": 129,
9352 "records": [
9353 {
9354 "word_bit_width": 16,
9355 "position_offset": 0,
9356 "phv_lsb": 7,
9357 "is_pov": false,
9358 "field_msb": 8,
9359 "phv_msb": 15,
9360 "is_compiler_generated": false,
9361 "field_name": "packet_out_hdr_egress_port",
9362 "field_width": 2,
9363 "field_lsb": 0
9364 },
9365 {
9366 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009367 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009368 "phv_lsb": 7,
9369 "is_pov": false,
9370 "field_msb": 8,
9371 "phv_msb": 15,
9372 "is_compiler_generated": false,
9373 "field_name": "packet_in_hdr_ingress_port",
9374 "field_width": 2,
9375 "field_lsb": 0
9376 }
9377 ]
9378 },
9379 {
9380 "phv_number": 130,
9381 "records": [
9382 {
9383 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07009384 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009385 "phv_lsb": 0,
9386 "is_pov": false,
9387 "field_msb": 8,
9388 "phv_msb": 8,
9389 "is_compiler_generated": false,
9390 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
9391 "field_width": 2,
9392 "field_lsb": 0
9393 }
9394 ]
9395 },
9396 {
9397 "phv_number": 131,
9398 "records": [
9399 {
9400 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07009401 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009402 "phv_lsb": 0,
9403 "is_pov": false,
9404 "field_msb": 15,
9405 "phv_msb": 15,
9406 "is_compiler_generated": false,
9407 "field_name": "ipv4_srcAddr",
9408 "field_width": 4,
9409 "field_lsb": 0
9410 }
9411 ]
9412 },
9413 {
9414 "phv_number": 132,
9415 "records": [
9416 {
9417 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +02009418 "position_offset": 38,
9419 "phv_lsb": 8,
9420 "is_pov": false,
9421 "field_msb": 7,
9422 "phv_msb": 15,
9423 "is_compiler_generated": false,
9424 "field_name": "tcp_srcPort",
9425 "field_width": 2,
9426 "field_lsb": 0
9427 },
9428 {
9429 "word_bit_width": 16,
9430 "position_offset": 33,
9431 "phv_lsb": 0,
9432 "is_pov": false,
9433 "field_msb": 15,
9434 "phv_msb": 7,
9435 "is_compiler_generated": false,
9436 "field_name": "tcp_dstPort",
9437 "field_width": 2,
9438 "field_lsb": 8
9439 }
9440 ]
9441 },
9442 {
9443 "phv_number": 133,
9444 "records": [
9445 {
9446 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009447 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009448 "phv_lsb": 8,
9449 "is_pov": false,
9450 "field_msb": 7,
9451 "phv_msb": 15,
9452 "is_compiler_generated": false,
9453 "field_name": "ethernet_dstAddr",
9454 "field_width": 6,
9455 "field_lsb": 0
9456 },
9457 {
9458 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07009459 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009460 "phv_lsb": 0,
9461 "is_pov": false,
9462 "field_msb": 47,
9463 "phv_msb": 7,
9464 "is_compiler_generated": false,
9465 "field_name": "ethernet_srcAddr",
9466 "field_width": 6,
9467 "field_lsb": 40
9468 }
9469 ]
9470 },
9471 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009472 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009473 "records": [
9474 {
9475 "word_bit_width": 16,
9476 "position_offset": 5,
9477 "phv_lsb": 0,
9478 "is_pov": false,
9479 "field_msb": 15,
9480 "phv_msb": 15,
9481 "is_compiler_generated": false,
9482 "field_name": "ethernet_etherType",
9483 "field_width": 2,
9484 "field_lsb": 0
9485 }
9486 ]
9487 },
9488 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009489 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009490 "records": [
9491 {
9492 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009493 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009494 "phv_lsb": 0,
9495 "is_pov": false,
9496 "field_msb": 15,
9497 "phv_msb": 15,
9498 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009499 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009500 "field_width": 2,
9501 "field_lsb": 0
9502 }
9503 ]
9504 },
9505 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009506 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009507 "records": [
9508 {
9509 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -07009510 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009511 "phv_lsb": 0,
9512 "is_pov": false,
9513 "field_msb": 15,
9514 "phv_msb": 15,
9515 "is_compiler_generated": false,
9516 "field_name": "ecmp_metadata_selector",
9517 "field_width": 2,
9518 "field_lsb": 0
9519 }
9520 ]
9521 },
9522 {
9523 "phv_number": 256,
9524 "records": [
9525 {
9526 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009527 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009528 "phv_lsb": 24,
9529 "is_pov": false,
9530 "field_msb": 7,
9531 "phv_msb": 31,
9532 "is_compiler_generated": false,
9533 "field_name": "ipv4_identification",
9534 "field_width": 2,
9535 "field_lsb": 0
9536 },
9537 {
9538 "word_bit_width": 32,
9539 "position_offset": 7,
9540 "phv_lsb": 21,
9541 "is_pov": false,
9542 "field_msb": 2,
9543 "phv_msb": 23,
9544 "is_compiler_generated": false,
9545 "field_name": "ipv4_flags",
9546 "field_width": 1,
9547 "field_lsb": 0
9548 },
9549 {
9550 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009551 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009552 "phv_lsb": 8,
9553 "is_pov": false,
9554 "field_msb": 12,
9555 "phv_msb": 20,
9556 "is_compiler_generated": false,
9557 "field_name": "ipv4_fragOffset",
9558 "field_width": 2,
9559 "field_lsb": 0
9560 },
9561 {
9562 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009563 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009564 "phv_lsb": 0,
9565 "is_pov": false,
9566 "field_msb": 7,
9567 "phv_msb": 7,
9568 "is_compiler_generated": false,
9569 "field_name": "ipv4_ttl",
9570 "field_width": 1,
9571 "field_lsb": 0
9572 }
9573 ]
9574 },
9575 {
9576 "phv_number": 257,
9577 "records": [
9578 {
9579 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009580 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009581 "phv_lsb": 28,
9582 "is_pov": false,
9583 "field_msb": 3,
9584 "phv_msb": 31,
9585 "is_compiler_generated": false,
9586 "field_name": "tcp_dataOffset",
9587 "field_width": 1,
9588 "field_lsb": 0
9589 },
9590 {
9591 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009592 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009593 "phv_lsb": 25,
9594 "is_pov": false,
9595 "field_msb": 2,
9596 "phv_msb": 27,
9597 "is_compiler_generated": false,
9598 "field_name": "tcp_res",
9599 "field_width": 1,
9600 "field_lsb": 0
9601 },
9602 {
9603 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009604 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009605 "phv_lsb": 22,
9606 "is_pov": false,
9607 "field_msb": 2,
9608 "phv_msb": 24,
9609 "is_compiler_generated": false,
9610 "field_name": "tcp_ecn",
9611 "field_width": 1,
9612 "field_lsb": 0
9613 },
9614 {
9615 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009616 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009617 "phv_lsb": 16,
9618 "is_pov": false,
9619 "field_msb": 5,
9620 "phv_msb": 21,
9621 "is_compiler_generated": false,
9622 "field_name": "tcp_ctrl",
9623 "field_width": 1,
9624 "field_lsb": 0
9625 },
9626 {
9627 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009628 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009629 "phv_lsb": 0,
9630 "is_pov": false,
9631 "field_msb": 15,
9632 "phv_msb": 15,
9633 "is_compiler_generated": false,
9634 "field_name": "tcp_window",
9635 "field_width": 2,
9636 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +02009637 },
9638 {
9639 "word_bit_width": 32,
9640 "position_offset": 17,
9641 "phv_lsb": 16,
9642 "is_pov": false,
9643 "field_msb": 15,
9644 "phv_msb": 31,
9645 "is_compiler_generated": false,
9646 "field_name": "udp_length_",
9647 "field_width": 2,
9648 "field_lsb": 0
9649 },
9650 {
9651 "word_bit_width": 32,
9652 "position_offset": 68,
9653 "phv_lsb": 0,
9654 "is_pov": false,
9655 "field_msb": 15,
9656 "phv_msb": 15,
9657 "is_compiler_generated": false,
9658 "field_name": "udp_checksum",
9659 "field_width": 2,
9660 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009661 }
9662 ]
9663 },
9664 {
Brian O'Connora6862e02017-09-08 01:17:39 -07009665 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009666 "records": [
9667 {
9668 "word_bit_width": 32,
9669 "position_offset": 2,
9670 "phv_lsb": 16,
9671 "is_pov": false,
9672 "field_msb": 15,
9673 "phv_msb": 31,
9674 "is_compiler_generated": false,
9675 "field_name": "tcp_checksum",
9676 "field_width": 2,
9677 "field_lsb": 0
9678 },
9679 {
9680 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -07009681 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009682 "phv_lsb": 0,
9683 "is_pov": false,
9684 "field_msb": 15,
9685 "phv_msb": 15,
9686 "is_compiler_generated": false,
9687 "field_name": "tcp_urgentPtr",
9688 "field_width": 2,
9689 "field_lsb": 0
9690 }
9691 ]
9692 },
9693 {
Brian O'Connora6862e02017-09-08 01:17:39 -07009694 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009695 "records": [
9696 {
9697 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -07009698 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +02009699 "phv_lsb": 4,
9700 "is_pov": false,
9701 "field_msb": 3,
9702 "phv_msb": 7,
9703 "is_compiler_generated": false,
9704 "field_name": "ipv4_version",
9705 "field_width": 1,
9706 "field_lsb": 0
9707 },
9708 {
9709 "word_bit_width": 8,
9710 "position_offset": 40,
9711 "phv_lsb": 0,
9712 "is_pov": false,
9713 "field_msb": 3,
9714 "phv_msb": 3,
9715 "is_compiler_generated": false,
9716 "field_name": "ipv4_ihl",
9717 "field_width": 1,
9718 "field_lsb": 0
9719 }
9720 ]
9721 },
9722 {
Brian O'Connora6862e02017-09-08 01:17:39 -07009723 "phv_number": 289,
9724 "records": [
9725 {
9726 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02009727 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -07009728 "phv_lsb": 0,
9729 "is_pov": false,
9730 "field_msb": 7,
9731 "phv_msb": 7,
9732 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02009733 "field_name": "tcp_seqNo",
9734 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -07009735 "field_lsb": 0
9736 },
9737 {
9738 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +02009739 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -07009740 "phv_lsb": 0,
9741 "is_pov": false,
9742 "field_msb": 15,
9743 "phv_msb": 7,
9744 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +02009745 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -07009746 "field_width": 2,
9747 "field_lsb": 8
9748 }
9749 ]
9750 },
9751 {
Brian O'Connora6862e02017-09-08 01:17:39 -07009752 "phv_number": 320,
9753 "records": [
9754 {
9755 "word_bit_width": 16,
9756 "position_offset": 4,
9757 "phv_lsb": 8,
9758 "is_pov": false,
9759 "field_msb": 7,
9760 "phv_msb": 15,
9761 "is_compiler_generated": false,
9762 "field_name": "ipv4_diffserv",
9763 "field_width": 1,
9764 "field_lsb": 0
9765 },
9766 {
9767 "word_bit_width": 16,
9768 "position_offset": 63,
9769 "phv_lsb": 0,
9770 "is_pov": false,
9771 "field_msb": 15,
9772 "phv_msb": 7,
9773 "is_compiler_generated": false,
9774 "field_name": "ipv4_totalLen",
9775 "field_width": 2,
9776 "field_lsb": 8
9777 }
9778 ]
9779 },
9780 {
9781 "phv_number": 321,
9782 "records": [
9783 {
9784 "word_bit_width": 16,
9785 "position_offset": 63,
9786 "phv_lsb": 8,
9787 "is_pov": false,
9788 "field_msb": 7,
9789 "phv_msb": 15,
9790 "is_compiler_generated": false,
9791 "field_name": "ipv4_totalLen",
9792 "field_width": 2,
9793 "field_lsb": 0
9794 },
9795 {
9796 "word_bit_width": 16,
9797 "position_offset": 49,
9798 "phv_lsb": 0,
9799 "is_pov": false,
9800 "field_msb": 15,
9801 "phv_msb": 7,
9802 "is_compiler_generated": false,
9803 "field_name": "ipv4_identification",
9804 "field_width": 2,
9805 "field_lsb": 8
9806 }
9807 ]
9808 },
9809 {
9810 "phv_number": 322,
9811 "records": [
9812 {
9813 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009814 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07009815 "phv_lsb": 0,
9816 "is_pov": false,
9817 "field_msb": 31,
9818 "phv_msb": 15,
9819 "is_compiler_generated": false,
9820 "field_name": "tcp_ackNo",
9821 "field_width": 4,
9822 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +02009823 },
9824 {
9825 "word_bit_width": 16,
9826 "position_offset": 55,
9827 "phv_lsb": 0,
9828 "is_pov": false,
9829 "field_msb": 15,
9830 "phv_msb": 15,
9831 "is_compiler_generated": false,
9832 "field_name": "udp_dstPort",
9833 "field_width": 2,
9834 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -07009835 }
9836 ]
9837 },
9838 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009839 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -07009840 "records": [
9841 {
9842 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +02009843 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -07009844 "phv_lsb": 0,
9845 "is_pov": false,
9846 "field_msb": 15,
9847 "phv_msb": 15,
9848 "is_compiler_generated": false,
9849 "field_name": "tcp_ackNo",
9850 "field_width": 4,
9851 "field_lsb": 0
9852 }
9853 ]
9854 }
9855 ],
9856 "egress": [
9857 {
9858 "phv_number": 80,
9859 "records": [
9860 {
9861 "word_bit_width": 8,
9862 "position_offset": 7,
9863 "phv_lsb": 0,
9864 "is_pov": false,
9865 "field_msb": 2,
9866 "phv_msb": 2,
9867 "is_compiler_generated": false,
9868 "field_name": "eg_intr_md_egress_cos",
9869 "field_width": 1,
9870 "field_lsb": 0
9871 }
9872 ]
9873 },
9874 {
9875 "phv_number": 81,
9876 "records": [
9877 {
9878 "word_bit_width": 8,
9879 "position_offset": 0,
9880 "phv_lsb": 0,
9881 "is_pov": true,
9882 "pov_headers": [
9883 {
9884 "bit_index": 0,
9885 "position_offset": 73,
9886 "header_name": "packet_in_hdr",
9887 "hidden": false
9888 },
9889 {
9890 "bit_index": 1,
9891 "position_offset": 74,
9892 "header_name": "packet_out_hdr",
9893 "hidden": false
9894 },
9895 {
9896 "bit_index": 2,
9897 "position_offset": 75,
9898 "header_name": "ethernet",
9899 "hidden": false
9900 },
9901 {
9902 "bit_index": 3,
9903 "position_offset": 76,
9904 "header_name": "ipv4",
9905 "hidden": false
9906 },
9907 {
9908 "bit_index": 4,
9909 "position_offset": 77,
9910 "header_name": "tcp",
9911 "hidden": false
9912 },
9913 {
9914 "bit_index": 5,
9915 "position_offset": 78,
9916 "header_name": "udp",
9917 "hidden": false
9918 }
9919 ],
9920 "field_msb": 7,
9921 "phv_msb": 7,
9922 "is_compiler_generated": false,
9923 "field_name": "POV",
9924 "field_width": 0,
9925 "field_lsb": 0
9926 }
9927 ]
9928 },
9929 {
9930 "phv_number": 144,
9931 "records": [
9932 {
9933 "word_bit_width": 16,
9934 "position_offset": 61,
9935 "phv_lsb": 0,
9936 "is_pov": false,
9937 "field_msb": 8,
9938 "phv_msb": 8,
9939 "is_compiler_generated": false,
9940 "field_name": "eg_intr_md_egress_port",
9941 "field_width": 2,
9942 "field_lsb": 0
9943 }
9944 ]
9945 },
9946 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009947 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -07009948 "records": [
9949 {
9950 "word_bit_width": 32,
9951 "position_offset": 47,
9952 "phv_lsb": 24,
9953 "is_pov": false,
9954 "field_msb": 7,
9955 "phv_msb": 31,
9956 "is_compiler_generated": false,
9957 "field_name": "ipv4_ttl",
9958 "field_width": 1,
9959 "field_lsb": 0
9960 },
9961 {
9962 "word_bit_width": 32,
9963 "position_offset": 18,
9964 "phv_lsb": 16,
9965 "is_pov": false,
9966 "field_msb": 7,
9967 "phv_msb": 23,
9968 "is_compiler_generated": false,
9969 "field_name": "ipv4_protocol",
9970 "field_width": 1,
9971 "field_lsb": 0
9972 },
9973 {
9974 "word_bit_width": 32,
9975 "position_offset": 9,
9976 "phv_lsb": 0,
9977 "is_pov": false,
9978 "field_msb": 15,
9979 "phv_msb": 15,
9980 "is_compiler_generated": false,
9981 "field_name": "ipv4_hdrChecksum",
9982 "field_width": 2,
9983 "field_lsb": 0
9984 }
9985 ]
9986 },
9987 {
Carmelo Cascone6230a612017-09-13 03:25:41 +02009988 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -07009989 "records": [
9990 {
9991 "word_bit_width": 32,
9992 "position_offset": 12,
9993 "phv_lsb": 0,
9994 "is_pov": false,
9995 "field_msb": 31,
9996 "phv_msb": 31,
9997 "is_compiler_generated": false,
9998 "field_name": "ipv4_srcAddr",
9999 "field_width": 4,
10000 "field_lsb": 0
10001 }
10002 ]
10003 },
10004 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010005 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -070010006 "records": [
10007 {
10008 "word_bit_width": 32,
10009 "position_offset": 50,
10010 "phv_lsb": 0,
10011 "is_pov": false,
10012 "field_msb": 31,
10013 "phv_msb": 31,
10014 "is_compiler_generated": false,
10015 "field_name": "ipv4_dstAddr",
10016 "field_width": 4,
10017 "field_lsb": 0
10018 }
10019 ]
10020 },
10021 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010022 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -070010023 "records": [
10024 {
10025 "word_bit_width": 32,
10026 "position_offset": 25,
10027 "phv_lsb": 0,
10028 "is_pov": false,
10029 "field_msb": 31,
10030 "phv_msb": 31,
10031 "is_compiler_generated": false,
10032 "field_name": "tcp_ackNo",
10033 "field_width": 4,
10034 "field_lsb": 0
10035 },
10036 {
10037 "word_bit_width": 32,
10038 "position_offset": 16,
10039 "phv_lsb": 16,
10040 "is_pov": false,
10041 "field_msb": 15,
10042 "phv_msb": 31,
10043 "is_compiler_generated": false,
10044 "field_name": "udp_length_",
10045 "field_width": 2,
10046 "field_lsb": 0
10047 },
10048 {
10049 "word_bit_width": 32,
10050 "position_offset": 59,
10051 "phv_lsb": 0,
10052 "is_pov": false,
10053 "field_msb": 15,
10054 "phv_msb": 15,
10055 "is_compiler_generated": false,
10056 "field_name": "udp_checksum",
10057 "field_width": 2,
10058 "field_lsb": 0
10059 }
10060 ]
10061 },
10062 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010063 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -070010064 "records": [
10065 {
10066 "word_bit_width": 32,
10067 "position_offset": 38,
10068 "phv_lsb": 28,
10069 "is_pov": false,
10070 "field_msb": 3,
10071 "phv_msb": 31,
10072 "is_compiler_generated": false,
10073 "field_name": "tcp_dataOffset",
10074 "field_width": 1,
10075 "field_lsb": 0
10076 },
10077 {
10078 "word_bit_width": 32,
10079 "position_offset": 58,
10080 "phv_lsb": 25,
10081 "is_pov": false,
10082 "field_msb": 2,
10083 "phv_msb": 27,
10084 "is_compiler_generated": false,
10085 "field_name": "tcp_res",
10086 "field_width": 1,
10087 "field_lsb": 0
10088 },
10089 {
10090 "word_bit_width": 32,
10091 "position_offset": 11,
10092 "phv_lsb": 22,
10093 "is_pov": false,
10094 "field_msb": 2,
10095 "phv_msb": 24,
10096 "is_compiler_generated": false,
10097 "field_name": "tcp_ecn",
10098 "field_width": 1,
10099 "field_lsb": 0
10100 },
10101 {
10102 "word_bit_width": 32,
10103 "position_offset": 34,
10104 "phv_lsb": 16,
10105 "is_pov": false,
10106 "field_msb": 5,
10107 "phv_msb": 21,
10108 "is_compiler_generated": false,
10109 "field_name": "tcp_ctrl",
10110 "field_width": 1,
10111 "field_lsb": 0
10112 },
10113 {
10114 "word_bit_width": 32,
10115 "position_offset": 41,
10116 "phv_lsb": 0,
10117 "is_pov": false,
10118 "field_msb": 15,
10119 "phv_msb": 15,
10120 "is_compiler_generated": false,
10121 "field_name": "tcp_window",
10122 "field_width": 2,
10123 "field_lsb": 0
10124 }
10125 ]
10126 },
10127 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010128 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -070010129 "records": [
10130 {
10131 "word_bit_width": 32,
10132 "position_offset": 2,
10133 "phv_lsb": 16,
10134 "is_pov": false,
10135 "field_msb": 15,
10136 "phv_msb": 31,
10137 "is_compiler_generated": false,
10138 "field_name": "tcp_checksum",
10139 "field_width": 2,
10140 "field_lsb": 0
10141 },
10142 {
10143 "word_bit_width": 32,
10144 "position_offset": 45,
10145 "phv_lsb": 0,
10146 "is_pov": false,
10147 "field_msb": 15,
10148 "phv_msb": 15,
10149 "is_compiler_generated": false,
10150 "field_name": "tcp_urgentPtr",
10151 "field_width": 2,
10152 "field_lsb": 0
10153 }
10154 ]
10155 },
10156 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010157 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -070010158 "records": [
10159 {
10160 "word_bit_width": 32,
10161 "position_offset": 19,
10162 "phv_lsb": 0,
10163 "is_pov": false,
10164 "field_msb": 39,
10165 "phv_msb": 31,
10166 "is_compiler_generated": false,
10167 "field_name": "ethernet_dstAddr",
10168 "field_width": 6,
10169 "field_lsb": 8
10170 }
10171 ]
10172 },
10173 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010174 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -070010175 "records": [
10176 {
10177 "word_bit_width": 32,
10178 "position_offset": 63,
10179 "phv_lsb": 0,
10180 "is_pov": false,
10181 "field_msb": 31,
10182 "phv_msb": 31,
10183 "is_compiler_generated": false,
10184 "field_name": "ethernet_srcAddr",
10185 "field_width": 6,
10186 "field_lsb": 0
10187 }
10188 ]
10189 },
10190 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010191 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -070010192 "records": [
10193 {
10194 "word_bit_width": 8,
10195 "position_offset": 29,
10196 "phv_lsb": 4,
10197 "is_pov": false,
10198 "field_msb": 3,
10199 "phv_msb": 7,
10200 "is_compiler_generated": false,
10201 "field_name": "ipv4_version",
10202 "field_width": 1,
10203 "field_lsb": 0
10204 },
10205 {
10206 "word_bit_width": 8,
10207 "position_offset": 37,
10208 "phv_lsb": 0,
10209 "is_pov": false,
10210 "field_msb": 3,
10211 "phv_msb": 3,
10212 "is_compiler_generated": false,
10213 "field_name": "ipv4_ihl",
10214 "field_width": 1,
10215 "field_lsb": 0
10216 }
10217 ]
10218 },
10219 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010220 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010221 "records": [
10222 {
10223 "word_bit_width": 8,
10224 "position_offset": 4,
10225 "phv_lsb": 0,
10226 "is_pov": false,
10227 "field_msb": 7,
10228 "phv_msb": 7,
10229 "is_compiler_generated": false,
10230 "field_name": "ipv4_diffserv",
10231 "field_width": 1,
10232 "field_lsb": 0
10233 }
10234 ]
10235 },
10236 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010237 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010238 "records": [
10239 {
10240 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070010241 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010242 "phv_lsb": 0,
10243 "is_pov": false,
10244 "field_msb": 15,
10245 "phv_msb": 7,
10246 "is_compiler_generated": false,
10247 "field_name": "tcp_srcPort",
10248 "field_width": 2,
10249 "field_lsb": 8
10250 },
10251 {
10252 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070010253 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010254 "phv_lsb": 0,
10255 "is_pov": false,
10256 "field_msb": 15,
10257 "phv_msb": 7,
10258 "is_compiler_generated": false,
10259 "field_name": "udp_srcPort",
10260 "field_width": 2,
10261 "field_lsb": 8
10262 }
10263 ]
10264 },
10265 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010266 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010267 "records": [
10268 {
10269 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070010270 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010271 "phv_lsb": 0,
10272 "is_pov": false,
10273 "field_msb": 7,
10274 "phv_msb": 7,
10275 "is_compiler_generated": false,
10276 "field_name": "tcp_srcPort",
10277 "field_width": 2,
10278 "field_lsb": 0
10279 },
10280 {
10281 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070010282 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010283 "phv_lsb": 0,
10284 "is_pov": false,
10285 "field_msb": 7,
10286 "phv_msb": 7,
10287 "is_compiler_generated": false,
10288 "field_name": "udp_srcPort",
10289 "field_width": 2,
10290 "field_lsb": 0
10291 }
10292 ]
10293 },
10294 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010295 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010296 "records": [
10297 {
10298 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070010299 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010300 "phv_lsb": 0,
10301 "is_pov": false,
10302 "field_msb": 47,
10303 "phv_msb": 7,
10304 "is_compiler_generated": false,
10305 "field_name": "ethernet_dstAddr",
10306 "field_width": 6,
10307 "field_lsb": 40
10308 }
10309 ]
10310 },
10311 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010312 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010313 "records": [
10314 {
10315 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070010316 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010317 "phv_lsb": 0,
10318 "is_pov": false,
10319 "field_msb": 39,
10320 "phv_msb": 7,
10321 "is_compiler_generated": false,
10322 "field_name": "ethernet_srcAddr",
10323 "field_width": 6,
10324 "field_lsb": 32
10325 }
10326 ]
10327 },
10328 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010329 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010330 "records": [
10331 {
10332 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010333 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010334 "phv_lsb": 0,
10335 "is_pov": false,
10336 "field_msb": 15,
10337 "phv_msb": 15,
10338 "is_compiler_generated": false,
10339 "field_name": "ipv4_totalLen",
10340 "field_width": 2,
10341 "field_lsb": 0
10342 }
10343 ]
10344 },
10345 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010346 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010347 "records": [
10348 {
10349 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010350 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010351 "phv_lsb": 0,
10352 "is_pov": false,
10353 "field_msb": 15,
10354 "phv_msb": 15,
10355 "is_compiler_generated": false,
10356 "field_name": "ipv4_identification",
10357 "field_width": 2,
10358 "field_lsb": 0
10359 }
10360 ]
10361 },
10362 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010363 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010364 "records": [
10365 {
10366 "word_bit_width": 16,
10367 "position_offset": 8,
10368 "phv_lsb": 13,
10369 "is_pov": false,
10370 "field_msb": 2,
10371 "phv_msb": 15,
10372 "is_compiler_generated": false,
10373 "field_name": "ipv4_flags",
10374 "field_width": 1,
10375 "field_lsb": 0
10376 },
10377 {
10378 "word_bit_width": 16,
10379 "position_offset": 5,
10380 "phv_lsb": 0,
10381 "is_pov": false,
10382 "field_msb": 12,
10383 "phv_msb": 12,
10384 "is_compiler_generated": false,
10385 "field_name": "ipv4_fragOffset",
10386 "field_width": 2,
10387 "field_lsb": 0
10388 }
10389 ]
10390 },
10391 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010392 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010393 "records": [
10394 {
10395 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010396 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010397 "phv_lsb": 0,
10398 "is_pov": false,
10399 "field_msb": 15,
10400 "phv_msb": 15,
10401 "is_compiler_generated": false,
10402 "field_name": "tcp_dstPort",
10403 "field_width": 2,
10404 "field_lsb": 0
10405 },
10406 {
10407 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010408 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010409 "phv_lsb": 0,
10410 "is_pov": false,
10411 "field_msb": 15,
10412 "phv_msb": 15,
10413 "is_compiler_generated": false,
10414 "field_name": "udp_dstPort",
10415 "field_width": 2,
10416 "field_lsb": 0
10417 }
10418 ]
10419 },
10420 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010421 "phv_number": 330,
10422 "records": [
10423 {
10424 "word_bit_width": 16,
10425 "position_offset": 69,
10426 "phv_lsb": 0,
10427 "is_pov": false,
10428 "field_msb": 31,
10429 "phv_msb": 15,
10430 "is_compiler_generated": false,
10431 "field_name": "tcp_seqNo",
10432 "field_width": 4,
10433 "field_lsb": 16
10434 }
10435 ]
10436 },
10437 {
10438 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010439 "records": [
10440 {
10441 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010442 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010443 "phv_lsb": 0,
10444 "is_pov": false,
10445 "field_msb": 15,
10446 "phv_msb": 15,
10447 "is_compiler_generated": false,
10448 "field_name": "tcp_seqNo",
10449 "field_width": 4,
10450 "field_lsb": 0
10451 }
10452 ]
10453 },
10454 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010455 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010456 "records": [
10457 {
10458 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010459 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010460 "phv_lsb": 8,
10461 "is_pov": false,
10462 "field_msb": 7,
10463 "phv_msb": 15,
10464 "is_compiler_generated": false,
10465 "field_name": "ethernet_dstAddr",
10466 "field_width": 6,
10467 "field_lsb": 0
10468 },
10469 {
10470 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010471 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010472 "phv_lsb": 0,
10473 "is_pov": false,
10474 "field_msb": 47,
10475 "phv_msb": 7,
10476 "is_compiler_generated": false,
10477 "field_name": "ethernet_srcAddr",
10478 "field_width": 6,
10479 "field_lsb": 40
10480 }
10481 ]
10482 },
10483 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010484 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010485 "records": [
10486 {
10487 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010488 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010489 "phv_lsb": 0,
10490 "is_pov": false,
10491 "field_msb": 15,
10492 "phv_msb": 15,
10493 "is_compiler_generated": false,
10494 "field_name": "ethernet_etherType",
10495 "field_width": 2,
10496 "field_lsb": 0
10497 }
10498 ]
10499 },
10500 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010501 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010502 "records": [
10503 {
10504 "word_bit_width": 16,
10505 "position_offset": 0,
10506 "phv_lsb": 7,
10507 "is_pov": false,
10508 "field_msb": 8,
10509 "phv_msb": 15,
10510 "is_compiler_generated": false,
10511 "field_name": "packet_out_hdr_egress_port",
10512 "field_width": 2,
10513 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070010514 },
10515 {
10516 "word_bit_width": 16,
10517 "position_offset": 30,
10518 "phv_lsb": 7,
10519 "is_pov": false,
10520 "field_msb": 8,
10521 "phv_msb": 15,
10522 "is_compiler_generated": false,
10523 "field_name": "packet_in_hdr_ingress_port",
10524 "field_width": 2,
10525 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010526 }
10527 ]
10528 }
10529 ],
10530 "stage_number": 6
10531 },
10532 {
10533 "ingress": [
10534 {
10535 "phv_number": 0,
10536 "records": [
10537 {
10538 "word_bit_width": 32,
10539 "position_offset": 0,
10540 "phv_lsb": 0,
10541 "is_pov": true,
10542 "pov_headers": [],
10543 "field_msb": 31,
10544 "phv_msb": 31,
10545 "is_compiler_generated": false,
10546 "field_name": "POV",
10547 "field_width": 0,
10548 "field_lsb": 0
10549 }
10550 ]
10551 },
10552 {
10553 "phv_number": 1,
10554 "records": [
10555 {
10556 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070010557 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010558 "phv_lsb": 24,
10559 "is_pov": false,
10560 "field_msb": 7,
10561 "phv_msb": 31,
10562 "is_compiler_generated": false,
10563 "field_name": "ipv4_protocol",
10564 "field_width": 1,
10565 "field_lsb": 0
10566 },
10567 {
10568 "word_bit_width": 32,
10569 "position_offset": 10,
10570 "phv_lsb": 8,
10571 "is_pov": false,
10572 "field_msb": 15,
10573 "phv_msb": 23,
10574 "is_compiler_generated": false,
10575 "field_name": "ipv4_hdrChecksum",
10576 "field_width": 2,
10577 "field_lsb": 0
10578 },
10579 {
10580 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070010581 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010582 "phv_lsb": 0,
10583 "is_pov": false,
10584 "field_msb": 31,
10585 "phv_msb": 7,
10586 "is_compiler_generated": false,
10587 "field_name": "ipv4_srcAddr",
10588 "field_width": 4,
10589 "field_lsb": 24
10590 }
10591 ]
10592 },
10593 {
10594 "phv_number": 2,
10595 "records": [
10596 {
10597 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070010598 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010599 "phv_lsb": 0,
10600 "is_pov": false,
10601 "field_msb": 31,
10602 "phv_msb": 31,
10603 "is_compiler_generated": false,
10604 "field_name": "ipv4_dstAddr",
10605 "field_width": 4,
10606 "field_lsb": 0
10607 }
10608 ]
10609 },
10610 {
10611 "phv_number": 3,
10612 "records": [
10613 {
10614 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +020010615 "position_offset": 33,
10616 "phv_lsb": 24,
10617 "is_pov": false,
10618 "field_msb": 7,
10619 "phv_msb": 31,
10620 "is_compiler_generated": false,
10621 "field_name": "tcp_dstPort",
10622 "field_width": 2,
10623 "field_lsb": 0
10624 },
10625 {
10626 "word_bit_width": 32,
10627 "position_offset": 76,
10628 "phv_lsb": 0,
10629 "is_pov": false,
10630 "field_msb": 31,
10631 "phv_msb": 23,
10632 "is_compiler_generated": false,
10633 "field_name": "tcp_seqNo",
10634 "field_width": 4,
10635 "field_lsb": 8
10636 }
10637 ]
10638 },
10639 {
10640 "phv_number": 4,
10641 "records": [
10642 {
10643 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020010644 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010645 "phv_lsb": 0,
10646 "is_pov": false,
10647 "field_msb": 39,
10648 "phv_msb": 31,
10649 "is_compiler_generated": false,
10650 "field_name": "ethernet_dstAddr",
10651 "field_width": 6,
10652 "field_lsb": 8
10653 }
10654 ]
10655 },
10656 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010657 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010658 "records": [
10659 {
10660 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070010661 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010662 "phv_lsb": 0,
10663 "is_pov": false,
10664 "field_msb": 31,
10665 "phv_msb": 31,
10666 "is_compiler_generated": false,
10667 "field_name": "ethernet_srcAddr",
10668 "field_width": 6,
10669 "field_lsb": 0
10670 }
10671 ]
10672 },
10673 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010674 "phv_number": 64,
10675 "records": [
10676 {
10677 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070010678 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010679 "phv_lsb": 0,
10680 "is_pov": false,
10681 "field_msb": 23,
10682 "phv_msb": 7,
10683 "is_compiler_generated": false,
10684 "field_name": "ipv4_srcAddr",
10685 "field_width": 4,
10686 "field_lsb": 16
10687 }
10688 ]
10689 },
10690 {
Brian O'Connora6862e02017-09-08 01:17:39 -070010691 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010692 "records": [
10693 {
10694 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020010695 "position_offset": 38,
10696 "phv_lsb": 0,
10697 "is_pov": false,
10698 "field_msb": 15,
10699 "phv_msb": 7,
10700 "is_compiler_generated": false,
10701 "field_name": "tcp_srcPort",
10702 "field_width": 2,
10703 "field_lsb": 8
10704 },
10705 {
10706 "word_bit_width": 8,
10707 "position_offset": 66,
10708 "phv_lsb": 0,
10709 "is_pov": false,
10710 "field_msb": 7,
10711 "phv_msb": 7,
10712 "is_compiler_generated": false,
10713 "field_name": "udp_srcPort",
10714 "field_width": 2,
10715 "field_lsb": 0
10716 }
10717 ]
10718 },
10719 {
10720 "phv_number": 66,
10721 "records": [
10722 {
10723 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020010724 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010725 "phv_lsb": 0,
10726 "is_pov": false,
10727 "field_msb": 47,
10728 "phv_msb": 7,
10729 "is_compiler_generated": false,
10730 "field_name": "ethernet_dstAddr",
10731 "field_width": 6,
10732 "field_lsb": 40
10733 }
10734 ]
10735 },
10736 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010737 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010738 "records": [
10739 {
10740 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070010741 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010742 "phv_lsb": 0,
10743 "is_pov": false,
10744 "field_msb": 39,
10745 "phv_msb": 7,
10746 "is_compiler_generated": false,
10747 "field_name": "ethernet_srcAddr",
10748 "field_width": 6,
10749 "field_lsb": 32
10750 }
10751 ]
10752 },
10753 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010754 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010755 "records": [
10756 {
10757 "word_bit_width": 8,
10758 "position_offset": 0,
10759 "phv_lsb": 0,
10760 "is_pov": true,
10761 "pov_headers": [
10762 {
10763 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070010764 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010765 "header_name": "packet_in_hdr",
10766 "hidden": false
10767 },
10768 {
10769 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070010770 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010771 "header_name": "packet_out_hdr",
10772 "hidden": false
10773 },
10774 {
10775 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -070010776 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010777 "header_name": "ethernet",
10778 "hidden": false
10779 },
10780 {
10781 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -070010782 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010783 "header_name": "ipv4",
10784 "hidden": false
10785 },
10786 {
10787 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070010788 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010789 "header_name": "tcp",
10790 "hidden": false
10791 },
10792 {
10793 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -070010794 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010795 "header_name": "udp",
10796 "hidden": false
10797 }
10798 ],
10799 "field_msb": 39,
10800 "phv_msb": 7,
10801 "is_compiler_generated": false,
10802 "field_name": "POV",
10803 "field_width": 0,
10804 "field_lsb": 32
10805 }
10806 ]
10807 },
10808 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010809 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010810 "records": [
10811 {
10812 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070010813 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010814 "phv_lsb": 5,
10815 "is_pov": false,
10816 "field_msb": 2,
10817 "phv_msb": 7,
10818 "is_compiler_generated": false,
10819 "field_name": "ig_intr_md_for_tm_drop_ctl",
10820 "field_width": 1,
10821 "field_lsb": 0
10822 }
10823 ]
10824 },
10825 {
10826 "phv_number": 128,
10827 "records": [
10828 {
10829 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020010830 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010831 "phv_lsb": 15,
10832 "is_pov": false,
10833 "field_msb": 0,
10834 "phv_msb": 15,
10835 "is_compiler_generated": false,
10836 "field_name": "ig_intr_md_resubmit_flag",
10837 "field_width": 1,
10838 "field_lsb": 0
10839 },
10840 {
10841 "word_bit_width": 16,
10842 "position_offset": 8,
10843 "phv_lsb": 0,
10844 "is_pov": false,
10845 "field_msb": 8,
10846 "phv_msb": 8,
10847 "is_compiler_generated": false,
10848 "field_name": "ig_intr_md_ingress_port",
10849 "field_width": 2,
10850 "field_lsb": 0
10851 }
10852 ]
10853 },
10854 {
10855 "phv_number": 129,
10856 "records": [
10857 {
10858 "word_bit_width": 16,
10859 "position_offset": 0,
10860 "phv_lsb": 7,
10861 "is_pov": false,
10862 "field_msb": 8,
10863 "phv_msb": 15,
10864 "is_compiler_generated": false,
10865 "field_name": "packet_out_hdr_egress_port",
10866 "field_width": 2,
10867 "field_lsb": 0
10868 },
10869 {
10870 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020010871 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010872 "phv_lsb": 7,
10873 "is_pov": false,
10874 "field_msb": 8,
10875 "phv_msb": 15,
10876 "is_compiler_generated": false,
10877 "field_name": "packet_in_hdr_ingress_port",
10878 "field_width": 2,
10879 "field_lsb": 0
10880 }
10881 ]
10882 },
10883 {
10884 "phv_number": 130,
10885 "records": [
10886 {
10887 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010888 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010889 "phv_lsb": 0,
10890 "is_pov": false,
10891 "field_msb": 8,
10892 "phv_msb": 8,
10893 "is_compiler_generated": false,
10894 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
10895 "field_width": 2,
10896 "field_lsb": 0
10897 }
10898 ]
10899 },
10900 {
10901 "phv_number": 131,
10902 "records": [
10903 {
10904 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010905 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010906 "phv_lsb": 0,
10907 "is_pov": false,
10908 "field_msb": 15,
10909 "phv_msb": 15,
10910 "is_compiler_generated": false,
10911 "field_name": "ipv4_srcAddr",
10912 "field_width": 4,
10913 "field_lsb": 0
10914 }
10915 ]
10916 },
10917 {
10918 "phv_number": 132,
10919 "records": [
10920 {
10921 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +020010922 "position_offset": 38,
10923 "phv_lsb": 8,
10924 "is_pov": false,
10925 "field_msb": 7,
10926 "phv_msb": 15,
10927 "is_compiler_generated": false,
10928 "field_name": "tcp_srcPort",
10929 "field_width": 2,
10930 "field_lsb": 0
10931 },
10932 {
10933 "word_bit_width": 16,
10934 "position_offset": 33,
10935 "phv_lsb": 0,
10936 "is_pov": false,
10937 "field_msb": 15,
10938 "phv_msb": 7,
10939 "is_compiler_generated": false,
10940 "field_name": "tcp_dstPort",
10941 "field_width": 2,
10942 "field_lsb": 8
10943 }
10944 ]
10945 },
10946 {
10947 "phv_number": 133,
10948 "records": [
10949 {
10950 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020010951 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010952 "phv_lsb": 8,
10953 "is_pov": false,
10954 "field_msb": 7,
10955 "phv_msb": 15,
10956 "is_compiler_generated": false,
10957 "field_name": "ethernet_dstAddr",
10958 "field_width": 6,
10959 "field_lsb": 0
10960 },
10961 {
10962 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070010963 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010964 "phv_lsb": 0,
10965 "is_pov": false,
10966 "field_msb": 47,
10967 "phv_msb": 7,
10968 "is_compiler_generated": false,
10969 "field_name": "ethernet_srcAddr",
10970 "field_width": 6,
10971 "field_lsb": 40
10972 }
10973 ]
10974 },
10975 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010976 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010977 "records": [
10978 {
10979 "word_bit_width": 16,
10980 "position_offset": 5,
10981 "phv_lsb": 0,
10982 "is_pov": false,
10983 "field_msb": 15,
10984 "phv_msb": 15,
10985 "is_compiler_generated": false,
10986 "field_name": "ethernet_etherType",
10987 "field_width": 2,
10988 "field_lsb": 0
10989 }
10990 ]
10991 },
10992 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020010993 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010994 "records": [
10995 {
10996 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020010997 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020010998 "phv_lsb": 0,
10999 "is_pov": false,
11000 "field_msb": 15,
11001 "phv_msb": 15,
11002 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020011003 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011004 "field_width": 2,
11005 "field_lsb": 0
11006 }
11007 ]
11008 },
11009 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011010 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011011 "records": [
11012 {
11013 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070011014 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011015 "phv_lsb": 0,
11016 "is_pov": false,
11017 "field_msb": 15,
11018 "phv_msb": 15,
11019 "is_compiler_generated": false,
11020 "field_name": "ecmp_metadata_selector",
11021 "field_width": 2,
11022 "field_lsb": 0
11023 }
11024 ]
11025 },
11026 {
11027 "phv_number": 256,
11028 "records": [
11029 {
11030 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070011031 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011032 "phv_lsb": 24,
11033 "is_pov": false,
11034 "field_msb": 7,
11035 "phv_msb": 31,
11036 "is_compiler_generated": false,
11037 "field_name": "ipv4_identification",
11038 "field_width": 2,
11039 "field_lsb": 0
11040 },
11041 {
11042 "word_bit_width": 32,
11043 "position_offset": 7,
11044 "phv_lsb": 21,
11045 "is_pov": false,
11046 "field_msb": 2,
11047 "phv_msb": 23,
11048 "is_compiler_generated": false,
11049 "field_name": "ipv4_flags",
11050 "field_width": 1,
11051 "field_lsb": 0
11052 },
11053 {
11054 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070011055 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011056 "phv_lsb": 8,
11057 "is_pov": false,
11058 "field_msb": 12,
11059 "phv_msb": 20,
11060 "is_compiler_generated": false,
11061 "field_name": "ipv4_fragOffset",
11062 "field_width": 2,
11063 "field_lsb": 0
11064 },
11065 {
11066 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070011067 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011068 "phv_lsb": 0,
11069 "is_pov": false,
11070 "field_msb": 7,
11071 "phv_msb": 7,
11072 "is_compiler_generated": false,
11073 "field_name": "ipv4_ttl",
11074 "field_width": 1,
11075 "field_lsb": 0
11076 }
11077 ]
11078 },
11079 {
11080 "phv_number": 257,
11081 "records": [
11082 {
11083 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070011084 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011085 "phv_lsb": 28,
11086 "is_pov": false,
11087 "field_msb": 3,
11088 "phv_msb": 31,
11089 "is_compiler_generated": false,
11090 "field_name": "tcp_dataOffset",
11091 "field_width": 1,
11092 "field_lsb": 0
11093 },
11094 {
11095 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070011096 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011097 "phv_lsb": 25,
11098 "is_pov": false,
11099 "field_msb": 2,
11100 "phv_msb": 27,
11101 "is_compiler_generated": false,
11102 "field_name": "tcp_res",
11103 "field_width": 1,
11104 "field_lsb": 0
11105 },
11106 {
11107 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070011108 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011109 "phv_lsb": 22,
11110 "is_pov": false,
11111 "field_msb": 2,
11112 "phv_msb": 24,
11113 "is_compiler_generated": false,
11114 "field_name": "tcp_ecn",
11115 "field_width": 1,
11116 "field_lsb": 0
11117 },
11118 {
11119 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020011120 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011121 "phv_lsb": 16,
11122 "is_pov": false,
11123 "field_msb": 5,
11124 "phv_msb": 21,
11125 "is_compiler_generated": false,
11126 "field_name": "tcp_ctrl",
11127 "field_width": 1,
11128 "field_lsb": 0
11129 },
11130 {
11131 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070011132 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011133 "phv_lsb": 0,
11134 "is_pov": false,
11135 "field_msb": 15,
11136 "phv_msb": 15,
11137 "is_compiler_generated": false,
11138 "field_name": "tcp_window",
11139 "field_width": 2,
11140 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +020011141 },
11142 {
11143 "word_bit_width": 32,
11144 "position_offset": 17,
11145 "phv_lsb": 16,
11146 "is_pov": false,
11147 "field_msb": 15,
11148 "phv_msb": 31,
11149 "is_compiler_generated": false,
11150 "field_name": "udp_length_",
11151 "field_width": 2,
11152 "field_lsb": 0
11153 },
11154 {
11155 "word_bit_width": 32,
11156 "position_offset": 68,
11157 "phv_lsb": 0,
11158 "is_pov": false,
11159 "field_msb": 15,
11160 "phv_msb": 15,
11161 "is_compiler_generated": false,
11162 "field_name": "udp_checksum",
11163 "field_width": 2,
11164 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011165 }
11166 ]
11167 },
11168 {
Brian O'Connora6862e02017-09-08 01:17:39 -070011169 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011170 "records": [
11171 {
11172 "word_bit_width": 32,
11173 "position_offset": 2,
11174 "phv_lsb": 16,
11175 "is_pov": false,
11176 "field_msb": 15,
11177 "phv_msb": 31,
11178 "is_compiler_generated": false,
11179 "field_name": "tcp_checksum",
11180 "field_width": 2,
11181 "field_lsb": 0
11182 },
11183 {
11184 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070011185 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011186 "phv_lsb": 0,
11187 "is_pov": false,
11188 "field_msb": 15,
11189 "phv_msb": 15,
11190 "is_compiler_generated": false,
11191 "field_name": "tcp_urgentPtr",
11192 "field_width": 2,
11193 "field_lsb": 0
11194 }
11195 ]
11196 },
11197 {
Brian O'Connora6862e02017-09-08 01:17:39 -070011198 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011199 "records": [
11200 {
11201 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070011202 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011203 "phv_lsb": 4,
11204 "is_pov": false,
11205 "field_msb": 3,
11206 "phv_msb": 7,
11207 "is_compiler_generated": false,
11208 "field_name": "ipv4_version",
11209 "field_width": 1,
11210 "field_lsb": 0
11211 },
11212 {
11213 "word_bit_width": 8,
11214 "position_offset": 40,
11215 "phv_lsb": 0,
11216 "is_pov": false,
11217 "field_msb": 3,
11218 "phv_msb": 3,
11219 "is_compiler_generated": false,
11220 "field_name": "ipv4_ihl",
11221 "field_width": 1,
11222 "field_lsb": 0
11223 }
11224 ]
11225 },
11226 {
Brian O'Connora6862e02017-09-08 01:17:39 -070011227 "phv_number": 289,
11228 "records": [
11229 {
11230 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020011231 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -070011232 "phv_lsb": 0,
11233 "is_pov": false,
11234 "field_msb": 7,
11235 "phv_msb": 7,
11236 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020011237 "field_name": "tcp_seqNo",
11238 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070011239 "field_lsb": 0
11240 },
11241 {
11242 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020011243 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -070011244 "phv_lsb": 0,
11245 "is_pov": false,
11246 "field_msb": 15,
11247 "phv_msb": 7,
11248 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020011249 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -070011250 "field_width": 2,
11251 "field_lsb": 8
11252 }
11253 ]
11254 },
11255 {
Brian O'Connora6862e02017-09-08 01:17:39 -070011256 "phv_number": 320,
11257 "records": [
11258 {
11259 "word_bit_width": 16,
11260 "position_offset": 4,
11261 "phv_lsb": 8,
11262 "is_pov": false,
11263 "field_msb": 7,
11264 "phv_msb": 15,
11265 "is_compiler_generated": false,
11266 "field_name": "ipv4_diffserv",
11267 "field_width": 1,
11268 "field_lsb": 0
11269 },
11270 {
11271 "word_bit_width": 16,
11272 "position_offset": 63,
11273 "phv_lsb": 0,
11274 "is_pov": false,
11275 "field_msb": 15,
11276 "phv_msb": 7,
11277 "is_compiler_generated": false,
11278 "field_name": "ipv4_totalLen",
11279 "field_width": 2,
11280 "field_lsb": 8
11281 }
11282 ]
11283 },
11284 {
11285 "phv_number": 321,
11286 "records": [
11287 {
11288 "word_bit_width": 16,
11289 "position_offset": 63,
11290 "phv_lsb": 8,
11291 "is_pov": false,
11292 "field_msb": 7,
11293 "phv_msb": 15,
11294 "is_compiler_generated": false,
11295 "field_name": "ipv4_totalLen",
11296 "field_width": 2,
11297 "field_lsb": 0
11298 },
11299 {
11300 "word_bit_width": 16,
11301 "position_offset": 49,
11302 "phv_lsb": 0,
11303 "is_pov": false,
11304 "field_msb": 15,
11305 "phv_msb": 7,
11306 "is_compiler_generated": false,
11307 "field_name": "ipv4_identification",
11308 "field_width": 2,
11309 "field_lsb": 8
11310 }
11311 ]
11312 },
11313 {
11314 "phv_number": 322,
11315 "records": [
11316 {
11317 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020011318 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070011319 "phv_lsb": 0,
11320 "is_pov": false,
11321 "field_msb": 31,
11322 "phv_msb": 15,
11323 "is_compiler_generated": false,
11324 "field_name": "tcp_ackNo",
11325 "field_width": 4,
11326 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +020011327 },
11328 {
11329 "word_bit_width": 16,
11330 "position_offset": 55,
11331 "phv_lsb": 0,
11332 "is_pov": false,
11333 "field_msb": 15,
11334 "phv_msb": 15,
11335 "is_compiler_generated": false,
11336 "field_name": "udp_dstPort",
11337 "field_width": 2,
11338 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070011339 }
11340 ]
11341 },
11342 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011343 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -070011344 "records": [
11345 {
11346 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020011347 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070011348 "phv_lsb": 0,
11349 "is_pov": false,
11350 "field_msb": 15,
11351 "phv_msb": 15,
11352 "is_compiler_generated": false,
11353 "field_name": "tcp_ackNo",
11354 "field_width": 4,
11355 "field_lsb": 0
11356 }
11357 ]
11358 }
11359 ],
11360 "egress": [
11361 {
11362 "phv_number": 80,
11363 "records": [
11364 {
11365 "word_bit_width": 8,
11366 "position_offset": 7,
11367 "phv_lsb": 0,
11368 "is_pov": false,
11369 "field_msb": 2,
11370 "phv_msb": 2,
11371 "is_compiler_generated": false,
11372 "field_name": "eg_intr_md_egress_cos",
11373 "field_width": 1,
11374 "field_lsb": 0
11375 }
11376 ]
11377 },
11378 {
11379 "phv_number": 81,
11380 "records": [
11381 {
11382 "word_bit_width": 8,
11383 "position_offset": 0,
11384 "phv_lsb": 0,
11385 "is_pov": true,
11386 "pov_headers": [
11387 {
11388 "bit_index": 0,
11389 "position_offset": 73,
11390 "header_name": "packet_in_hdr",
11391 "hidden": false
11392 },
11393 {
11394 "bit_index": 1,
11395 "position_offset": 74,
11396 "header_name": "packet_out_hdr",
11397 "hidden": false
11398 },
11399 {
11400 "bit_index": 2,
11401 "position_offset": 75,
11402 "header_name": "ethernet",
11403 "hidden": false
11404 },
11405 {
11406 "bit_index": 3,
11407 "position_offset": 76,
11408 "header_name": "ipv4",
11409 "hidden": false
11410 },
11411 {
11412 "bit_index": 4,
11413 "position_offset": 77,
11414 "header_name": "tcp",
11415 "hidden": false
11416 },
11417 {
11418 "bit_index": 5,
11419 "position_offset": 78,
11420 "header_name": "udp",
11421 "hidden": false
11422 }
11423 ],
11424 "field_msb": 7,
11425 "phv_msb": 7,
11426 "is_compiler_generated": false,
11427 "field_name": "POV",
11428 "field_width": 0,
11429 "field_lsb": 0
11430 }
11431 ]
11432 },
11433 {
11434 "phv_number": 144,
11435 "records": [
11436 {
11437 "word_bit_width": 16,
11438 "position_offset": 61,
11439 "phv_lsb": 0,
11440 "is_pov": false,
11441 "field_msb": 8,
11442 "phv_msb": 8,
11443 "is_compiler_generated": false,
11444 "field_name": "eg_intr_md_egress_port",
11445 "field_width": 2,
11446 "field_lsb": 0
11447 }
11448 ]
11449 },
11450 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011451 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -070011452 "records": [
11453 {
11454 "word_bit_width": 32,
11455 "position_offset": 47,
11456 "phv_lsb": 24,
11457 "is_pov": false,
11458 "field_msb": 7,
11459 "phv_msb": 31,
11460 "is_compiler_generated": false,
11461 "field_name": "ipv4_ttl",
11462 "field_width": 1,
11463 "field_lsb": 0
11464 },
11465 {
11466 "word_bit_width": 32,
11467 "position_offset": 18,
11468 "phv_lsb": 16,
11469 "is_pov": false,
11470 "field_msb": 7,
11471 "phv_msb": 23,
11472 "is_compiler_generated": false,
11473 "field_name": "ipv4_protocol",
11474 "field_width": 1,
11475 "field_lsb": 0
11476 },
11477 {
11478 "word_bit_width": 32,
11479 "position_offset": 9,
11480 "phv_lsb": 0,
11481 "is_pov": false,
11482 "field_msb": 15,
11483 "phv_msb": 15,
11484 "is_compiler_generated": false,
11485 "field_name": "ipv4_hdrChecksum",
11486 "field_width": 2,
11487 "field_lsb": 0
11488 }
11489 ]
11490 },
11491 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011492 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -070011493 "records": [
11494 {
11495 "word_bit_width": 32,
11496 "position_offset": 12,
11497 "phv_lsb": 0,
11498 "is_pov": false,
11499 "field_msb": 31,
11500 "phv_msb": 31,
11501 "is_compiler_generated": false,
11502 "field_name": "ipv4_srcAddr",
11503 "field_width": 4,
11504 "field_lsb": 0
11505 }
11506 ]
11507 },
11508 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011509 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -070011510 "records": [
11511 {
11512 "word_bit_width": 32,
11513 "position_offset": 50,
11514 "phv_lsb": 0,
11515 "is_pov": false,
11516 "field_msb": 31,
11517 "phv_msb": 31,
11518 "is_compiler_generated": false,
11519 "field_name": "ipv4_dstAddr",
11520 "field_width": 4,
11521 "field_lsb": 0
11522 }
11523 ]
11524 },
11525 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011526 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -070011527 "records": [
11528 {
11529 "word_bit_width": 32,
11530 "position_offset": 25,
11531 "phv_lsb": 0,
11532 "is_pov": false,
11533 "field_msb": 31,
11534 "phv_msb": 31,
11535 "is_compiler_generated": false,
11536 "field_name": "tcp_ackNo",
11537 "field_width": 4,
11538 "field_lsb": 0
11539 },
11540 {
11541 "word_bit_width": 32,
11542 "position_offset": 16,
11543 "phv_lsb": 16,
11544 "is_pov": false,
11545 "field_msb": 15,
11546 "phv_msb": 31,
11547 "is_compiler_generated": false,
11548 "field_name": "udp_length_",
11549 "field_width": 2,
11550 "field_lsb": 0
11551 },
11552 {
11553 "word_bit_width": 32,
11554 "position_offset": 59,
11555 "phv_lsb": 0,
11556 "is_pov": false,
11557 "field_msb": 15,
11558 "phv_msb": 15,
11559 "is_compiler_generated": false,
11560 "field_name": "udp_checksum",
11561 "field_width": 2,
11562 "field_lsb": 0
11563 }
11564 ]
11565 },
11566 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011567 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -070011568 "records": [
11569 {
11570 "word_bit_width": 32,
11571 "position_offset": 38,
11572 "phv_lsb": 28,
11573 "is_pov": false,
11574 "field_msb": 3,
11575 "phv_msb": 31,
11576 "is_compiler_generated": false,
11577 "field_name": "tcp_dataOffset",
11578 "field_width": 1,
11579 "field_lsb": 0
11580 },
11581 {
11582 "word_bit_width": 32,
11583 "position_offset": 58,
11584 "phv_lsb": 25,
11585 "is_pov": false,
11586 "field_msb": 2,
11587 "phv_msb": 27,
11588 "is_compiler_generated": false,
11589 "field_name": "tcp_res",
11590 "field_width": 1,
11591 "field_lsb": 0
11592 },
11593 {
11594 "word_bit_width": 32,
11595 "position_offset": 11,
11596 "phv_lsb": 22,
11597 "is_pov": false,
11598 "field_msb": 2,
11599 "phv_msb": 24,
11600 "is_compiler_generated": false,
11601 "field_name": "tcp_ecn",
11602 "field_width": 1,
11603 "field_lsb": 0
11604 },
11605 {
11606 "word_bit_width": 32,
11607 "position_offset": 34,
11608 "phv_lsb": 16,
11609 "is_pov": false,
11610 "field_msb": 5,
11611 "phv_msb": 21,
11612 "is_compiler_generated": false,
11613 "field_name": "tcp_ctrl",
11614 "field_width": 1,
11615 "field_lsb": 0
11616 },
11617 {
11618 "word_bit_width": 32,
11619 "position_offset": 41,
11620 "phv_lsb": 0,
11621 "is_pov": false,
11622 "field_msb": 15,
11623 "phv_msb": 15,
11624 "is_compiler_generated": false,
11625 "field_name": "tcp_window",
11626 "field_width": 2,
11627 "field_lsb": 0
11628 }
11629 ]
11630 },
11631 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011632 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -070011633 "records": [
11634 {
11635 "word_bit_width": 32,
11636 "position_offset": 2,
11637 "phv_lsb": 16,
11638 "is_pov": false,
11639 "field_msb": 15,
11640 "phv_msb": 31,
11641 "is_compiler_generated": false,
11642 "field_name": "tcp_checksum",
11643 "field_width": 2,
11644 "field_lsb": 0
11645 },
11646 {
11647 "word_bit_width": 32,
11648 "position_offset": 45,
11649 "phv_lsb": 0,
11650 "is_pov": false,
11651 "field_msb": 15,
11652 "phv_msb": 15,
11653 "is_compiler_generated": false,
11654 "field_name": "tcp_urgentPtr",
11655 "field_width": 2,
11656 "field_lsb": 0
11657 }
11658 ]
11659 },
11660 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011661 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -070011662 "records": [
11663 {
11664 "word_bit_width": 32,
11665 "position_offset": 19,
11666 "phv_lsb": 0,
11667 "is_pov": false,
11668 "field_msb": 39,
11669 "phv_msb": 31,
11670 "is_compiler_generated": false,
11671 "field_name": "ethernet_dstAddr",
11672 "field_width": 6,
11673 "field_lsb": 8
11674 }
11675 ]
11676 },
11677 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011678 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -070011679 "records": [
11680 {
11681 "word_bit_width": 32,
11682 "position_offset": 63,
11683 "phv_lsb": 0,
11684 "is_pov": false,
11685 "field_msb": 31,
11686 "phv_msb": 31,
11687 "is_compiler_generated": false,
11688 "field_name": "ethernet_srcAddr",
11689 "field_width": 6,
11690 "field_lsb": 0
11691 }
11692 ]
11693 },
11694 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011695 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -070011696 "records": [
11697 {
11698 "word_bit_width": 8,
11699 "position_offset": 29,
11700 "phv_lsb": 4,
11701 "is_pov": false,
11702 "field_msb": 3,
11703 "phv_msb": 7,
11704 "is_compiler_generated": false,
11705 "field_name": "ipv4_version",
11706 "field_width": 1,
11707 "field_lsb": 0
11708 },
11709 {
11710 "word_bit_width": 8,
11711 "position_offset": 37,
11712 "phv_lsb": 0,
11713 "is_pov": false,
11714 "field_msb": 3,
11715 "phv_msb": 3,
11716 "is_compiler_generated": false,
11717 "field_name": "ipv4_ihl",
11718 "field_width": 1,
11719 "field_lsb": 0
11720 }
11721 ]
11722 },
11723 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011724 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011725 "records": [
11726 {
11727 "word_bit_width": 8,
11728 "position_offset": 4,
11729 "phv_lsb": 0,
11730 "is_pov": false,
11731 "field_msb": 7,
11732 "phv_msb": 7,
11733 "is_compiler_generated": false,
11734 "field_name": "ipv4_diffserv",
11735 "field_width": 1,
11736 "field_lsb": 0
11737 }
11738 ]
11739 },
11740 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011741 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011742 "records": [
11743 {
11744 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070011745 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011746 "phv_lsb": 0,
11747 "is_pov": false,
11748 "field_msb": 15,
11749 "phv_msb": 7,
11750 "is_compiler_generated": false,
11751 "field_name": "tcp_srcPort",
11752 "field_width": 2,
11753 "field_lsb": 8
11754 },
11755 {
11756 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070011757 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011758 "phv_lsb": 0,
11759 "is_pov": false,
11760 "field_msb": 15,
11761 "phv_msb": 7,
11762 "is_compiler_generated": false,
11763 "field_name": "udp_srcPort",
11764 "field_width": 2,
11765 "field_lsb": 8
11766 }
11767 ]
11768 },
11769 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011770 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011771 "records": [
11772 {
11773 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070011774 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011775 "phv_lsb": 0,
11776 "is_pov": false,
11777 "field_msb": 7,
11778 "phv_msb": 7,
11779 "is_compiler_generated": false,
11780 "field_name": "tcp_srcPort",
11781 "field_width": 2,
11782 "field_lsb": 0
11783 },
11784 {
11785 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070011786 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011787 "phv_lsb": 0,
11788 "is_pov": false,
11789 "field_msb": 7,
11790 "phv_msb": 7,
11791 "is_compiler_generated": false,
11792 "field_name": "udp_srcPort",
11793 "field_width": 2,
11794 "field_lsb": 0
11795 }
11796 ]
11797 },
11798 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011799 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011800 "records": [
11801 {
11802 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070011803 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011804 "phv_lsb": 0,
11805 "is_pov": false,
11806 "field_msb": 47,
11807 "phv_msb": 7,
11808 "is_compiler_generated": false,
11809 "field_name": "ethernet_dstAddr",
11810 "field_width": 6,
11811 "field_lsb": 40
11812 }
11813 ]
11814 },
11815 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011816 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011817 "records": [
11818 {
11819 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070011820 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011821 "phv_lsb": 0,
11822 "is_pov": false,
11823 "field_msb": 39,
11824 "phv_msb": 7,
11825 "is_compiler_generated": false,
11826 "field_name": "ethernet_srcAddr",
11827 "field_width": 6,
11828 "field_lsb": 32
11829 }
11830 ]
11831 },
11832 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011833 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011834 "records": [
11835 {
11836 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070011837 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011838 "phv_lsb": 0,
11839 "is_pov": false,
11840 "field_msb": 15,
11841 "phv_msb": 15,
11842 "is_compiler_generated": false,
11843 "field_name": "ipv4_totalLen",
11844 "field_width": 2,
11845 "field_lsb": 0
11846 }
11847 ]
11848 },
11849 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011850 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011851 "records": [
11852 {
11853 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070011854 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011855 "phv_lsb": 0,
11856 "is_pov": false,
11857 "field_msb": 15,
11858 "phv_msb": 15,
11859 "is_compiler_generated": false,
11860 "field_name": "ipv4_identification",
11861 "field_width": 2,
11862 "field_lsb": 0
11863 }
11864 ]
11865 },
11866 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011867 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011868 "records": [
11869 {
11870 "word_bit_width": 16,
11871 "position_offset": 8,
11872 "phv_lsb": 13,
11873 "is_pov": false,
11874 "field_msb": 2,
11875 "phv_msb": 15,
11876 "is_compiler_generated": false,
11877 "field_name": "ipv4_flags",
11878 "field_width": 1,
11879 "field_lsb": 0
11880 },
11881 {
11882 "word_bit_width": 16,
11883 "position_offset": 5,
11884 "phv_lsb": 0,
11885 "is_pov": false,
11886 "field_msb": 12,
11887 "phv_msb": 12,
11888 "is_compiler_generated": false,
11889 "field_name": "ipv4_fragOffset",
11890 "field_width": 2,
11891 "field_lsb": 0
11892 }
11893 ]
11894 },
11895 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011896 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011897 "records": [
11898 {
11899 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070011900 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011901 "phv_lsb": 0,
11902 "is_pov": false,
11903 "field_msb": 15,
11904 "phv_msb": 15,
11905 "is_compiler_generated": false,
11906 "field_name": "tcp_dstPort",
11907 "field_width": 2,
11908 "field_lsb": 0
11909 },
11910 {
11911 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070011912 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011913 "phv_lsb": 0,
11914 "is_pov": false,
11915 "field_msb": 15,
11916 "phv_msb": 15,
11917 "is_compiler_generated": false,
11918 "field_name": "udp_dstPort",
11919 "field_width": 2,
11920 "field_lsb": 0
11921 }
11922 ]
11923 },
11924 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011925 "phv_number": 330,
11926 "records": [
11927 {
11928 "word_bit_width": 16,
11929 "position_offset": 69,
11930 "phv_lsb": 0,
11931 "is_pov": false,
11932 "field_msb": 31,
11933 "phv_msb": 15,
11934 "is_compiler_generated": false,
11935 "field_name": "tcp_seqNo",
11936 "field_width": 4,
11937 "field_lsb": 16
11938 }
11939 ]
11940 },
11941 {
11942 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011943 "records": [
11944 {
11945 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070011946 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011947 "phv_lsb": 0,
11948 "is_pov": false,
11949 "field_msb": 15,
11950 "phv_msb": 15,
11951 "is_compiler_generated": false,
11952 "field_name": "tcp_seqNo",
11953 "field_width": 4,
11954 "field_lsb": 0
11955 }
11956 ]
11957 },
11958 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011959 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011960 "records": [
11961 {
11962 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070011963 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011964 "phv_lsb": 8,
11965 "is_pov": false,
11966 "field_msb": 7,
11967 "phv_msb": 15,
11968 "is_compiler_generated": false,
11969 "field_name": "ethernet_dstAddr",
11970 "field_width": 6,
11971 "field_lsb": 0
11972 },
11973 {
11974 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070011975 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011976 "phv_lsb": 0,
11977 "is_pov": false,
11978 "field_msb": 47,
11979 "phv_msb": 7,
11980 "is_compiler_generated": false,
11981 "field_name": "ethernet_srcAddr",
11982 "field_width": 6,
11983 "field_lsb": 40
11984 }
11985 ]
11986 },
11987 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020011988 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011989 "records": [
11990 {
11991 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070011992 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020011993 "phv_lsb": 0,
11994 "is_pov": false,
11995 "field_msb": 15,
11996 "phv_msb": 15,
11997 "is_compiler_generated": false,
11998 "field_name": "ethernet_etherType",
11999 "field_width": 2,
12000 "field_lsb": 0
12001 }
12002 ]
12003 },
12004 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012005 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012006 "records": [
12007 {
12008 "word_bit_width": 16,
12009 "position_offset": 0,
12010 "phv_lsb": 7,
12011 "is_pov": false,
12012 "field_msb": 8,
12013 "phv_msb": 15,
12014 "is_compiler_generated": false,
12015 "field_name": "packet_out_hdr_egress_port",
12016 "field_width": 2,
12017 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070012018 },
12019 {
12020 "word_bit_width": 16,
12021 "position_offset": 30,
12022 "phv_lsb": 7,
12023 "is_pov": false,
12024 "field_msb": 8,
12025 "phv_msb": 15,
12026 "is_compiler_generated": false,
12027 "field_name": "packet_in_hdr_ingress_port",
12028 "field_width": 2,
12029 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012030 }
12031 ]
12032 }
12033 ],
12034 "stage_number": 7
12035 },
12036 {
12037 "ingress": [
12038 {
12039 "phv_number": 0,
12040 "records": [
12041 {
12042 "word_bit_width": 32,
12043 "position_offset": 0,
12044 "phv_lsb": 0,
12045 "is_pov": true,
12046 "pov_headers": [],
12047 "field_msb": 31,
12048 "phv_msb": 31,
12049 "is_compiler_generated": false,
12050 "field_name": "POV",
12051 "field_width": 0,
12052 "field_lsb": 0
12053 }
12054 ]
12055 },
12056 {
12057 "phv_number": 1,
12058 "records": [
12059 {
12060 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012061 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012062 "phv_lsb": 24,
12063 "is_pov": false,
12064 "field_msb": 7,
12065 "phv_msb": 31,
12066 "is_compiler_generated": false,
12067 "field_name": "ipv4_protocol",
12068 "field_width": 1,
12069 "field_lsb": 0
12070 },
12071 {
12072 "word_bit_width": 32,
12073 "position_offset": 10,
12074 "phv_lsb": 8,
12075 "is_pov": false,
12076 "field_msb": 15,
12077 "phv_msb": 23,
12078 "is_compiler_generated": false,
12079 "field_name": "ipv4_hdrChecksum",
12080 "field_width": 2,
12081 "field_lsb": 0
12082 },
12083 {
12084 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012085 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012086 "phv_lsb": 0,
12087 "is_pov": false,
12088 "field_msb": 31,
12089 "phv_msb": 7,
12090 "is_compiler_generated": false,
12091 "field_name": "ipv4_srcAddr",
12092 "field_width": 4,
12093 "field_lsb": 24
12094 }
12095 ]
12096 },
12097 {
12098 "phv_number": 2,
12099 "records": [
12100 {
12101 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012102 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012103 "phv_lsb": 0,
12104 "is_pov": false,
12105 "field_msb": 31,
12106 "phv_msb": 31,
12107 "is_compiler_generated": false,
12108 "field_name": "ipv4_dstAddr",
12109 "field_width": 4,
12110 "field_lsb": 0
12111 }
12112 ]
12113 },
12114 {
12115 "phv_number": 3,
12116 "records": [
12117 {
12118 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +020012119 "position_offset": 33,
12120 "phv_lsb": 24,
12121 "is_pov": false,
12122 "field_msb": 7,
12123 "phv_msb": 31,
12124 "is_compiler_generated": false,
12125 "field_name": "tcp_dstPort",
12126 "field_width": 2,
12127 "field_lsb": 0
12128 },
12129 {
12130 "word_bit_width": 32,
12131 "position_offset": 76,
12132 "phv_lsb": 0,
12133 "is_pov": false,
12134 "field_msb": 31,
12135 "phv_msb": 23,
12136 "is_compiler_generated": false,
12137 "field_name": "tcp_seqNo",
12138 "field_width": 4,
12139 "field_lsb": 8
12140 }
12141 ]
12142 },
12143 {
12144 "phv_number": 4,
12145 "records": [
12146 {
12147 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012148 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012149 "phv_lsb": 0,
12150 "is_pov": false,
12151 "field_msb": 39,
12152 "phv_msb": 31,
12153 "is_compiler_generated": false,
12154 "field_name": "ethernet_dstAddr",
12155 "field_width": 6,
12156 "field_lsb": 8
12157 }
12158 ]
12159 },
12160 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012161 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012162 "records": [
12163 {
12164 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012165 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012166 "phv_lsb": 0,
12167 "is_pov": false,
12168 "field_msb": 31,
12169 "phv_msb": 31,
12170 "is_compiler_generated": false,
12171 "field_name": "ethernet_srcAddr",
12172 "field_width": 6,
12173 "field_lsb": 0
12174 }
12175 ]
12176 },
12177 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012178 "phv_number": 64,
12179 "records": [
12180 {
12181 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070012182 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012183 "phv_lsb": 0,
12184 "is_pov": false,
12185 "field_msb": 23,
12186 "phv_msb": 7,
12187 "is_compiler_generated": false,
12188 "field_name": "ipv4_srcAddr",
12189 "field_width": 4,
12190 "field_lsb": 16
12191 }
12192 ]
12193 },
12194 {
Brian O'Connora6862e02017-09-08 01:17:39 -070012195 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012196 "records": [
12197 {
12198 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020012199 "position_offset": 38,
12200 "phv_lsb": 0,
12201 "is_pov": false,
12202 "field_msb": 15,
12203 "phv_msb": 7,
12204 "is_compiler_generated": false,
12205 "field_name": "tcp_srcPort",
12206 "field_width": 2,
12207 "field_lsb": 8
12208 },
12209 {
12210 "word_bit_width": 8,
12211 "position_offset": 66,
12212 "phv_lsb": 0,
12213 "is_pov": false,
12214 "field_msb": 7,
12215 "phv_msb": 7,
12216 "is_compiler_generated": false,
12217 "field_name": "udp_srcPort",
12218 "field_width": 2,
12219 "field_lsb": 0
12220 }
12221 ]
12222 },
12223 {
12224 "phv_number": 66,
12225 "records": [
12226 {
12227 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012228 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012229 "phv_lsb": 0,
12230 "is_pov": false,
12231 "field_msb": 47,
12232 "phv_msb": 7,
12233 "is_compiler_generated": false,
12234 "field_name": "ethernet_dstAddr",
12235 "field_width": 6,
12236 "field_lsb": 40
12237 }
12238 ]
12239 },
12240 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012241 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012242 "records": [
12243 {
12244 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070012245 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012246 "phv_lsb": 0,
12247 "is_pov": false,
12248 "field_msb": 39,
12249 "phv_msb": 7,
12250 "is_compiler_generated": false,
12251 "field_name": "ethernet_srcAddr",
12252 "field_width": 6,
12253 "field_lsb": 32
12254 }
12255 ]
12256 },
12257 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012258 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012259 "records": [
12260 {
12261 "word_bit_width": 8,
12262 "position_offset": 0,
12263 "phv_lsb": 0,
12264 "is_pov": true,
12265 "pov_headers": [
12266 {
12267 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070012268 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012269 "header_name": "packet_in_hdr",
12270 "hidden": false
12271 },
12272 {
12273 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070012274 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012275 "header_name": "packet_out_hdr",
12276 "hidden": false
12277 },
12278 {
12279 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -070012280 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012281 "header_name": "ethernet",
12282 "hidden": false
12283 },
12284 {
12285 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -070012286 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012287 "header_name": "ipv4",
12288 "hidden": false
12289 },
12290 {
12291 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070012292 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012293 "header_name": "tcp",
12294 "hidden": false
12295 },
12296 {
12297 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -070012298 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012299 "header_name": "udp",
12300 "hidden": false
12301 }
12302 ],
12303 "field_msb": 39,
12304 "phv_msb": 7,
12305 "is_compiler_generated": false,
12306 "field_name": "POV",
12307 "field_width": 0,
12308 "field_lsb": 32
12309 }
12310 ]
12311 },
12312 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012313 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012314 "records": [
12315 {
12316 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070012317 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012318 "phv_lsb": 5,
12319 "is_pov": false,
12320 "field_msb": 2,
12321 "phv_msb": 7,
12322 "is_compiler_generated": false,
12323 "field_name": "ig_intr_md_for_tm_drop_ctl",
12324 "field_width": 1,
12325 "field_lsb": 0
12326 }
12327 ]
12328 },
12329 {
12330 "phv_number": 128,
12331 "records": [
12332 {
12333 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012334 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012335 "phv_lsb": 15,
12336 "is_pov": false,
12337 "field_msb": 0,
12338 "phv_msb": 15,
12339 "is_compiler_generated": false,
12340 "field_name": "ig_intr_md_resubmit_flag",
12341 "field_width": 1,
12342 "field_lsb": 0
12343 },
12344 {
12345 "word_bit_width": 16,
12346 "position_offset": 8,
12347 "phv_lsb": 0,
12348 "is_pov": false,
12349 "field_msb": 8,
12350 "phv_msb": 8,
12351 "is_compiler_generated": false,
12352 "field_name": "ig_intr_md_ingress_port",
12353 "field_width": 2,
12354 "field_lsb": 0
12355 }
12356 ]
12357 },
12358 {
12359 "phv_number": 129,
12360 "records": [
12361 {
12362 "word_bit_width": 16,
12363 "position_offset": 0,
12364 "phv_lsb": 7,
12365 "is_pov": false,
12366 "field_msb": 8,
12367 "phv_msb": 15,
12368 "is_compiler_generated": false,
12369 "field_name": "packet_out_hdr_egress_port",
12370 "field_width": 2,
12371 "field_lsb": 0
12372 },
12373 {
12374 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012375 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012376 "phv_lsb": 7,
12377 "is_pov": false,
12378 "field_msb": 8,
12379 "phv_msb": 15,
12380 "is_compiler_generated": false,
12381 "field_name": "packet_in_hdr_ingress_port",
12382 "field_width": 2,
12383 "field_lsb": 0
12384 }
12385 ]
12386 },
12387 {
12388 "phv_number": 130,
12389 "records": [
12390 {
12391 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070012392 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012393 "phv_lsb": 0,
12394 "is_pov": false,
12395 "field_msb": 8,
12396 "phv_msb": 8,
12397 "is_compiler_generated": false,
12398 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
12399 "field_width": 2,
12400 "field_lsb": 0
12401 }
12402 ]
12403 },
12404 {
12405 "phv_number": 131,
12406 "records": [
12407 {
12408 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070012409 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012410 "phv_lsb": 0,
12411 "is_pov": false,
12412 "field_msb": 15,
12413 "phv_msb": 15,
12414 "is_compiler_generated": false,
12415 "field_name": "ipv4_srcAddr",
12416 "field_width": 4,
12417 "field_lsb": 0
12418 }
12419 ]
12420 },
12421 {
12422 "phv_number": 132,
12423 "records": [
12424 {
12425 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +020012426 "position_offset": 38,
12427 "phv_lsb": 8,
12428 "is_pov": false,
12429 "field_msb": 7,
12430 "phv_msb": 15,
12431 "is_compiler_generated": false,
12432 "field_name": "tcp_srcPort",
12433 "field_width": 2,
12434 "field_lsb": 0
12435 },
12436 {
12437 "word_bit_width": 16,
12438 "position_offset": 33,
12439 "phv_lsb": 0,
12440 "is_pov": false,
12441 "field_msb": 15,
12442 "phv_msb": 7,
12443 "is_compiler_generated": false,
12444 "field_name": "tcp_dstPort",
12445 "field_width": 2,
12446 "field_lsb": 8
12447 }
12448 ]
12449 },
12450 {
12451 "phv_number": 133,
12452 "records": [
12453 {
12454 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012455 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012456 "phv_lsb": 8,
12457 "is_pov": false,
12458 "field_msb": 7,
12459 "phv_msb": 15,
12460 "is_compiler_generated": false,
12461 "field_name": "ethernet_dstAddr",
12462 "field_width": 6,
12463 "field_lsb": 0
12464 },
12465 {
12466 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070012467 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012468 "phv_lsb": 0,
12469 "is_pov": false,
12470 "field_msb": 47,
12471 "phv_msb": 7,
12472 "is_compiler_generated": false,
12473 "field_name": "ethernet_srcAddr",
12474 "field_width": 6,
12475 "field_lsb": 40
12476 }
12477 ]
12478 },
12479 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012480 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012481 "records": [
12482 {
12483 "word_bit_width": 16,
12484 "position_offset": 5,
12485 "phv_lsb": 0,
12486 "is_pov": false,
12487 "field_msb": 15,
12488 "phv_msb": 15,
12489 "is_compiler_generated": false,
12490 "field_name": "ethernet_etherType",
12491 "field_width": 2,
12492 "field_lsb": 0
12493 }
12494 ]
12495 },
12496 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012497 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012498 "records": [
12499 {
12500 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012501 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012502 "phv_lsb": 0,
12503 "is_pov": false,
12504 "field_msb": 15,
12505 "phv_msb": 15,
12506 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012507 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012508 "field_width": 2,
12509 "field_lsb": 0
12510 }
12511 ]
12512 },
12513 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012514 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012515 "records": [
12516 {
12517 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070012518 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012519 "phv_lsb": 0,
12520 "is_pov": false,
12521 "field_msb": 15,
12522 "phv_msb": 15,
12523 "is_compiler_generated": false,
12524 "field_name": "ecmp_metadata_selector",
12525 "field_width": 2,
12526 "field_lsb": 0
12527 }
12528 ]
12529 },
12530 {
12531 "phv_number": 256,
12532 "records": [
12533 {
12534 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012535 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012536 "phv_lsb": 24,
12537 "is_pov": false,
12538 "field_msb": 7,
12539 "phv_msb": 31,
12540 "is_compiler_generated": false,
12541 "field_name": "ipv4_identification",
12542 "field_width": 2,
12543 "field_lsb": 0
12544 },
12545 {
12546 "word_bit_width": 32,
12547 "position_offset": 7,
12548 "phv_lsb": 21,
12549 "is_pov": false,
12550 "field_msb": 2,
12551 "phv_msb": 23,
12552 "is_compiler_generated": false,
12553 "field_name": "ipv4_flags",
12554 "field_width": 1,
12555 "field_lsb": 0
12556 },
12557 {
12558 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012559 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012560 "phv_lsb": 8,
12561 "is_pov": false,
12562 "field_msb": 12,
12563 "phv_msb": 20,
12564 "is_compiler_generated": false,
12565 "field_name": "ipv4_fragOffset",
12566 "field_width": 2,
12567 "field_lsb": 0
12568 },
12569 {
12570 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012571 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012572 "phv_lsb": 0,
12573 "is_pov": false,
12574 "field_msb": 7,
12575 "phv_msb": 7,
12576 "is_compiler_generated": false,
12577 "field_name": "ipv4_ttl",
12578 "field_width": 1,
12579 "field_lsb": 0
12580 }
12581 ]
12582 },
12583 {
12584 "phv_number": 257,
12585 "records": [
12586 {
12587 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012588 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012589 "phv_lsb": 28,
12590 "is_pov": false,
12591 "field_msb": 3,
12592 "phv_msb": 31,
12593 "is_compiler_generated": false,
12594 "field_name": "tcp_dataOffset",
12595 "field_width": 1,
12596 "field_lsb": 0
12597 },
12598 {
12599 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012600 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012601 "phv_lsb": 25,
12602 "is_pov": false,
12603 "field_msb": 2,
12604 "phv_msb": 27,
12605 "is_compiler_generated": false,
12606 "field_name": "tcp_res",
12607 "field_width": 1,
12608 "field_lsb": 0
12609 },
12610 {
12611 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012612 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012613 "phv_lsb": 22,
12614 "is_pov": false,
12615 "field_msb": 2,
12616 "phv_msb": 24,
12617 "is_compiler_generated": false,
12618 "field_name": "tcp_ecn",
12619 "field_width": 1,
12620 "field_lsb": 0
12621 },
12622 {
12623 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012624 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012625 "phv_lsb": 16,
12626 "is_pov": false,
12627 "field_msb": 5,
12628 "phv_msb": 21,
12629 "is_compiler_generated": false,
12630 "field_name": "tcp_ctrl",
12631 "field_width": 1,
12632 "field_lsb": 0
12633 },
12634 {
12635 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012636 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012637 "phv_lsb": 0,
12638 "is_pov": false,
12639 "field_msb": 15,
12640 "phv_msb": 15,
12641 "is_compiler_generated": false,
12642 "field_name": "tcp_window",
12643 "field_width": 2,
12644 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +020012645 },
12646 {
12647 "word_bit_width": 32,
12648 "position_offset": 17,
12649 "phv_lsb": 16,
12650 "is_pov": false,
12651 "field_msb": 15,
12652 "phv_msb": 31,
12653 "is_compiler_generated": false,
12654 "field_name": "udp_length_",
12655 "field_width": 2,
12656 "field_lsb": 0
12657 },
12658 {
12659 "word_bit_width": 32,
12660 "position_offset": 68,
12661 "phv_lsb": 0,
12662 "is_pov": false,
12663 "field_msb": 15,
12664 "phv_msb": 15,
12665 "is_compiler_generated": false,
12666 "field_name": "udp_checksum",
12667 "field_width": 2,
12668 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012669 }
12670 ]
12671 },
12672 {
Brian O'Connora6862e02017-09-08 01:17:39 -070012673 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012674 "records": [
12675 {
12676 "word_bit_width": 32,
12677 "position_offset": 2,
12678 "phv_lsb": 16,
12679 "is_pov": false,
12680 "field_msb": 15,
12681 "phv_msb": 31,
12682 "is_compiler_generated": false,
12683 "field_name": "tcp_checksum",
12684 "field_width": 2,
12685 "field_lsb": 0
12686 },
12687 {
12688 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070012689 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012690 "phv_lsb": 0,
12691 "is_pov": false,
12692 "field_msb": 15,
12693 "phv_msb": 15,
12694 "is_compiler_generated": false,
12695 "field_name": "tcp_urgentPtr",
12696 "field_width": 2,
12697 "field_lsb": 0
12698 }
12699 ]
12700 },
12701 {
Brian O'Connora6862e02017-09-08 01:17:39 -070012702 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012703 "records": [
12704 {
12705 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070012706 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020012707 "phv_lsb": 4,
12708 "is_pov": false,
12709 "field_msb": 3,
12710 "phv_msb": 7,
12711 "is_compiler_generated": false,
12712 "field_name": "ipv4_version",
12713 "field_width": 1,
12714 "field_lsb": 0
12715 },
12716 {
12717 "word_bit_width": 8,
12718 "position_offset": 40,
12719 "phv_lsb": 0,
12720 "is_pov": false,
12721 "field_msb": 3,
12722 "phv_msb": 3,
12723 "is_compiler_generated": false,
12724 "field_name": "ipv4_ihl",
12725 "field_width": 1,
12726 "field_lsb": 0
12727 }
12728 ]
12729 },
12730 {
Brian O'Connora6862e02017-09-08 01:17:39 -070012731 "phv_number": 289,
12732 "records": [
12733 {
12734 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020012735 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -070012736 "phv_lsb": 0,
12737 "is_pov": false,
12738 "field_msb": 7,
12739 "phv_msb": 7,
12740 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020012741 "field_name": "tcp_seqNo",
12742 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070012743 "field_lsb": 0
12744 },
12745 {
12746 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020012747 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -070012748 "phv_lsb": 0,
12749 "is_pov": false,
12750 "field_msb": 15,
12751 "phv_msb": 7,
12752 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020012753 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -070012754 "field_width": 2,
12755 "field_lsb": 8
12756 }
12757 ]
12758 },
12759 {
Brian O'Connora6862e02017-09-08 01:17:39 -070012760 "phv_number": 320,
12761 "records": [
12762 {
12763 "word_bit_width": 16,
12764 "position_offset": 4,
12765 "phv_lsb": 8,
12766 "is_pov": false,
12767 "field_msb": 7,
12768 "phv_msb": 15,
12769 "is_compiler_generated": false,
12770 "field_name": "ipv4_diffserv",
12771 "field_width": 1,
12772 "field_lsb": 0
12773 },
12774 {
12775 "word_bit_width": 16,
12776 "position_offset": 63,
12777 "phv_lsb": 0,
12778 "is_pov": false,
12779 "field_msb": 15,
12780 "phv_msb": 7,
12781 "is_compiler_generated": false,
12782 "field_name": "ipv4_totalLen",
12783 "field_width": 2,
12784 "field_lsb": 8
12785 }
12786 ]
12787 },
12788 {
12789 "phv_number": 321,
12790 "records": [
12791 {
12792 "word_bit_width": 16,
12793 "position_offset": 63,
12794 "phv_lsb": 8,
12795 "is_pov": false,
12796 "field_msb": 7,
12797 "phv_msb": 15,
12798 "is_compiler_generated": false,
12799 "field_name": "ipv4_totalLen",
12800 "field_width": 2,
12801 "field_lsb": 0
12802 },
12803 {
12804 "word_bit_width": 16,
12805 "position_offset": 49,
12806 "phv_lsb": 0,
12807 "is_pov": false,
12808 "field_msb": 15,
12809 "phv_msb": 7,
12810 "is_compiler_generated": false,
12811 "field_name": "ipv4_identification",
12812 "field_width": 2,
12813 "field_lsb": 8
12814 }
12815 ]
12816 },
12817 {
12818 "phv_number": 322,
12819 "records": [
12820 {
12821 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012822 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070012823 "phv_lsb": 0,
12824 "is_pov": false,
12825 "field_msb": 31,
12826 "phv_msb": 15,
12827 "is_compiler_generated": false,
12828 "field_name": "tcp_ackNo",
12829 "field_width": 4,
12830 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +020012831 },
12832 {
12833 "word_bit_width": 16,
12834 "position_offset": 55,
12835 "phv_lsb": 0,
12836 "is_pov": false,
12837 "field_msb": 15,
12838 "phv_msb": 15,
12839 "is_compiler_generated": false,
12840 "field_name": "udp_dstPort",
12841 "field_width": 2,
12842 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070012843 }
12844 ]
12845 },
12846 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012847 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -070012848 "records": [
12849 {
12850 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020012851 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070012852 "phv_lsb": 0,
12853 "is_pov": false,
12854 "field_msb": 15,
12855 "phv_msb": 15,
12856 "is_compiler_generated": false,
12857 "field_name": "tcp_ackNo",
12858 "field_width": 4,
12859 "field_lsb": 0
12860 }
12861 ]
12862 }
12863 ],
12864 "egress": [
12865 {
12866 "phv_number": 80,
12867 "records": [
12868 {
12869 "word_bit_width": 8,
12870 "position_offset": 7,
12871 "phv_lsb": 0,
12872 "is_pov": false,
12873 "field_msb": 2,
12874 "phv_msb": 2,
12875 "is_compiler_generated": false,
12876 "field_name": "eg_intr_md_egress_cos",
12877 "field_width": 1,
12878 "field_lsb": 0
12879 }
12880 ]
12881 },
12882 {
12883 "phv_number": 81,
12884 "records": [
12885 {
12886 "word_bit_width": 8,
12887 "position_offset": 0,
12888 "phv_lsb": 0,
12889 "is_pov": true,
12890 "pov_headers": [
12891 {
12892 "bit_index": 0,
12893 "position_offset": 73,
12894 "header_name": "packet_in_hdr",
12895 "hidden": false
12896 },
12897 {
12898 "bit_index": 1,
12899 "position_offset": 74,
12900 "header_name": "packet_out_hdr",
12901 "hidden": false
12902 },
12903 {
12904 "bit_index": 2,
12905 "position_offset": 75,
12906 "header_name": "ethernet",
12907 "hidden": false
12908 },
12909 {
12910 "bit_index": 3,
12911 "position_offset": 76,
12912 "header_name": "ipv4",
12913 "hidden": false
12914 },
12915 {
12916 "bit_index": 4,
12917 "position_offset": 77,
12918 "header_name": "tcp",
12919 "hidden": false
12920 },
12921 {
12922 "bit_index": 5,
12923 "position_offset": 78,
12924 "header_name": "udp",
12925 "hidden": false
12926 }
12927 ],
12928 "field_msb": 7,
12929 "phv_msb": 7,
12930 "is_compiler_generated": false,
12931 "field_name": "POV",
12932 "field_width": 0,
12933 "field_lsb": 0
12934 }
12935 ]
12936 },
12937 {
12938 "phv_number": 144,
12939 "records": [
12940 {
12941 "word_bit_width": 16,
12942 "position_offset": 61,
12943 "phv_lsb": 0,
12944 "is_pov": false,
12945 "field_msb": 8,
12946 "phv_msb": 8,
12947 "is_compiler_generated": false,
12948 "field_name": "eg_intr_md_egress_port",
12949 "field_width": 2,
12950 "field_lsb": 0
12951 }
12952 ]
12953 },
12954 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012955 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -070012956 "records": [
12957 {
12958 "word_bit_width": 32,
12959 "position_offset": 47,
12960 "phv_lsb": 24,
12961 "is_pov": false,
12962 "field_msb": 7,
12963 "phv_msb": 31,
12964 "is_compiler_generated": false,
12965 "field_name": "ipv4_ttl",
12966 "field_width": 1,
12967 "field_lsb": 0
12968 },
12969 {
12970 "word_bit_width": 32,
12971 "position_offset": 18,
12972 "phv_lsb": 16,
12973 "is_pov": false,
12974 "field_msb": 7,
12975 "phv_msb": 23,
12976 "is_compiler_generated": false,
12977 "field_name": "ipv4_protocol",
12978 "field_width": 1,
12979 "field_lsb": 0
12980 },
12981 {
12982 "word_bit_width": 32,
12983 "position_offset": 9,
12984 "phv_lsb": 0,
12985 "is_pov": false,
12986 "field_msb": 15,
12987 "phv_msb": 15,
12988 "is_compiler_generated": false,
12989 "field_name": "ipv4_hdrChecksum",
12990 "field_width": 2,
12991 "field_lsb": 0
12992 }
12993 ]
12994 },
12995 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020012996 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -070012997 "records": [
12998 {
12999 "word_bit_width": 32,
13000 "position_offset": 12,
13001 "phv_lsb": 0,
13002 "is_pov": false,
13003 "field_msb": 31,
13004 "phv_msb": 31,
13005 "is_compiler_generated": false,
13006 "field_name": "ipv4_srcAddr",
13007 "field_width": 4,
13008 "field_lsb": 0
13009 }
13010 ]
13011 },
13012 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013013 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -070013014 "records": [
13015 {
13016 "word_bit_width": 32,
13017 "position_offset": 50,
13018 "phv_lsb": 0,
13019 "is_pov": false,
13020 "field_msb": 31,
13021 "phv_msb": 31,
13022 "is_compiler_generated": false,
13023 "field_name": "ipv4_dstAddr",
13024 "field_width": 4,
13025 "field_lsb": 0
13026 }
13027 ]
13028 },
13029 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013030 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -070013031 "records": [
13032 {
13033 "word_bit_width": 32,
13034 "position_offset": 25,
13035 "phv_lsb": 0,
13036 "is_pov": false,
13037 "field_msb": 31,
13038 "phv_msb": 31,
13039 "is_compiler_generated": false,
13040 "field_name": "tcp_ackNo",
13041 "field_width": 4,
13042 "field_lsb": 0
13043 },
13044 {
13045 "word_bit_width": 32,
13046 "position_offset": 16,
13047 "phv_lsb": 16,
13048 "is_pov": false,
13049 "field_msb": 15,
13050 "phv_msb": 31,
13051 "is_compiler_generated": false,
13052 "field_name": "udp_length_",
13053 "field_width": 2,
13054 "field_lsb": 0
13055 },
13056 {
13057 "word_bit_width": 32,
13058 "position_offset": 59,
13059 "phv_lsb": 0,
13060 "is_pov": false,
13061 "field_msb": 15,
13062 "phv_msb": 15,
13063 "is_compiler_generated": false,
13064 "field_name": "udp_checksum",
13065 "field_width": 2,
13066 "field_lsb": 0
13067 }
13068 ]
13069 },
13070 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013071 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -070013072 "records": [
13073 {
13074 "word_bit_width": 32,
13075 "position_offset": 38,
13076 "phv_lsb": 28,
13077 "is_pov": false,
13078 "field_msb": 3,
13079 "phv_msb": 31,
13080 "is_compiler_generated": false,
13081 "field_name": "tcp_dataOffset",
13082 "field_width": 1,
13083 "field_lsb": 0
13084 },
13085 {
13086 "word_bit_width": 32,
13087 "position_offset": 58,
13088 "phv_lsb": 25,
13089 "is_pov": false,
13090 "field_msb": 2,
13091 "phv_msb": 27,
13092 "is_compiler_generated": false,
13093 "field_name": "tcp_res",
13094 "field_width": 1,
13095 "field_lsb": 0
13096 },
13097 {
13098 "word_bit_width": 32,
13099 "position_offset": 11,
13100 "phv_lsb": 22,
13101 "is_pov": false,
13102 "field_msb": 2,
13103 "phv_msb": 24,
13104 "is_compiler_generated": false,
13105 "field_name": "tcp_ecn",
13106 "field_width": 1,
13107 "field_lsb": 0
13108 },
13109 {
13110 "word_bit_width": 32,
13111 "position_offset": 34,
13112 "phv_lsb": 16,
13113 "is_pov": false,
13114 "field_msb": 5,
13115 "phv_msb": 21,
13116 "is_compiler_generated": false,
13117 "field_name": "tcp_ctrl",
13118 "field_width": 1,
13119 "field_lsb": 0
13120 },
13121 {
13122 "word_bit_width": 32,
13123 "position_offset": 41,
13124 "phv_lsb": 0,
13125 "is_pov": false,
13126 "field_msb": 15,
13127 "phv_msb": 15,
13128 "is_compiler_generated": false,
13129 "field_name": "tcp_window",
13130 "field_width": 2,
13131 "field_lsb": 0
13132 }
13133 ]
13134 },
13135 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013136 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -070013137 "records": [
13138 {
13139 "word_bit_width": 32,
13140 "position_offset": 2,
13141 "phv_lsb": 16,
13142 "is_pov": false,
13143 "field_msb": 15,
13144 "phv_msb": 31,
13145 "is_compiler_generated": false,
13146 "field_name": "tcp_checksum",
13147 "field_width": 2,
13148 "field_lsb": 0
13149 },
13150 {
13151 "word_bit_width": 32,
13152 "position_offset": 45,
13153 "phv_lsb": 0,
13154 "is_pov": false,
13155 "field_msb": 15,
13156 "phv_msb": 15,
13157 "is_compiler_generated": false,
13158 "field_name": "tcp_urgentPtr",
13159 "field_width": 2,
13160 "field_lsb": 0
13161 }
13162 ]
13163 },
13164 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013165 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -070013166 "records": [
13167 {
13168 "word_bit_width": 32,
13169 "position_offset": 19,
13170 "phv_lsb": 0,
13171 "is_pov": false,
13172 "field_msb": 39,
13173 "phv_msb": 31,
13174 "is_compiler_generated": false,
13175 "field_name": "ethernet_dstAddr",
13176 "field_width": 6,
13177 "field_lsb": 8
13178 }
13179 ]
13180 },
13181 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013182 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -070013183 "records": [
13184 {
13185 "word_bit_width": 32,
13186 "position_offset": 63,
13187 "phv_lsb": 0,
13188 "is_pov": false,
13189 "field_msb": 31,
13190 "phv_msb": 31,
13191 "is_compiler_generated": false,
13192 "field_name": "ethernet_srcAddr",
13193 "field_width": 6,
13194 "field_lsb": 0
13195 }
13196 ]
13197 },
13198 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013199 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -070013200 "records": [
13201 {
13202 "word_bit_width": 8,
13203 "position_offset": 29,
13204 "phv_lsb": 4,
13205 "is_pov": false,
13206 "field_msb": 3,
13207 "phv_msb": 7,
13208 "is_compiler_generated": false,
13209 "field_name": "ipv4_version",
13210 "field_width": 1,
13211 "field_lsb": 0
13212 },
13213 {
13214 "word_bit_width": 8,
13215 "position_offset": 37,
13216 "phv_lsb": 0,
13217 "is_pov": false,
13218 "field_msb": 3,
13219 "phv_msb": 3,
13220 "is_compiler_generated": false,
13221 "field_name": "ipv4_ihl",
13222 "field_width": 1,
13223 "field_lsb": 0
13224 }
13225 ]
13226 },
13227 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013228 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013229 "records": [
13230 {
13231 "word_bit_width": 8,
13232 "position_offset": 4,
13233 "phv_lsb": 0,
13234 "is_pov": false,
13235 "field_msb": 7,
13236 "phv_msb": 7,
13237 "is_compiler_generated": false,
13238 "field_name": "ipv4_diffserv",
13239 "field_width": 1,
13240 "field_lsb": 0
13241 }
13242 ]
13243 },
13244 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013245 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013246 "records": [
13247 {
13248 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070013249 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013250 "phv_lsb": 0,
13251 "is_pov": false,
13252 "field_msb": 15,
13253 "phv_msb": 7,
13254 "is_compiler_generated": false,
13255 "field_name": "tcp_srcPort",
13256 "field_width": 2,
13257 "field_lsb": 8
13258 },
13259 {
13260 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070013261 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013262 "phv_lsb": 0,
13263 "is_pov": false,
13264 "field_msb": 15,
13265 "phv_msb": 7,
13266 "is_compiler_generated": false,
13267 "field_name": "udp_srcPort",
13268 "field_width": 2,
13269 "field_lsb": 8
13270 }
13271 ]
13272 },
13273 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013274 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013275 "records": [
13276 {
13277 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070013278 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013279 "phv_lsb": 0,
13280 "is_pov": false,
13281 "field_msb": 7,
13282 "phv_msb": 7,
13283 "is_compiler_generated": false,
13284 "field_name": "tcp_srcPort",
13285 "field_width": 2,
13286 "field_lsb": 0
13287 },
13288 {
13289 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070013290 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013291 "phv_lsb": 0,
13292 "is_pov": false,
13293 "field_msb": 7,
13294 "phv_msb": 7,
13295 "is_compiler_generated": false,
13296 "field_name": "udp_srcPort",
13297 "field_width": 2,
13298 "field_lsb": 0
13299 }
13300 ]
13301 },
13302 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013303 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013304 "records": [
13305 {
13306 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070013307 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013308 "phv_lsb": 0,
13309 "is_pov": false,
13310 "field_msb": 47,
13311 "phv_msb": 7,
13312 "is_compiler_generated": false,
13313 "field_name": "ethernet_dstAddr",
13314 "field_width": 6,
13315 "field_lsb": 40
13316 }
13317 ]
13318 },
13319 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013320 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013321 "records": [
13322 {
13323 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070013324 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013325 "phv_lsb": 0,
13326 "is_pov": false,
13327 "field_msb": 39,
13328 "phv_msb": 7,
13329 "is_compiler_generated": false,
13330 "field_name": "ethernet_srcAddr",
13331 "field_width": 6,
13332 "field_lsb": 32
13333 }
13334 ]
13335 },
13336 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013337 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013338 "records": [
13339 {
13340 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013341 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013342 "phv_lsb": 0,
13343 "is_pov": false,
13344 "field_msb": 15,
13345 "phv_msb": 15,
13346 "is_compiler_generated": false,
13347 "field_name": "ipv4_totalLen",
13348 "field_width": 2,
13349 "field_lsb": 0
13350 }
13351 ]
13352 },
13353 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013354 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013355 "records": [
13356 {
13357 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013358 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013359 "phv_lsb": 0,
13360 "is_pov": false,
13361 "field_msb": 15,
13362 "phv_msb": 15,
13363 "is_compiler_generated": false,
13364 "field_name": "ipv4_identification",
13365 "field_width": 2,
13366 "field_lsb": 0
13367 }
13368 ]
13369 },
13370 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013371 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013372 "records": [
13373 {
13374 "word_bit_width": 16,
13375 "position_offset": 8,
13376 "phv_lsb": 13,
13377 "is_pov": false,
13378 "field_msb": 2,
13379 "phv_msb": 15,
13380 "is_compiler_generated": false,
13381 "field_name": "ipv4_flags",
13382 "field_width": 1,
13383 "field_lsb": 0
13384 },
13385 {
13386 "word_bit_width": 16,
13387 "position_offset": 5,
13388 "phv_lsb": 0,
13389 "is_pov": false,
13390 "field_msb": 12,
13391 "phv_msb": 12,
13392 "is_compiler_generated": false,
13393 "field_name": "ipv4_fragOffset",
13394 "field_width": 2,
13395 "field_lsb": 0
13396 }
13397 ]
13398 },
13399 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013400 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013401 "records": [
13402 {
13403 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013404 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013405 "phv_lsb": 0,
13406 "is_pov": false,
13407 "field_msb": 15,
13408 "phv_msb": 15,
13409 "is_compiler_generated": false,
13410 "field_name": "tcp_dstPort",
13411 "field_width": 2,
13412 "field_lsb": 0
13413 },
13414 {
13415 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013416 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013417 "phv_lsb": 0,
13418 "is_pov": false,
13419 "field_msb": 15,
13420 "phv_msb": 15,
13421 "is_compiler_generated": false,
13422 "field_name": "udp_dstPort",
13423 "field_width": 2,
13424 "field_lsb": 0
13425 }
13426 ]
13427 },
13428 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013429 "phv_number": 330,
13430 "records": [
13431 {
13432 "word_bit_width": 16,
13433 "position_offset": 69,
13434 "phv_lsb": 0,
13435 "is_pov": false,
13436 "field_msb": 31,
13437 "phv_msb": 15,
13438 "is_compiler_generated": false,
13439 "field_name": "tcp_seqNo",
13440 "field_width": 4,
13441 "field_lsb": 16
13442 }
13443 ]
13444 },
13445 {
13446 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013447 "records": [
13448 {
13449 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013450 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013451 "phv_lsb": 0,
13452 "is_pov": false,
13453 "field_msb": 15,
13454 "phv_msb": 15,
13455 "is_compiler_generated": false,
13456 "field_name": "tcp_seqNo",
13457 "field_width": 4,
13458 "field_lsb": 0
13459 }
13460 ]
13461 },
13462 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013463 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013464 "records": [
13465 {
13466 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013467 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013468 "phv_lsb": 8,
13469 "is_pov": false,
13470 "field_msb": 7,
13471 "phv_msb": 15,
13472 "is_compiler_generated": false,
13473 "field_name": "ethernet_dstAddr",
13474 "field_width": 6,
13475 "field_lsb": 0
13476 },
13477 {
13478 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013479 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013480 "phv_lsb": 0,
13481 "is_pov": false,
13482 "field_msb": 47,
13483 "phv_msb": 7,
13484 "is_compiler_generated": false,
13485 "field_name": "ethernet_srcAddr",
13486 "field_width": 6,
13487 "field_lsb": 40
13488 }
13489 ]
13490 },
13491 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013492 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013493 "records": [
13494 {
13495 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013496 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013497 "phv_lsb": 0,
13498 "is_pov": false,
13499 "field_msb": 15,
13500 "phv_msb": 15,
13501 "is_compiler_generated": false,
13502 "field_name": "ethernet_etherType",
13503 "field_width": 2,
13504 "field_lsb": 0
13505 }
13506 ]
13507 },
13508 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013509 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013510 "records": [
13511 {
13512 "word_bit_width": 16,
13513 "position_offset": 0,
13514 "phv_lsb": 7,
13515 "is_pov": false,
13516 "field_msb": 8,
13517 "phv_msb": 15,
13518 "is_compiler_generated": false,
13519 "field_name": "packet_out_hdr_egress_port",
13520 "field_width": 2,
13521 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070013522 },
13523 {
13524 "word_bit_width": 16,
13525 "position_offset": 30,
13526 "phv_lsb": 7,
13527 "is_pov": false,
13528 "field_msb": 8,
13529 "phv_msb": 15,
13530 "is_compiler_generated": false,
13531 "field_name": "packet_in_hdr_ingress_port",
13532 "field_width": 2,
13533 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013534 }
13535 ]
13536 }
13537 ],
13538 "stage_number": 8
13539 },
13540 {
13541 "ingress": [
13542 {
13543 "phv_number": 0,
13544 "records": [
13545 {
13546 "word_bit_width": 32,
13547 "position_offset": 0,
13548 "phv_lsb": 0,
13549 "is_pov": true,
13550 "pov_headers": [],
13551 "field_msb": 31,
13552 "phv_msb": 31,
13553 "is_compiler_generated": false,
13554 "field_name": "POV",
13555 "field_width": 0,
13556 "field_lsb": 0
13557 }
13558 ]
13559 },
13560 {
13561 "phv_number": 1,
13562 "records": [
13563 {
13564 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070013565 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013566 "phv_lsb": 24,
13567 "is_pov": false,
13568 "field_msb": 7,
13569 "phv_msb": 31,
13570 "is_compiler_generated": false,
13571 "field_name": "ipv4_protocol",
13572 "field_width": 1,
13573 "field_lsb": 0
13574 },
13575 {
13576 "word_bit_width": 32,
13577 "position_offset": 10,
13578 "phv_lsb": 8,
13579 "is_pov": false,
13580 "field_msb": 15,
13581 "phv_msb": 23,
13582 "is_compiler_generated": false,
13583 "field_name": "ipv4_hdrChecksum",
13584 "field_width": 2,
13585 "field_lsb": 0
13586 },
13587 {
13588 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070013589 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013590 "phv_lsb": 0,
13591 "is_pov": false,
13592 "field_msb": 31,
13593 "phv_msb": 7,
13594 "is_compiler_generated": false,
13595 "field_name": "ipv4_srcAddr",
13596 "field_width": 4,
13597 "field_lsb": 24
13598 }
13599 ]
13600 },
13601 {
13602 "phv_number": 2,
13603 "records": [
13604 {
13605 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070013606 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013607 "phv_lsb": 0,
13608 "is_pov": false,
13609 "field_msb": 31,
13610 "phv_msb": 31,
13611 "is_compiler_generated": false,
13612 "field_name": "ipv4_dstAddr",
13613 "field_width": 4,
13614 "field_lsb": 0
13615 }
13616 ]
13617 },
13618 {
13619 "phv_number": 3,
13620 "records": [
13621 {
13622 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +020013623 "position_offset": 33,
13624 "phv_lsb": 24,
13625 "is_pov": false,
13626 "field_msb": 7,
13627 "phv_msb": 31,
13628 "is_compiler_generated": false,
13629 "field_name": "tcp_dstPort",
13630 "field_width": 2,
13631 "field_lsb": 0
13632 },
13633 {
13634 "word_bit_width": 32,
13635 "position_offset": 76,
13636 "phv_lsb": 0,
13637 "is_pov": false,
13638 "field_msb": 31,
13639 "phv_msb": 23,
13640 "is_compiler_generated": false,
13641 "field_name": "tcp_seqNo",
13642 "field_width": 4,
13643 "field_lsb": 8
13644 }
13645 ]
13646 },
13647 {
13648 "phv_number": 4,
13649 "records": [
13650 {
13651 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020013652 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013653 "phv_lsb": 0,
13654 "is_pov": false,
13655 "field_msb": 39,
13656 "phv_msb": 31,
13657 "is_compiler_generated": false,
13658 "field_name": "ethernet_dstAddr",
13659 "field_width": 6,
13660 "field_lsb": 8
13661 }
13662 ]
13663 },
13664 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013665 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013666 "records": [
13667 {
13668 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070013669 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013670 "phv_lsb": 0,
13671 "is_pov": false,
13672 "field_msb": 31,
13673 "phv_msb": 31,
13674 "is_compiler_generated": false,
13675 "field_name": "ethernet_srcAddr",
13676 "field_width": 6,
13677 "field_lsb": 0
13678 }
13679 ]
13680 },
13681 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013682 "phv_number": 64,
13683 "records": [
13684 {
13685 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070013686 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013687 "phv_lsb": 0,
13688 "is_pov": false,
13689 "field_msb": 23,
13690 "phv_msb": 7,
13691 "is_compiler_generated": false,
13692 "field_name": "ipv4_srcAddr",
13693 "field_width": 4,
13694 "field_lsb": 16
13695 }
13696 ]
13697 },
13698 {
Brian O'Connora6862e02017-09-08 01:17:39 -070013699 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013700 "records": [
13701 {
13702 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020013703 "position_offset": 38,
13704 "phv_lsb": 0,
13705 "is_pov": false,
13706 "field_msb": 15,
13707 "phv_msb": 7,
13708 "is_compiler_generated": false,
13709 "field_name": "tcp_srcPort",
13710 "field_width": 2,
13711 "field_lsb": 8
13712 },
13713 {
13714 "word_bit_width": 8,
13715 "position_offset": 66,
13716 "phv_lsb": 0,
13717 "is_pov": false,
13718 "field_msb": 7,
13719 "phv_msb": 7,
13720 "is_compiler_generated": false,
13721 "field_name": "udp_srcPort",
13722 "field_width": 2,
13723 "field_lsb": 0
13724 }
13725 ]
13726 },
13727 {
13728 "phv_number": 66,
13729 "records": [
13730 {
13731 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020013732 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013733 "phv_lsb": 0,
13734 "is_pov": false,
13735 "field_msb": 47,
13736 "phv_msb": 7,
13737 "is_compiler_generated": false,
13738 "field_name": "ethernet_dstAddr",
13739 "field_width": 6,
13740 "field_lsb": 40
13741 }
13742 ]
13743 },
13744 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013745 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013746 "records": [
13747 {
13748 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070013749 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013750 "phv_lsb": 0,
13751 "is_pov": false,
13752 "field_msb": 39,
13753 "phv_msb": 7,
13754 "is_compiler_generated": false,
13755 "field_name": "ethernet_srcAddr",
13756 "field_width": 6,
13757 "field_lsb": 32
13758 }
13759 ]
13760 },
13761 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013762 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013763 "records": [
13764 {
13765 "word_bit_width": 8,
13766 "position_offset": 0,
13767 "phv_lsb": 0,
13768 "is_pov": true,
13769 "pov_headers": [
13770 {
13771 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070013772 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013773 "header_name": "packet_in_hdr",
13774 "hidden": false
13775 },
13776 {
13777 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070013778 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013779 "header_name": "packet_out_hdr",
13780 "hidden": false
13781 },
13782 {
13783 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -070013784 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013785 "header_name": "ethernet",
13786 "hidden": false
13787 },
13788 {
13789 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -070013790 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013791 "header_name": "ipv4",
13792 "hidden": false
13793 },
13794 {
13795 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070013796 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013797 "header_name": "tcp",
13798 "hidden": false
13799 },
13800 {
13801 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -070013802 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013803 "header_name": "udp",
13804 "hidden": false
13805 }
13806 ],
13807 "field_msb": 39,
13808 "phv_msb": 7,
13809 "is_compiler_generated": false,
13810 "field_name": "POV",
13811 "field_width": 0,
13812 "field_lsb": 32
13813 }
13814 ]
13815 },
13816 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013817 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013818 "records": [
13819 {
13820 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070013821 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013822 "phv_lsb": 5,
13823 "is_pov": false,
13824 "field_msb": 2,
13825 "phv_msb": 7,
13826 "is_compiler_generated": false,
13827 "field_name": "ig_intr_md_for_tm_drop_ctl",
13828 "field_width": 1,
13829 "field_lsb": 0
13830 }
13831 ]
13832 },
13833 {
13834 "phv_number": 128,
13835 "records": [
13836 {
13837 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020013838 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013839 "phv_lsb": 15,
13840 "is_pov": false,
13841 "field_msb": 0,
13842 "phv_msb": 15,
13843 "is_compiler_generated": false,
13844 "field_name": "ig_intr_md_resubmit_flag",
13845 "field_width": 1,
13846 "field_lsb": 0
13847 },
13848 {
13849 "word_bit_width": 16,
13850 "position_offset": 8,
13851 "phv_lsb": 0,
13852 "is_pov": false,
13853 "field_msb": 8,
13854 "phv_msb": 8,
13855 "is_compiler_generated": false,
13856 "field_name": "ig_intr_md_ingress_port",
13857 "field_width": 2,
13858 "field_lsb": 0
13859 }
13860 ]
13861 },
13862 {
13863 "phv_number": 129,
13864 "records": [
13865 {
13866 "word_bit_width": 16,
13867 "position_offset": 0,
13868 "phv_lsb": 7,
13869 "is_pov": false,
13870 "field_msb": 8,
13871 "phv_msb": 15,
13872 "is_compiler_generated": false,
13873 "field_name": "packet_out_hdr_egress_port",
13874 "field_width": 2,
13875 "field_lsb": 0
13876 },
13877 {
13878 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020013879 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013880 "phv_lsb": 7,
13881 "is_pov": false,
13882 "field_msb": 8,
13883 "phv_msb": 15,
13884 "is_compiler_generated": false,
13885 "field_name": "packet_in_hdr_ingress_port",
13886 "field_width": 2,
13887 "field_lsb": 0
13888 }
13889 ]
13890 },
13891 {
13892 "phv_number": 130,
13893 "records": [
13894 {
13895 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013896 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013897 "phv_lsb": 0,
13898 "is_pov": false,
13899 "field_msb": 8,
13900 "phv_msb": 8,
13901 "is_compiler_generated": false,
13902 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
13903 "field_width": 2,
13904 "field_lsb": 0
13905 }
13906 ]
13907 },
13908 {
13909 "phv_number": 131,
13910 "records": [
13911 {
13912 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013913 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013914 "phv_lsb": 0,
13915 "is_pov": false,
13916 "field_msb": 15,
13917 "phv_msb": 15,
13918 "is_compiler_generated": false,
13919 "field_name": "ipv4_srcAddr",
13920 "field_width": 4,
13921 "field_lsb": 0
13922 }
13923 ]
13924 },
13925 {
13926 "phv_number": 132,
13927 "records": [
13928 {
13929 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +020013930 "position_offset": 38,
13931 "phv_lsb": 8,
13932 "is_pov": false,
13933 "field_msb": 7,
13934 "phv_msb": 15,
13935 "is_compiler_generated": false,
13936 "field_name": "tcp_srcPort",
13937 "field_width": 2,
13938 "field_lsb": 0
13939 },
13940 {
13941 "word_bit_width": 16,
13942 "position_offset": 33,
13943 "phv_lsb": 0,
13944 "is_pov": false,
13945 "field_msb": 15,
13946 "phv_msb": 7,
13947 "is_compiler_generated": false,
13948 "field_name": "tcp_dstPort",
13949 "field_width": 2,
13950 "field_lsb": 8
13951 }
13952 ]
13953 },
13954 {
13955 "phv_number": 133,
13956 "records": [
13957 {
13958 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020013959 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013960 "phv_lsb": 8,
13961 "is_pov": false,
13962 "field_msb": 7,
13963 "phv_msb": 15,
13964 "is_compiler_generated": false,
13965 "field_name": "ethernet_dstAddr",
13966 "field_width": 6,
13967 "field_lsb": 0
13968 },
13969 {
13970 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070013971 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013972 "phv_lsb": 0,
13973 "is_pov": false,
13974 "field_msb": 47,
13975 "phv_msb": 7,
13976 "is_compiler_generated": false,
13977 "field_name": "ethernet_srcAddr",
13978 "field_width": 6,
13979 "field_lsb": 40
13980 }
13981 ]
13982 },
13983 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020013984 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020013985 "records": [
13986 {
13987 "word_bit_width": 16,
13988 "position_offset": 5,
13989 "phv_lsb": 0,
13990 "is_pov": false,
13991 "field_msb": 15,
13992 "phv_msb": 15,
13993 "is_compiler_generated": false,
13994 "field_name": "ethernet_etherType",
13995 "field_width": 2,
13996 "field_lsb": 0
13997 }
13998 ]
13999 },
14000 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014001 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014002 "records": [
14003 {
14004 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020014005 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014006 "phv_lsb": 0,
14007 "is_pov": false,
14008 "field_msb": 15,
14009 "phv_msb": 15,
14010 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020014011 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014012 "field_width": 2,
14013 "field_lsb": 0
14014 }
14015 ]
14016 },
14017 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014018 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014019 "records": [
14020 {
14021 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070014022 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014023 "phv_lsb": 0,
14024 "is_pov": false,
14025 "field_msb": 15,
14026 "phv_msb": 15,
14027 "is_compiler_generated": false,
14028 "field_name": "ecmp_metadata_selector",
14029 "field_width": 2,
14030 "field_lsb": 0
14031 }
14032 ]
14033 },
14034 {
14035 "phv_number": 256,
14036 "records": [
14037 {
14038 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070014039 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014040 "phv_lsb": 24,
14041 "is_pov": false,
14042 "field_msb": 7,
14043 "phv_msb": 31,
14044 "is_compiler_generated": false,
14045 "field_name": "ipv4_identification",
14046 "field_width": 2,
14047 "field_lsb": 0
14048 },
14049 {
14050 "word_bit_width": 32,
14051 "position_offset": 7,
14052 "phv_lsb": 21,
14053 "is_pov": false,
14054 "field_msb": 2,
14055 "phv_msb": 23,
14056 "is_compiler_generated": false,
14057 "field_name": "ipv4_flags",
14058 "field_width": 1,
14059 "field_lsb": 0
14060 },
14061 {
14062 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070014063 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014064 "phv_lsb": 8,
14065 "is_pov": false,
14066 "field_msb": 12,
14067 "phv_msb": 20,
14068 "is_compiler_generated": false,
14069 "field_name": "ipv4_fragOffset",
14070 "field_width": 2,
14071 "field_lsb": 0
14072 },
14073 {
14074 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070014075 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014076 "phv_lsb": 0,
14077 "is_pov": false,
14078 "field_msb": 7,
14079 "phv_msb": 7,
14080 "is_compiler_generated": false,
14081 "field_name": "ipv4_ttl",
14082 "field_width": 1,
14083 "field_lsb": 0
14084 }
14085 ]
14086 },
14087 {
14088 "phv_number": 257,
14089 "records": [
14090 {
14091 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070014092 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014093 "phv_lsb": 28,
14094 "is_pov": false,
14095 "field_msb": 3,
14096 "phv_msb": 31,
14097 "is_compiler_generated": false,
14098 "field_name": "tcp_dataOffset",
14099 "field_width": 1,
14100 "field_lsb": 0
14101 },
14102 {
14103 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070014104 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014105 "phv_lsb": 25,
14106 "is_pov": false,
14107 "field_msb": 2,
14108 "phv_msb": 27,
14109 "is_compiler_generated": false,
14110 "field_name": "tcp_res",
14111 "field_width": 1,
14112 "field_lsb": 0
14113 },
14114 {
14115 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070014116 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014117 "phv_lsb": 22,
14118 "is_pov": false,
14119 "field_msb": 2,
14120 "phv_msb": 24,
14121 "is_compiler_generated": false,
14122 "field_name": "tcp_ecn",
14123 "field_width": 1,
14124 "field_lsb": 0
14125 },
14126 {
14127 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020014128 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014129 "phv_lsb": 16,
14130 "is_pov": false,
14131 "field_msb": 5,
14132 "phv_msb": 21,
14133 "is_compiler_generated": false,
14134 "field_name": "tcp_ctrl",
14135 "field_width": 1,
14136 "field_lsb": 0
14137 },
14138 {
14139 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070014140 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014141 "phv_lsb": 0,
14142 "is_pov": false,
14143 "field_msb": 15,
14144 "phv_msb": 15,
14145 "is_compiler_generated": false,
14146 "field_name": "tcp_window",
14147 "field_width": 2,
14148 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +020014149 },
14150 {
14151 "word_bit_width": 32,
14152 "position_offset": 17,
14153 "phv_lsb": 16,
14154 "is_pov": false,
14155 "field_msb": 15,
14156 "phv_msb": 31,
14157 "is_compiler_generated": false,
14158 "field_name": "udp_length_",
14159 "field_width": 2,
14160 "field_lsb": 0
14161 },
14162 {
14163 "word_bit_width": 32,
14164 "position_offset": 68,
14165 "phv_lsb": 0,
14166 "is_pov": false,
14167 "field_msb": 15,
14168 "phv_msb": 15,
14169 "is_compiler_generated": false,
14170 "field_name": "udp_checksum",
14171 "field_width": 2,
14172 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014173 }
14174 ]
14175 },
14176 {
Brian O'Connora6862e02017-09-08 01:17:39 -070014177 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014178 "records": [
14179 {
14180 "word_bit_width": 32,
14181 "position_offset": 2,
14182 "phv_lsb": 16,
14183 "is_pov": false,
14184 "field_msb": 15,
14185 "phv_msb": 31,
14186 "is_compiler_generated": false,
14187 "field_name": "tcp_checksum",
14188 "field_width": 2,
14189 "field_lsb": 0
14190 },
14191 {
14192 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070014193 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014194 "phv_lsb": 0,
14195 "is_pov": false,
14196 "field_msb": 15,
14197 "phv_msb": 15,
14198 "is_compiler_generated": false,
14199 "field_name": "tcp_urgentPtr",
14200 "field_width": 2,
14201 "field_lsb": 0
14202 }
14203 ]
14204 },
14205 {
Brian O'Connora6862e02017-09-08 01:17:39 -070014206 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014207 "records": [
14208 {
14209 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070014210 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014211 "phv_lsb": 4,
14212 "is_pov": false,
14213 "field_msb": 3,
14214 "phv_msb": 7,
14215 "is_compiler_generated": false,
14216 "field_name": "ipv4_version",
14217 "field_width": 1,
14218 "field_lsb": 0
14219 },
14220 {
14221 "word_bit_width": 8,
14222 "position_offset": 40,
14223 "phv_lsb": 0,
14224 "is_pov": false,
14225 "field_msb": 3,
14226 "phv_msb": 3,
14227 "is_compiler_generated": false,
14228 "field_name": "ipv4_ihl",
14229 "field_width": 1,
14230 "field_lsb": 0
14231 }
14232 ]
14233 },
14234 {
Brian O'Connora6862e02017-09-08 01:17:39 -070014235 "phv_number": 289,
14236 "records": [
14237 {
14238 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020014239 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -070014240 "phv_lsb": 0,
14241 "is_pov": false,
14242 "field_msb": 7,
14243 "phv_msb": 7,
14244 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020014245 "field_name": "tcp_seqNo",
14246 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070014247 "field_lsb": 0
14248 },
14249 {
14250 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020014251 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -070014252 "phv_lsb": 0,
14253 "is_pov": false,
14254 "field_msb": 15,
14255 "phv_msb": 7,
14256 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020014257 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -070014258 "field_width": 2,
14259 "field_lsb": 8
14260 }
14261 ]
14262 },
14263 {
Brian O'Connora6862e02017-09-08 01:17:39 -070014264 "phv_number": 320,
14265 "records": [
14266 {
14267 "word_bit_width": 16,
14268 "position_offset": 4,
14269 "phv_lsb": 8,
14270 "is_pov": false,
14271 "field_msb": 7,
14272 "phv_msb": 15,
14273 "is_compiler_generated": false,
14274 "field_name": "ipv4_diffserv",
14275 "field_width": 1,
14276 "field_lsb": 0
14277 },
14278 {
14279 "word_bit_width": 16,
14280 "position_offset": 63,
14281 "phv_lsb": 0,
14282 "is_pov": false,
14283 "field_msb": 15,
14284 "phv_msb": 7,
14285 "is_compiler_generated": false,
14286 "field_name": "ipv4_totalLen",
14287 "field_width": 2,
14288 "field_lsb": 8
14289 }
14290 ]
14291 },
14292 {
14293 "phv_number": 321,
14294 "records": [
14295 {
14296 "word_bit_width": 16,
14297 "position_offset": 63,
14298 "phv_lsb": 8,
14299 "is_pov": false,
14300 "field_msb": 7,
14301 "phv_msb": 15,
14302 "is_compiler_generated": false,
14303 "field_name": "ipv4_totalLen",
14304 "field_width": 2,
14305 "field_lsb": 0
14306 },
14307 {
14308 "word_bit_width": 16,
14309 "position_offset": 49,
14310 "phv_lsb": 0,
14311 "is_pov": false,
14312 "field_msb": 15,
14313 "phv_msb": 7,
14314 "is_compiler_generated": false,
14315 "field_name": "ipv4_identification",
14316 "field_width": 2,
14317 "field_lsb": 8
14318 }
14319 ]
14320 },
14321 {
14322 "phv_number": 322,
14323 "records": [
14324 {
14325 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020014326 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070014327 "phv_lsb": 0,
14328 "is_pov": false,
14329 "field_msb": 31,
14330 "phv_msb": 15,
14331 "is_compiler_generated": false,
14332 "field_name": "tcp_ackNo",
14333 "field_width": 4,
14334 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +020014335 },
14336 {
14337 "word_bit_width": 16,
14338 "position_offset": 55,
14339 "phv_lsb": 0,
14340 "is_pov": false,
14341 "field_msb": 15,
14342 "phv_msb": 15,
14343 "is_compiler_generated": false,
14344 "field_name": "udp_dstPort",
14345 "field_width": 2,
14346 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070014347 }
14348 ]
14349 },
14350 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014351 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -070014352 "records": [
14353 {
14354 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020014355 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070014356 "phv_lsb": 0,
14357 "is_pov": false,
14358 "field_msb": 15,
14359 "phv_msb": 15,
14360 "is_compiler_generated": false,
14361 "field_name": "tcp_ackNo",
14362 "field_width": 4,
14363 "field_lsb": 0
14364 }
14365 ]
14366 }
14367 ],
14368 "egress": [
14369 {
14370 "phv_number": 80,
14371 "records": [
14372 {
14373 "word_bit_width": 8,
14374 "position_offset": 7,
14375 "phv_lsb": 0,
14376 "is_pov": false,
14377 "field_msb": 2,
14378 "phv_msb": 2,
14379 "is_compiler_generated": false,
14380 "field_name": "eg_intr_md_egress_cos",
14381 "field_width": 1,
14382 "field_lsb": 0
14383 }
14384 ]
14385 },
14386 {
14387 "phv_number": 81,
14388 "records": [
14389 {
14390 "word_bit_width": 8,
14391 "position_offset": 0,
14392 "phv_lsb": 0,
14393 "is_pov": true,
14394 "pov_headers": [
14395 {
14396 "bit_index": 0,
14397 "position_offset": 73,
14398 "header_name": "packet_in_hdr",
14399 "hidden": false
14400 },
14401 {
14402 "bit_index": 1,
14403 "position_offset": 74,
14404 "header_name": "packet_out_hdr",
14405 "hidden": false
14406 },
14407 {
14408 "bit_index": 2,
14409 "position_offset": 75,
14410 "header_name": "ethernet",
14411 "hidden": false
14412 },
14413 {
14414 "bit_index": 3,
14415 "position_offset": 76,
14416 "header_name": "ipv4",
14417 "hidden": false
14418 },
14419 {
14420 "bit_index": 4,
14421 "position_offset": 77,
14422 "header_name": "tcp",
14423 "hidden": false
14424 },
14425 {
14426 "bit_index": 5,
14427 "position_offset": 78,
14428 "header_name": "udp",
14429 "hidden": false
14430 }
14431 ],
14432 "field_msb": 7,
14433 "phv_msb": 7,
14434 "is_compiler_generated": false,
14435 "field_name": "POV",
14436 "field_width": 0,
14437 "field_lsb": 0
14438 }
14439 ]
14440 },
14441 {
14442 "phv_number": 144,
14443 "records": [
14444 {
14445 "word_bit_width": 16,
14446 "position_offset": 61,
14447 "phv_lsb": 0,
14448 "is_pov": false,
14449 "field_msb": 8,
14450 "phv_msb": 8,
14451 "is_compiler_generated": false,
14452 "field_name": "eg_intr_md_egress_port",
14453 "field_width": 2,
14454 "field_lsb": 0
14455 }
14456 ]
14457 },
14458 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014459 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -070014460 "records": [
14461 {
14462 "word_bit_width": 32,
14463 "position_offset": 47,
14464 "phv_lsb": 24,
14465 "is_pov": false,
14466 "field_msb": 7,
14467 "phv_msb": 31,
14468 "is_compiler_generated": false,
14469 "field_name": "ipv4_ttl",
14470 "field_width": 1,
14471 "field_lsb": 0
14472 },
14473 {
14474 "word_bit_width": 32,
14475 "position_offset": 18,
14476 "phv_lsb": 16,
14477 "is_pov": false,
14478 "field_msb": 7,
14479 "phv_msb": 23,
14480 "is_compiler_generated": false,
14481 "field_name": "ipv4_protocol",
14482 "field_width": 1,
14483 "field_lsb": 0
14484 },
14485 {
14486 "word_bit_width": 32,
14487 "position_offset": 9,
14488 "phv_lsb": 0,
14489 "is_pov": false,
14490 "field_msb": 15,
14491 "phv_msb": 15,
14492 "is_compiler_generated": false,
14493 "field_name": "ipv4_hdrChecksum",
14494 "field_width": 2,
14495 "field_lsb": 0
14496 }
14497 ]
14498 },
14499 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014500 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -070014501 "records": [
14502 {
14503 "word_bit_width": 32,
14504 "position_offset": 12,
14505 "phv_lsb": 0,
14506 "is_pov": false,
14507 "field_msb": 31,
14508 "phv_msb": 31,
14509 "is_compiler_generated": false,
14510 "field_name": "ipv4_srcAddr",
14511 "field_width": 4,
14512 "field_lsb": 0
14513 }
14514 ]
14515 },
14516 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014517 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -070014518 "records": [
14519 {
14520 "word_bit_width": 32,
14521 "position_offset": 50,
14522 "phv_lsb": 0,
14523 "is_pov": false,
14524 "field_msb": 31,
14525 "phv_msb": 31,
14526 "is_compiler_generated": false,
14527 "field_name": "ipv4_dstAddr",
14528 "field_width": 4,
14529 "field_lsb": 0
14530 }
14531 ]
14532 },
14533 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014534 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -070014535 "records": [
14536 {
14537 "word_bit_width": 32,
14538 "position_offset": 25,
14539 "phv_lsb": 0,
14540 "is_pov": false,
14541 "field_msb": 31,
14542 "phv_msb": 31,
14543 "is_compiler_generated": false,
14544 "field_name": "tcp_ackNo",
14545 "field_width": 4,
14546 "field_lsb": 0
14547 },
14548 {
14549 "word_bit_width": 32,
14550 "position_offset": 16,
14551 "phv_lsb": 16,
14552 "is_pov": false,
14553 "field_msb": 15,
14554 "phv_msb": 31,
14555 "is_compiler_generated": false,
14556 "field_name": "udp_length_",
14557 "field_width": 2,
14558 "field_lsb": 0
14559 },
14560 {
14561 "word_bit_width": 32,
14562 "position_offset": 59,
14563 "phv_lsb": 0,
14564 "is_pov": false,
14565 "field_msb": 15,
14566 "phv_msb": 15,
14567 "is_compiler_generated": false,
14568 "field_name": "udp_checksum",
14569 "field_width": 2,
14570 "field_lsb": 0
14571 }
14572 ]
14573 },
14574 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014575 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -070014576 "records": [
14577 {
14578 "word_bit_width": 32,
14579 "position_offset": 38,
14580 "phv_lsb": 28,
14581 "is_pov": false,
14582 "field_msb": 3,
14583 "phv_msb": 31,
14584 "is_compiler_generated": false,
14585 "field_name": "tcp_dataOffset",
14586 "field_width": 1,
14587 "field_lsb": 0
14588 },
14589 {
14590 "word_bit_width": 32,
14591 "position_offset": 58,
14592 "phv_lsb": 25,
14593 "is_pov": false,
14594 "field_msb": 2,
14595 "phv_msb": 27,
14596 "is_compiler_generated": false,
14597 "field_name": "tcp_res",
14598 "field_width": 1,
14599 "field_lsb": 0
14600 },
14601 {
14602 "word_bit_width": 32,
14603 "position_offset": 11,
14604 "phv_lsb": 22,
14605 "is_pov": false,
14606 "field_msb": 2,
14607 "phv_msb": 24,
14608 "is_compiler_generated": false,
14609 "field_name": "tcp_ecn",
14610 "field_width": 1,
14611 "field_lsb": 0
14612 },
14613 {
14614 "word_bit_width": 32,
14615 "position_offset": 34,
14616 "phv_lsb": 16,
14617 "is_pov": false,
14618 "field_msb": 5,
14619 "phv_msb": 21,
14620 "is_compiler_generated": false,
14621 "field_name": "tcp_ctrl",
14622 "field_width": 1,
14623 "field_lsb": 0
14624 },
14625 {
14626 "word_bit_width": 32,
14627 "position_offset": 41,
14628 "phv_lsb": 0,
14629 "is_pov": false,
14630 "field_msb": 15,
14631 "phv_msb": 15,
14632 "is_compiler_generated": false,
14633 "field_name": "tcp_window",
14634 "field_width": 2,
14635 "field_lsb": 0
14636 }
14637 ]
14638 },
14639 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014640 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -070014641 "records": [
14642 {
14643 "word_bit_width": 32,
14644 "position_offset": 2,
14645 "phv_lsb": 16,
14646 "is_pov": false,
14647 "field_msb": 15,
14648 "phv_msb": 31,
14649 "is_compiler_generated": false,
14650 "field_name": "tcp_checksum",
14651 "field_width": 2,
14652 "field_lsb": 0
14653 },
14654 {
14655 "word_bit_width": 32,
14656 "position_offset": 45,
14657 "phv_lsb": 0,
14658 "is_pov": false,
14659 "field_msb": 15,
14660 "phv_msb": 15,
14661 "is_compiler_generated": false,
14662 "field_name": "tcp_urgentPtr",
14663 "field_width": 2,
14664 "field_lsb": 0
14665 }
14666 ]
14667 },
14668 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014669 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -070014670 "records": [
14671 {
14672 "word_bit_width": 32,
14673 "position_offset": 19,
14674 "phv_lsb": 0,
14675 "is_pov": false,
14676 "field_msb": 39,
14677 "phv_msb": 31,
14678 "is_compiler_generated": false,
14679 "field_name": "ethernet_dstAddr",
14680 "field_width": 6,
14681 "field_lsb": 8
14682 }
14683 ]
14684 },
14685 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014686 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -070014687 "records": [
14688 {
14689 "word_bit_width": 32,
14690 "position_offset": 63,
14691 "phv_lsb": 0,
14692 "is_pov": false,
14693 "field_msb": 31,
14694 "phv_msb": 31,
14695 "is_compiler_generated": false,
14696 "field_name": "ethernet_srcAddr",
14697 "field_width": 6,
14698 "field_lsb": 0
14699 }
14700 ]
14701 },
14702 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014703 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -070014704 "records": [
14705 {
14706 "word_bit_width": 8,
14707 "position_offset": 29,
14708 "phv_lsb": 4,
14709 "is_pov": false,
14710 "field_msb": 3,
14711 "phv_msb": 7,
14712 "is_compiler_generated": false,
14713 "field_name": "ipv4_version",
14714 "field_width": 1,
14715 "field_lsb": 0
14716 },
14717 {
14718 "word_bit_width": 8,
14719 "position_offset": 37,
14720 "phv_lsb": 0,
14721 "is_pov": false,
14722 "field_msb": 3,
14723 "phv_msb": 3,
14724 "is_compiler_generated": false,
14725 "field_name": "ipv4_ihl",
14726 "field_width": 1,
14727 "field_lsb": 0
14728 }
14729 ]
14730 },
14731 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014732 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014733 "records": [
14734 {
14735 "word_bit_width": 8,
14736 "position_offset": 4,
14737 "phv_lsb": 0,
14738 "is_pov": false,
14739 "field_msb": 7,
14740 "phv_msb": 7,
14741 "is_compiler_generated": false,
14742 "field_name": "ipv4_diffserv",
14743 "field_width": 1,
14744 "field_lsb": 0
14745 }
14746 ]
14747 },
14748 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014749 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014750 "records": [
14751 {
14752 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070014753 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014754 "phv_lsb": 0,
14755 "is_pov": false,
14756 "field_msb": 15,
14757 "phv_msb": 7,
14758 "is_compiler_generated": false,
14759 "field_name": "tcp_srcPort",
14760 "field_width": 2,
14761 "field_lsb": 8
14762 },
14763 {
14764 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070014765 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014766 "phv_lsb": 0,
14767 "is_pov": false,
14768 "field_msb": 15,
14769 "phv_msb": 7,
14770 "is_compiler_generated": false,
14771 "field_name": "udp_srcPort",
14772 "field_width": 2,
14773 "field_lsb": 8
14774 }
14775 ]
14776 },
14777 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014778 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014779 "records": [
14780 {
14781 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070014782 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014783 "phv_lsb": 0,
14784 "is_pov": false,
14785 "field_msb": 7,
14786 "phv_msb": 7,
14787 "is_compiler_generated": false,
14788 "field_name": "tcp_srcPort",
14789 "field_width": 2,
14790 "field_lsb": 0
14791 },
14792 {
14793 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070014794 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014795 "phv_lsb": 0,
14796 "is_pov": false,
14797 "field_msb": 7,
14798 "phv_msb": 7,
14799 "is_compiler_generated": false,
14800 "field_name": "udp_srcPort",
14801 "field_width": 2,
14802 "field_lsb": 0
14803 }
14804 ]
14805 },
14806 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014807 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014808 "records": [
14809 {
14810 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070014811 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014812 "phv_lsb": 0,
14813 "is_pov": false,
14814 "field_msb": 47,
14815 "phv_msb": 7,
14816 "is_compiler_generated": false,
14817 "field_name": "ethernet_dstAddr",
14818 "field_width": 6,
14819 "field_lsb": 40
14820 }
14821 ]
14822 },
14823 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014824 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014825 "records": [
14826 {
14827 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070014828 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014829 "phv_lsb": 0,
14830 "is_pov": false,
14831 "field_msb": 39,
14832 "phv_msb": 7,
14833 "is_compiler_generated": false,
14834 "field_name": "ethernet_srcAddr",
14835 "field_width": 6,
14836 "field_lsb": 32
14837 }
14838 ]
14839 },
14840 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014841 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014842 "records": [
14843 {
14844 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070014845 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014846 "phv_lsb": 0,
14847 "is_pov": false,
14848 "field_msb": 15,
14849 "phv_msb": 15,
14850 "is_compiler_generated": false,
14851 "field_name": "ipv4_totalLen",
14852 "field_width": 2,
14853 "field_lsb": 0
14854 }
14855 ]
14856 },
14857 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014858 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014859 "records": [
14860 {
14861 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070014862 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014863 "phv_lsb": 0,
14864 "is_pov": false,
14865 "field_msb": 15,
14866 "phv_msb": 15,
14867 "is_compiler_generated": false,
14868 "field_name": "ipv4_identification",
14869 "field_width": 2,
14870 "field_lsb": 0
14871 }
14872 ]
14873 },
14874 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014875 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014876 "records": [
14877 {
14878 "word_bit_width": 16,
14879 "position_offset": 8,
14880 "phv_lsb": 13,
14881 "is_pov": false,
14882 "field_msb": 2,
14883 "phv_msb": 15,
14884 "is_compiler_generated": false,
14885 "field_name": "ipv4_flags",
14886 "field_width": 1,
14887 "field_lsb": 0
14888 },
14889 {
14890 "word_bit_width": 16,
14891 "position_offset": 5,
14892 "phv_lsb": 0,
14893 "is_pov": false,
14894 "field_msb": 12,
14895 "phv_msb": 12,
14896 "is_compiler_generated": false,
14897 "field_name": "ipv4_fragOffset",
14898 "field_width": 2,
14899 "field_lsb": 0
14900 }
14901 ]
14902 },
14903 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014904 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014905 "records": [
14906 {
14907 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070014908 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014909 "phv_lsb": 0,
14910 "is_pov": false,
14911 "field_msb": 15,
14912 "phv_msb": 15,
14913 "is_compiler_generated": false,
14914 "field_name": "tcp_dstPort",
14915 "field_width": 2,
14916 "field_lsb": 0
14917 },
14918 {
14919 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070014920 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014921 "phv_lsb": 0,
14922 "is_pov": false,
14923 "field_msb": 15,
14924 "phv_msb": 15,
14925 "is_compiler_generated": false,
14926 "field_name": "udp_dstPort",
14927 "field_width": 2,
14928 "field_lsb": 0
14929 }
14930 ]
14931 },
14932 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014933 "phv_number": 330,
14934 "records": [
14935 {
14936 "word_bit_width": 16,
14937 "position_offset": 69,
14938 "phv_lsb": 0,
14939 "is_pov": false,
14940 "field_msb": 31,
14941 "phv_msb": 15,
14942 "is_compiler_generated": false,
14943 "field_name": "tcp_seqNo",
14944 "field_width": 4,
14945 "field_lsb": 16
14946 }
14947 ]
14948 },
14949 {
14950 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014951 "records": [
14952 {
14953 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070014954 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014955 "phv_lsb": 0,
14956 "is_pov": false,
14957 "field_msb": 15,
14958 "phv_msb": 15,
14959 "is_compiler_generated": false,
14960 "field_name": "tcp_seqNo",
14961 "field_width": 4,
14962 "field_lsb": 0
14963 }
14964 ]
14965 },
14966 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014967 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014968 "records": [
14969 {
14970 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070014971 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014972 "phv_lsb": 8,
14973 "is_pov": false,
14974 "field_msb": 7,
14975 "phv_msb": 15,
14976 "is_compiler_generated": false,
14977 "field_name": "ethernet_dstAddr",
14978 "field_width": 6,
14979 "field_lsb": 0
14980 },
14981 {
14982 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070014983 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014984 "phv_lsb": 0,
14985 "is_pov": false,
14986 "field_msb": 47,
14987 "phv_msb": 7,
14988 "is_compiler_generated": false,
14989 "field_name": "ethernet_srcAddr",
14990 "field_width": 6,
14991 "field_lsb": 40
14992 }
14993 ]
14994 },
14995 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020014996 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020014997 "records": [
14998 {
14999 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070015000 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015001 "phv_lsb": 0,
15002 "is_pov": false,
15003 "field_msb": 15,
15004 "phv_msb": 15,
15005 "is_compiler_generated": false,
15006 "field_name": "ethernet_etherType",
15007 "field_width": 2,
15008 "field_lsb": 0
15009 }
15010 ]
15011 },
15012 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015013 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015014 "records": [
15015 {
15016 "word_bit_width": 16,
15017 "position_offset": 0,
15018 "phv_lsb": 7,
15019 "is_pov": false,
15020 "field_msb": 8,
15021 "phv_msb": 15,
15022 "is_compiler_generated": false,
15023 "field_name": "packet_out_hdr_egress_port",
15024 "field_width": 2,
15025 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070015026 },
15027 {
15028 "word_bit_width": 16,
15029 "position_offset": 30,
15030 "phv_lsb": 7,
15031 "is_pov": false,
15032 "field_msb": 8,
15033 "phv_msb": 15,
15034 "is_compiler_generated": false,
15035 "field_name": "packet_in_hdr_ingress_port",
15036 "field_width": 2,
15037 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015038 }
15039 ]
15040 }
15041 ],
15042 "stage_number": 9
15043 },
15044 {
15045 "ingress": [
15046 {
15047 "phv_number": 0,
15048 "records": [
15049 {
15050 "word_bit_width": 32,
15051 "position_offset": 0,
15052 "phv_lsb": 0,
15053 "is_pov": true,
15054 "pov_headers": [],
15055 "field_msb": 31,
15056 "phv_msb": 31,
15057 "is_compiler_generated": false,
15058 "field_name": "POV",
15059 "field_width": 0,
15060 "field_lsb": 0
15061 }
15062 ]
15063 },
15064 {
15065 "phv_number": 1,
15066 "records": [
15067 {
15068 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015069 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015070 "phv_lsb": 24,
15071 "is_pov": false,
15072 "field_msb": 7,
15073 "phv_msb": 31,
15074 "is_compiler_generated": false,
15075 "field_name": "ipv4_protocol",
15076 "field_width": 1,
15077 "field_lsb": 0
15078 },
15079 {
15080 "word_bit_width": 32,
15081 "position_offset": 10,
15082 "phv_lsb": 8,
15083 "is_pov": false,
15084 "field_msb": 15,
15085 "phv_msb": 23,
15086 "is_compiler_generated": false,
15087 "field_name": "ipv4_hdrChecksum",
15088 "field_width": 2,
15089 "field_lsb": 0
15090 },
15091 {
15092 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015093 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015094 "phv_lsb": 0,
15095 "is_pov": false,
15096 "field_msb": 31,
15097 "phv_msb": 7,
15098 "is_compiler_generated": false,
15099 "field_name": "ipv4_srcAddr",
15100 "field_width": 4,
15101 "field_lsb": 24
15102 }
15103 ]
15104 },
15105 {
15106 "phv_number": 2,
15107 "records": [
15108 {
15109 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015110 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015111 "phv_lsb": 0,
15112 "is_pov": false,
15113 "field_msb": 31,
15114 "phv_msb": 31,
15115 "is_compiler_generated": false,
15116 "field_name": "ipv4_dstAddr",
15117 "field_width": 4,
15118 "field_lsb": 0
15119 }
15120 ]
15121 },
15122 {
15123 "phv_number": 3,
15124 "records": [
15125 {
15126 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +020015127 "position_offset": 33,
15128 "phv_lsb": 24,
15129 "is_pov": false,
15130 "field_msb": 7,
15131 "phv_msb": 31,
15132 "is_compiler_generated": false,
15133 "field_name": "tcp_dstPort",
15134 "field_width": 2,
15135 "field_lsb": 0
15136 },
15137 {
15138 "word_bit_width": 32,
15139 "position_offset": 76,
15140 "phv_lsb": 0,
15141 "is_pov": false,
15142 "field_msb": 31,
15143 "phv_msb": 23,
15144 "is_compiler_generated": false,
15145 "field_name": "tcp_seqNo",
15146 "field_width": 4,
15147 "field_lsb": 8
15148 }
15149 ]
15150 },
15151 {
15152 "phv_number": 4,
15153 "records": [
15154 {
15155 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015156 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015157 "phv_lsb": 0,
15158 "is_pov": false,
15159 "field_msb": 39,
15160 "phv_msb": 31,
15161 "is_compiler_generated": false,
15162 "field_name": "ethernet_dstAddr",
15163 "field_width": 6,
15164 "field_lsb": 8
15165 }
15166 ]
15167 },
15168 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015169 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015170 "records": [
15171 {
15172 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015173 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015174 "phv_lsb": 0,
15175 "is_pov": false,
15176 "field_msb": 31,
15177 "phv_msb": 31,
15178 "is_compiler_generated": false,
15179 "field_name": "ethernet_srcAddr",
15180 "field_width": 6,
15181 "field_lsb": 0
15182 }
15183 ]
15184 },
15185 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015186 "phv_number": 64,
15187 "records": [
15188 {
15189 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070015190 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015191 "phv_lsb": 0,
15192 "is_pov": false,
15193 "field_msb": 23,
15194 "phv_msb": 7,
15195 "is_compiler_generated": false,
15196 "field_name": "ipv4_srcAddr",
15197 "field_width": 4,
15198 "field_lsb": 16
15199 }
15200 ]
15201 },
15202 {
Brian O'Connora6862e02017-09-08 01:17:39 -070015203 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015204 "records": [
15205 {
15206 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020015207 "position_offset": 38,
15208 "phv_lsb": 0,
15209 "is_pov": false,
15210 "field_msb": 15,
15211 "phv_msb": 7,
15212 "is_compiler_generated": false,
15213 "field_name": "tcp_srcPort",
15214 "field_width": 2,
15215 "field_lsb": 8
15216 },
15217 {
15218 "word_bit_width": 8,
15219 "position_offset": 66,
15220 "phv_lsb": 0,
15221 "is_pov": false,
15222 "field_msb": 7,
15223 "phv_msb": 7,
15224 "is_compiler_generated": false,
15225 "field_name": "udp_srcPort",
15226 "field_width": 2,
15227 "field_lsb": 0
15228 }
15229 ]
15230 },
15231 {
15232 "phv_number": 66,
15233 "records": [
15234 {
15235 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015236 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015237 "phv_lsb": 0,
15238 "is_pov": false,
15239 "field_msb": 47,
15240 "phv_msb": 7,
15241 "is_compiler_generated": false,
15242 "field_name": "ethernet_dstAddr",
15243 "field_width": 6,
15244 "field_lsb": 40
15245 }
15246 ]
15247 },
15248 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015249 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015250 "records": [
15251 {
15252 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070015253 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015254 "phv_lsb": 0,
15255 "is_pov": false,
15256 "field_msb": 39,
15257 "phv_msb": 7,
15258 "is_compiler_generated": false,
15259 "field_name": "ethernet_srcAddr",
15260 "field_width": 6,
15261 "field_lsb": 32
15262 }
15263 ]
15264 },
15265 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015266 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015267 "records": [
15268 {
15269 "word_bit_width": 8,
15270 "position_offset": 0,
15271 "phv_lsb": 0,
15272 "is_pov": true,
15273 "pov_headers": [
15274 {
15275 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070015276 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015277 "header_name": "packet_in_hdr",
15278 "hidden": false
15279 },
15280 {
15281 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070015282 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015283 "header_name": "packet_out_hdr",
15284 "hidden": false
15285 },
15286 {
15287 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -070015288 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015289 "header_name": "ethernet",
15290 "hidden": false
15291 },
15292 {
15293 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -070015294 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015295 "header_name": "ipv4",
15296 "hidden": false
15297 },
15298 {
15299 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070015300 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015301 "header_name": "tcp",
15302 "hidden": false
15303 },
15304 {
15305 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -070015306 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015307 "header_name": "udp",
15308 "hidden": false
15309 }
15310 ],
15311 "field_msb": 39,
15312 "phv_msb": 7,
15313 "is_compiler_generated": false,
15314 "field_name": "POV",
15315 "field_width": 0,
15316 "field_lsb": 32
15317 }
15318 ]
15319 },
15320 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015321 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015322 "records": [
15323 {
15324 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070015325 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015326 "phv_lsb": 5,
15327 "is_pov": false,
15328 "field_msb": 2,
15329 "phv_msb": 7,
15330 "is_compiler_generated": false,
15331 "field_name": "ig_intr_md_for_tm_drop_ctl",
15332 "field_width": 1,
15333 "field_lsb": 0
15334 }
15335 ]
15336 },
15337 {
15338 "phv_number": 128,
15339 "records": [
15340 {
15341 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015342 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015343 "phv_lsb": 15,
15344 "is_pov": false,
15345 "field_msb": 0,
15346 "phv_msb": 15,
15347 "is_compiler_generated": false,
15348 "field_name": "ig_intr_md_resubmit_flag",
15349 "field_width": 1,
15350 "field_lsb": 0
15351 },
15352 {
15353 "word_bit_width": 16,
15354 "position_offset": 8,
15355 "phv_lsb": 0,
15356 "is_pov": false,
15357 "field_msb": 8,
15358 "phv_msb": 8,
15359 "is_compiler_generated": false,
15360 "field_name": "ig_intr_md_ingress_port",
15361 "field_width": 2,
15362 "field_lsb": 0
15363 }
15364 ]
15365 },
15366 {
15367 "phv_number": 129,
15368 "records": [
15369 {
15370 "word_bit_width": 16,
15371 "position_offset": 0,
15372 "phv_lsb": 7,
15373 "is_pov": false,
15374 "field_msb": 8,
15375 "phv_msb": 15,
15376 "is_compiler_generated": false,
15377 "field_name": "packet_out_hdr_egress_port",
15378 "field_width": 2,
15379 "field_lsb": 0
15380 },
15381 {
15382 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015383 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015384 "phv_lsb": 7,
15385 "is_pov": false,
15386 "field_msb": 8,
15387 "phv_msb": 15,
15388 "is_compiler_generated": false,
15389 "field_name": "packet_in_hdr_ingress_port",
15390 "field_width": 2,
15391 "field_lsb": 0
15392 }
15393 ]
15394 },
15395 {
15396 "phv_number": 130,
15397 "records": [
15398 {
15399 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070015400 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015401 "phv_lsb": 0,
15402 "is_pov": false,
15403 "field_msb": 8,
15404 "phv_msb": 8,
15405 "is_compiler_generated": false,
15406 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
15407 "field_width": 2,
15408 "field_lsb": 0
15409 }
15410 ]
15411 },
15412 {
15413 "phv_number": 131,
15414 "records": [
15415 {
15416 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070015417 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015418 "phv_lsb": 0,
15419 "is_pov": false,
15420 "field_msb": 15,
15421 "phv_msb": 15,
15422 "is_compiler_generated": false,
15423 "field_name": "ipv4_srcAddr",
15424 "field_width": 4,
15425 "field_lsb": 0
15426 }
15427 ]
15428 },
15429 {
15430 "phv_number": 132,
15431 "records": [
15432 {
15433 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +020015434 "position_offset": 38,
15435 "phv_lsb": 8,
15436 "is_pov": false,
15437 "field_msb": 7,
15438 "phv_msb": 15,
15439 "is_compiler_generated": false,
15440 "field_name": "tcp_srcPort",
15441 "field_width": 2,
15442 "field_lsb": 0
15443 },
15444 {
15445 "word_bit_width": 16,
15446 "position_offset": 33,
15447 "phv_lsb": 0,
15448 "is_pov": false,
15449 "field_msb": 15,
15450 "phv_msb": 7,
15451 "is_compiler_generated": false,
15452 "field_name": "tcp_dstPort",
15453 "field_width": 2,
15454 "field_lsb": 8
15455 }
15456 ]
15457 },
15458 {
15459 "phv_number": 133,
15460 "records": [
15461 {
15462 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015463 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015464 "phv_lsb": 8,
15465 "is_pov": false,
15466 "field_msb": 7,
15467 "phv_msb": 15,
15468 "is_compiler_generated": false,
15469 "field_name": "ethernet_dstAddr",
15470 "field_width": 6,
15471 "field_lsb": 0
15472 },
15473 {
15474 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070015475 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015476 "phv_lsb": 0,
15477 "is_pov": false,
15478 "field_msb": 47,
15479 "phv_msb": 7,
15480 "is_compiler_generated": false,
15481 "field_name": "ethernet_srcAddr",
15482 "field_width": 6,
15483 "field_lsb": 40
15484 }
15485 ]
15486 },
15487 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015488 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015489 "records": [
15490 {
15491 "word_bit_width": 16,
15492 "position_offset": 5,
15493 "phv_lsb": 0,
15494 "is_pov": false,
15495 "field_msb": 15,
15496 "phv_msb": 15,
15497 "is_compiler_generated": false,
15498 "field_name": "ethernet_etherType",
15499 "field_width": 2,
15500 "field_lsb": 0
15501 }
15502 ]
15503 },
15504 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015505 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015506 "records": [
15507 {
15508 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015509 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015510 "phv_lsb": 0,
15511 "is_pov": false,
15512 "field_msb": 15,
15513 "phv_msb": 15,
15514 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015515 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015516 "field_width": 2,
15517 "field_lsb": 0
15518 }
15519 ]
15520 },
15521 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015522 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015523 "records": [
15524 {
15525 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070015526 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015527 "phv_lsb": 0,
15528 "is_pov": false,
15529 "field_msb": 15,
15530 "phv_msb": 15,
15531 "is_compiler_generated": false,
15532 "field_name": "ecmp_metadata_selector",
15533 "field_width": 2,
15534 "field_lsb": 0
15535 }
15536 ]
15537 },
15538 {
15539 "phv_number": 256,
15540 "records": [
15541 {
15542 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015543 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015544 "phv_lsb": 24,
15545 "is_pov": false,
15546 "field_msb": 7,
15547 "phv_msb": 31,
15548 "is_compiler_generated": false,
15549 "field_name": "ipv4_identification",
15550 "field_width": 2,
15551 "field_lsb": 0
15552 },
15553 {
15554 "word_bit_width": 32,
15555 "position_offset": 7,
15556 "phv_lsb": 21,
15557 "is_pov": false,
15558 "field_msb": 2,
15559 "phv_msb": 23,
15560 "is_compiler_generated": false,
15561 "field_name": "ipv4_flags",
15562 "field_width": 1,
15563 "field_lsb": 0
15564 },
15565 {
15566 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015567 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015568 "phv_lsb": 8,
15569 "is_pov": false,
15570 "field_msb": 12,
15571 "phv_msb": 20,
15572 "is_compiler_generated": false,
15573 "field_name": "ipv4_fragOffset",
15574 "field_width": 2,
15575 "field_lsb": 0
15576 },
15577 {
15578 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015579 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015580 "phv_lsb": 0,
15581 "is_pov": false,
15582 "field_msb": 7,
15583 "phv_msb": 7,
15584 "is_compiler_generated": false,
15585 "field_name": "ipv4_ttl",
15586 "field_width": 1,
15587 "field_lsb": 0
15588 }
15589 ]
15590 },
15591 {
15592 "phv_number": 257,
15593 "records": [
15594 {
15595 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015596 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015597 "phv_lsb": 28,
15598 "is_pov": false,
15599 "field_msb": 3,
15600 "phv_msb": 31,
15601 "is_compiler_generated": false,
15602 "field_name": "tcp_dataOffset",
15603 "field_width": 1,
15604 "field_lsb": 0
15605 },
15606 {
15607 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015608 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015609 "phv_lsb": 25,
15610 "is_pov": false,
15611 "field_msb": 2,
15612 "phv_msb": 27,
15613 "is_compiler_generated": false,
15614 "field_name": "tcp_res",
15615 "field_width": 1,
15616 "field_lsb": 0
15617 },
15618 {
15619 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015620 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015621 "phv_lsb": 22,
15622 "is_pov": false,
15623 "field_msb": 2,
15624 "phv_msb": 24,
15625 "is_compiler_generated": false,
15626 "field_name": "tcp_ecn",
15627 "field_width": 1,
15628 "field_lsb": 0
15629 },
15630 {
15631 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015632 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015633 "phv_lsb": 16,
15634 "is_pov": false,
15635 "field_msb": 5,
15636 "phv_msb": 21,
15637 "is_compiler_generated": false,
15638 "field_name": "tcp_ctrl",
15639 "field_width": 1,
15640 "field_lsb": 0
15641 },
15642 {
15643 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015644 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015645 "phv_lsb": 0,
15646 "is_pov": false,
15647 "field_msb": 15,
15648 "phv_msb": 15,
15649 "is_compiler_generated": false,
15650 "field_name": "tcp_window",
15651 "field_width": 2,
15652 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +020015653 },
15654 {
15655 "word_bit_width": 32,
15656 "position_offset": 17,
15657 "phv_lsb": 16,
15658 "is_pov": false,
15659 "field_msb": 15,
15660 "phv_msb": 31,
15661 "is_compiler_generated": false,
15662 "field_name": "udp_length_",
15663 "field_width": 2,
15664 "field_lsb": 0
15665 },
15666 {
15667 "word_bit_width": 32,
15668 "position_offset": 68,
15669 "phv_lsb": 0,
15670 "is_pov": false,
15671 "field_msb": 15,
15672 "phv_msb": 15,
15673 "is_compiler_generated": false,
15674 "field_name": "udp_checksum",
15675 "field_width": 2,
15676 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015677 }
15678 ]
15679 },
15680 {
Brian O'Connora6862e02017-09-08 01:17:39 -070015681 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015682 "records": [
15683 {
15684 "word_bit_width": 32,
15685 "position_offset": 2,
15686 "phv_lsb": 16,
15687 "is_pov": false,
15688 "field_msb": 15,
15689 "phv_msb": 31,
15690 "is_compiler_generated": false,
15691 "field_name": "tcp_checksum",
15692 "field_width": 2,
15693 "field_lsb": 0
15694 },
15695 {
15696 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070015697 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015698 "phv_lsb": 0,
15699 "is_pov": false,
15700 "field_msb": 15,
15701 "phv_msb": 15,
15702 "is_compiler_generated": false,
15703 "field_name": "tcp_urgentPtr",
15704 "field_width": 2,
15705 "field_lsb": 0
15706 }
15707 ]
15708 },
15709 {
Brian O'Connora6862e02017-09-08 01:17:39 -070015710 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015711 "records": [
15712 {
15713 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070015714 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020015715 "phv_lsb": 4,
15716 "is_pov": false,
15717 "field_msb": 3,
15718 "phv_msb": 7,
15719 "is_compiler_generated": false,
15720 "field_name": "ipv4_version",
15721 "field_width": 1,
15722 "field_lsb": 0
15723 },
15724 {
15725 "word_bit_width": 8,
15726 "position_offset": 40,
15727 "phv_lsb": 0,
15728 "is_pov": false,
15729 "field_msb": 3,
15730 "phv_msb": 3,
15731 "is_compiler_generated": false,
15732 "field_name": "ipv4_ihl",
15733 "field_width": 1,
15734 "field_lsb": 0
15735 }
15736 ]
15737 },
15738 {
Brian O'Connora6862e02017-09-08 01:17:39 -070015739 "phv_number": 289,
15740 "records": [
15741 {
15742 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020015743 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -070015744 "phv_lsb": 0,
15745 "is_pov": false,
15746 "field_msb": 7,
15747 "phv_msb": 7,
15748 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020015749 "field_name": "tcp_seqNo",
15750 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070015751 "field_lsb": 0
15752 },
15753 {
15754 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020015755 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -070015756 "phv_lsb": 0,
15757 "is_pov": false,
15758 "field_msb": 15,
15759 "phv_msb": 7,
15760 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020015761 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -070015762 "field_width": 2,
15763 "field_lsb": 8
15764 }
15765 ]
15766 },
15767 {
Brian O'Connora6862e02017-09-08 01:17:39 -070015768 "phv_number": 320,
15769 "records": [
15770 {
15771 "word_bit_width": 16,
15772 "position_offset": 4,
15773 "phv_lsb": 8,
15774 "is_pov": false,
15775 "field_msb": 7,
15776 "phv_msb": 15,
15777 "is_compiler_generated": false,
15778 "field_name": "ipv4_diffserv",
15779 "field_width": 1,
15780 "field_lsb": 0
15781 },
15782 {
15783 "word_bit_width": 16,
15784 "position_offset": 63,
15785 "phv_lsb": 0,
15786 "is_pov": false,
15787 "field_msb": 15,
15788 "phv_msb": 7,
15789 "is_compiler_generated": false,
15790 "field_name": "ipv4_totalLen",
15791 "field_width": 2,
15792 "field_lsb": 8
15793 }
15794 ]
15795 },
15796 {
15797 "phv_number": 321,
15798 "records": [
15799 {
15800 "word_bit_width": 16,
15801 "position_offset": 63,
15802 "phv_lsb": 8,
15803 "is_pov": false,
15804 "field_msb": 7,
15805 "phv_msb": 15,
15806 "is_compiler_generated": false,
15807 "field_name": "ipv4_totalLen",
15808 "field_width": 2,
15809 "field_lsb": 0
15810 },
15811 {
15812 "word_bit_width": 16,
15813 "position_offset": 49,
15814 "phv_lsb": 0,
15815 "is_pov": false,
15816 "field_msb": 15,
15817 "phv_msb": 7,
15818 "is_compiler_generated": false,
15819 "field_name": "ipv4_identification",
15820 "field_width": 2,
15821 "field_lsb": 8
15822 }
15823 ]
15824 },
15825 {
15826 "phv_number": 322,
15827 "records": [
15828 {
15829 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015830 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070015831 "phv_lsb": 0,
15832 "is_pov": false,
15833 "field_msb": 31,
15834 "phv_msb": 15,
15835 "is_compiler_generated": false,
15836 "field_name": "tcp_ackNo",
15837 "field_width": 4,
15838 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +020015839 },
15840 {
15841 "word_bit_width": 16,
15842 "position_offset": 55,
15843 "phv_lsb": 0,
15844 "is_pov": false,
15845 "field_msb": 15,
15846 "phv_msb": 15,
15847 "is_compiler_generated": false,
15848 "field_name": "udp_dstPort",
15849 "field_width": 2,
15850 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070015851 }
15852 ]
15853 },
15854 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015855 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -070015856 "records": [
15857 {
15858 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020015859 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070015860 "phv_lsb": 0,
15861 "is_pov": false,
15862 "field_msb": 15,
15863 "phv_msb": 15,
15864 "is_compiler_generated": false,
15865 "field_name": "tcp_ackNo",
15866 "field_width": 4,
15867 "field_lsb": 0
15868 }
15869 ]
15870 }
15871 ],
15872 "egress": [
15873 {
15874 "phv_number": 80,
15875 "records": [
15876 {
15877 "word_bit_width": 8,
15878 "position_offset": 7,
15879 "phv_lsb": 0,
15880 "is_pov": false,
15881 "field_msb": 2,
15882 "phv_msb": 2,
15883 "is_compiler_generated": false,
15884 "field_name": "eg_intr_md_egress_cos",
15885 "field_width": 1,
15886 "field_lsb": 0
15887 }
15888 ]
15889 },
15890 {
15891 "phv_number": 81,
15892 "records": [
15893 {
15894 "word_bit_width": 8,
15895 "position_offset": 0,
15896 "phv_lsb": 0,
15897 "is_pov": true,
15898 "pov_headers": [
15899 {
15900 "bit_index": 0,
15901 "position_offset": 73,
15902 "header_name": "packet_in_hdr",
15903 "hidden": false
15904 },
15905 {
15906 "bit_index": 1,
15907 "position_offset": 74,
15908 "header_name": "packet_out_hdr",
15909 "hidden": false
15910 },
15911 {
15912 "bit_index": 2,
15913 "position_offset": 75,
15914 "header_name": "ethernet",
15915 "hidden": false
15916 },
15917 {
15918 "bit_index": 3,
15919 "position_offset": 76,
15920 "header_name": "ipv4",
15921 "hidden": false
15922 },
15923 {
15924 "bit_index": 4,
15925 "position_offset": 77,
15926 "header_name": "tcp",
15927 "hidden": false
15928 },
15929 {
15930 "bit_index": 5,
15931 "position_offset": 78,
15932 "header_name": "udp",
15933 "hidden": false
15934 }
15935 ],
15936 "field_msb": 7,
15937 "phv_msb": 7,
15938 "is_compiler_generated": false,
15939 "field_name": "POV",
15940 "field_width": 0,
15941 "field_lsb": 0
15942 }
15943 ]
15944 },
15945 {
15946 "phv_number": 144,
15947 "records": [
15948 {
15949 "word_bit_width": 16,
15950 "position_offset": 61,
15951 "phv_lsb": 0,
15952 "is_pov": false,
15953 "field_msb": 8,
15954 "phv_msb": 8,
15955 "is_compiler_generated": false,
15956 "field_name": "eg_intr_md_egress_port",
15957 "field_width": 2,
15958 "field_lsb": 0
15959 }
15960 ]
15961 },
15962 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020015963 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -070015964 "records": [
15965 {
15966 "word_bit_width": 32,
15967 "position_offset": 47,
15968 "phv_lsb": 24,
15969 "is_pov": false,
15970 "field_msb": 7,
15971 "phv_msb": 31,
15972 "is_compiler_generated": false,
15973 "field_name": "ipv4_ttl",
15974 "field_width": 1,
15975 "field_lsb": 0
15976 },
15977 {
15978 "word_bit_width": 32,
15979 "position_offset": 18,
15980 "phv_lsb": 16,
15981 "is_pov": false,
15982 "field_msb": 7,
15983 "phv_msb": 23,
15984 "is_compiler_generated": false,
15985 "field_name": "ipv4_protocol",
15986 "field_width": 1,
15987 "field_lsb": 0
15988 },
15989 {
15990 "word_bit_width": 32,
15991 "position_offset": 9,
15992 "phv_lsb": 0,
15993 "is_pov": false,
15994 "field_msb": 15,
15995 "phv_msb": 15,
15996 "is_compiler_generated": false,
15997 "field_name": "ipv4_hdrChecksum",
15998 "field_width": 2,
15999 "field_lsb": 0
16000 }
16001 ]
16002 },
16003 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016004 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -070016005 "records": [
16006 {
16007 "word_bit_width": 32,
16008 "position_offset": 12,
16009 "phv_lsb": 0,
16010 "is_pov": false,
16011 "field_msb": 31,
16012 "phv_msb": 31,
16013 "is_compiler_generated": false,
16014 "field_name": "ipv4_srcAddr",
16015 "field_width": 4,
16016 "field_lsb": 0
16017 }
16018 ]
16019 },
16020 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016021 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -070016022 "records": [
16023 {
16024 "word_bit_width": 32,
16025 "position_offset": 50,
16026 "phv_lsb": 0,
16027 "is_pov": false,
16028 "field_msb": 31,
16029 "phv_msb": 31,
16030 "is_compiler_generated": false,
16031 "field_name": "ipv4_dstAddr",
16032 "field_width": 4,
16033 "field_lsb": 0
16034 }
16035 ]
16036 },
16037 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016038 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -070016039 "records": [
16040 {
16041 "word_bit_width": 32,
16042 "position_offset": 25,
16043 "phv_lsb": 0,
16044 "is_pov": false,
16045 "field_msb": 31,
16046 "phv_msb": 31,
16047 "is_compiler_generated": false,
16048 "field_name": "tcp_ackNo",
16049 "field_width": 4,
16050 "field_lsb": 0
16051 },
16052 {
16053 "word_bit_width": 32,
16054 "position_offset": 16,
16055 "phv_lsb": 16,
16056 "is_pov": false,
16057 "field_msb": 15,
16058 "phv_msb": 31,
16059 "is_compiler_generated": false,
16060 "field_name": "udp_length_",
16061 "field_width": 2,
16062 "field_lsb": 0
16063 },
16064 {
16065 "word_bit_width": 32,
16066 "position_offset": 59,
16067 "phv_lsb": 0,
16068 "is_pov": false,
16069 "field_msb": 15,
16070 "phv_msb": 15,
16071 "is_compiler_generated": false,
16072 "field_name": "udp_checksum",
16073 "field_width": 2,
16074 "field_lsb": 0
16075 }
16076 ]
16077 },
16078 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016079 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -070016080 "records": [
16081 {
16082 "word_bit_width": 32,
16083 "position_offset": 38,
16084 "phv_lsb": 28,
16085 "is_pov": false,
16086 "field_msb": 3,
16087 "phv_msb": 31,
16088 "is_compiler_generated": false,
16089 "field_name": "tcp_dataOffset",
16090 "field_width": 1,
16091 "field_lsb": 0
16092 },
16093 {
16094 "word_bit_width": 32,
16095 "position_offset": 58,
16096 "phv_lsb": 25,
16097 "is_pov": false,
16098 "field_msb": 2,
16099 "phv_msb": 27,
16100 "is_compiler_generated": false,
16101 "field_name": "tcp_res",
16102 "field_width": 1,
16103 "field_lsb": 0
16104 },
16105 {
16106 "word_bit_width": 32,
16107 "position_offset": 11,
16108 "phv_lsb": 22,
16109 "is_pov": false,
16110 "field_msb": 2,
16111 "phv_msb": 24,
16112 "is_compiler_generated": false,
16113 "field_name": "tcp_ecn",
16114 "field_width": 1,
16115 "field_lsb": 0
16116 },
16117 {
16118 "word_bit_width": 32,
16119 "position_offset": 34,
16120 "phv_lsb": 16,
16121 "is_pov": false,
16122 "field_msb": 5,
16123 "phv_msb": 21,
16124 "is_compiler_generated": false,
16125 "field_name": "tcp_ctrl",
16126 "field_width": 1,
16127 "field_lsb": 0
16128 },
16129 {
16130 "word_bit_width": 32,
16131 "position_offset": 41,
16132 "phv_lsb": 0,
16133 "is_pov": false,
16134 "field_msb": 15,
16135 "phv_msb": 15,
16136 "is_compiler_generated": false,
16137 "field_name": "tcp_window",
16138 "field_width": 2,
16139 "field_lsb": 0
16140 }
16141 ]
16142 },
16143 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016144 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -070016145 "records": [
16146 {
16147 "word_bit_width": 32,
16148 "position_offset": 2,
16149 "phv_lsb": 16,
16150 "is_pov": false,
16151 "field_msb": 15,
16152 "phv_msb": 31,
16153 "is_compiler_generated": false,
16154 "field_name": "tcp_checksum",
16155 "field_width": 2,
16156 "field_lsb": 0
16157 },
16158 {
16159 "word_bit_width": 32,
16160 "position_offset": 45,
16161 "phv_lsb": 0,
16162 "is_pov": false,
16163 "field_msb": 15,
16164 "phv_msb": 15,
16165 "is_compiler_generated": false,
16166 "field_name": "tcp_urgentPtr",
16167 "field_width": 2,
16168 "field_lsb": 0
16169 }
16170 ]
16171 },
16172 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016173 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -070016174 "records": [
16175 {
16176 "word_bit_width": 32,
16177 "position_offset": 19,
16178 "phv_lsb": 0,
16179 "is_pov": false,
16180 "field_msb": 39,
16181 "phv_msb": 31,
16182 "is_compiler_generated": false,
16183 "field_name": "ethernet_dstAddr",
16184 "field_width": 6,
16185 "field_lsb": 8
16186 }
16187 ]
16188 },
16189 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016190 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -070016191 "records": [
16192 {
16193 "word_bit_width": 32,
16194 "position_offset": 63,
16195 "phv_lsb": 0,
16196 "is_pov": false,
16197 "field_msb": 31,
16198 "phv_msb": 31,
16199 "is_compiler_generated": false,
16200 "field_name": "ethernet_srcAddr",
16201 "field_width": 6,
16202 "field_lsb": 0
16203 }
16204 ]
16205 },
16206 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016207 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -070016208 "records": [
16209 {
16210 "word_bit_width": 8,
16211 "position_offset": 29,
16212 "phv_lsb": 4,
16213 "is_pov": false,
16214 "field_msb": 3,
16215 "phv_msb": 7,
16216 "is_compiler_generated": false,
16217 "field_name": "ipv4_version",
16218 "field_width": 1,
16219 "field_lsb": 0
16220 },
16221 {
16222 "word_bit_width": 8,
16223 "position_offset": 37,
16224 "phv_lsb": 0,
16225 "is_pov": false,
16226 "field_msb": 3,
16227 "phv_msb": 3,
16228 "is_compiler_generated": false,
16229 "field_name": "ipv4_ihl",
16230 "field_width": 1,
16231 "field_lsb": 0
16232 }
16233 ]
16234 },
16235 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016236 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016237 "records": [
16238 {
16239 "word_bit_width": 8,
16240 "position_offset": 4,
16241 "phv_lsb": 0,
16242 "is_pov": false,
16243 "field_msb": 7,
16244 "phv_msb": 7,
16245 "is_compiler_generated": false,
16246 "field_name": "ipv4_diffserv",
16247 "field_width": 1,
16248 "field_lsb": 0
16249 }
16250 ]
16251 },
16252 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016253 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016254 "records": [
16255 {
16256 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070016257 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016258 "phv_lsb": 0,
16259 "is_pov": false,
16260 "field_msb": 15,
16261 "phv_msb": 7,
16262 "is_compiler_generated": false,
16263 "field_name": "tcp_srcPort",
16264 "field_width": 2,
16265 "field_lsb": 8
16266 },
16267 {
16268 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070016269 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016270 "phv_lsb": 0,
16271 "is_pov": false,
16272 "field_msb": 15,
16273 "phv_msb": 7,
16274 "is_compiler_generated": false,
16275 "field_name": "udp_srcPort",
16276 "field_width": 2,
16277 "field_lsb": 8
16278 }
16279 ]
16280 },
16281 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016282 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016283 "records": [
16284 {
16285 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070016286 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016287 "phv_lsb": 0,
16288 "is_pov": false,
16289 "field_msb": 7,
16290 "phv_msb": 7,
16291 "is_compiler_generated": false,
16292 "field_name": "tcp_srcPort",
16293 "field_width": 2,
16294 "field_lsb": 0
16295 },
16296 {
16297 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070016298 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016299 "phv_lsb": 0,
16300 "is_pov": false,
16301 "field_msb": 7,
16302 "phv_msb": 7,
16303 "is_compiler_generated": false,
16304 "field_name": "udp_srcPort",
16305 "field_width": 2,
16306 "field_lsb": 0
16307 }
16308 ]
16309 },
16310 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016311 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016312 "records": [
16313 {
16314 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070016315 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016316 "phv_lsb": 0,
16317 "is_pov": false,
16318 "field_msb": 47,
16319 "phv_msb": 7,
16320 "is_compiler_generated": false,
16321 "field_name": "ethernet_dstAddr",
16322 "field_width": 6,
16323 "field_lsb": 40
16324 }
16325 ]
16326 },
16327 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016328 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016329 "records": [
16330 {
16331 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070016332 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016333 "phv_lsb": 0,
16334 "is_pov": false,
16335 "field_msb": 39,
16336 "phv_msb": 7,
16337 "is_compiler_generated": false,
16338 "field_name": "ethernet_srcAddr",
16339 "field_width": 6,
16340 "field_lsb": 32
16341 }
16342 ]
16343 },
16344 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016345 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016346 "records": [
16347 {
16348 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016349 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016350 "phv_lsb": 0,
16351 "is_pov": false,
16352 "field_msb": 15,
16353 "phv_msb": 15,
16354 "is_compiler_generated": false,
16355 "field_name": "ipv4_totalLen",
16356 "field_width": 2,
16357 "field_lsb": 0
16358 }
16359 ]
16360 },
16361 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016362 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016363 "records": [
16364 {
16365 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016366 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016367 "phv_lsb": 0,
16368 "is_pov": false,
16369 "field_msb": 15,
16370 "phv_msb": 15,
16371 "is_compiler_generated": false,
16372 "field_name": "ipv4_identification",
16373 "field_width": 2,
16374 "field_lsb": 0
16375 }
16376 ]
16377 },
16378 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016379 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016380 "records": [
16381 {
16382 "word_bit_width": 16,
16383 "position_offset": 8,
16384 "phv_lsb": 13,
16385 "is_pov": false,
16386 "field_msb": 2,
16387 "phv_msb": 15,
16388 "is_compiler_generated": false,
16389 "field_name": "ipv4_flags",
16390 "field_width": 1,
16391 "field_lsb": 0
16392 },
16393 {
16394 "word_bit_width": 16,
16395 "position_offset": 5,
16396 "phv_lsb": 0,
16397 "is_pov": false,
16398 "field_msb": 12,
16399 "phv_msb": 12,
16400 "is_compiler_generated": false,
16401 "field_name": "ipv4_fragOffset",
16402 "field_width": 2,
16403 "field_lsb": 0
16404 }
16405 ]
16406 },
16407 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016408 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016409 "records": [
16410 {
16411 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016412 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016413 "phv_lsb": 0,
16414 "is_pov": false,
16415 "field_msb": 15,
16416 "phv_msb": 15,
16417 "is_compiler_generated": false,
16418 "field_name": "tcp_dstPort",
16419 "field_width": 2,
16420 "field_lsb": 0
16421 },
16422 {
16423 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016424 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016425 "phv_lsb": 0,
16426 "is_pov": false,
16427 "field_msb": 15,
16428 "phv_msb": 15,
16429 "is_compiler_generated": false,
16430 "field_name": "udp_dstPort",
16431 "field_width": 2,
16432 "field_lsb": 0
16433 }
16434 ]
16435 },
16436 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016437 "phv_number": 330,
16438 "records": [
16439 {
16440 "word_bit_width": 16,
16441 "position_offset": 69,
16442 "phv_lsb": 0,
16443 "is_pov": false,
16444 "field_msb": 31,
16445 "phv_msb": 15,
16446 "is_compiler_generated": false,
16447 "field_name": "tcp_seqNo",
16448 "field_width": 4,
16449 "field_lsb": 16
16450 }
16451 ]
16452 },
16453 {
16454 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016455 "records": [
16456 {
16457 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016458 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016459 "phv_lsb": 0,
16460 "is_pov": false,
16461 "field_msb": 15,
16462 "phv_msb": 15,
16463 "is_compiler_generated": false,
16464 "field_name": "tcp_seqNo",
16465 "field_width": 4,
16466 "field_lsb": 0
16467 }
16468 ]
16469 },
16470 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016471 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016472 "records": [
16473 {
16474 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016475 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016476 "phv_lsb": 8,
16477 "is_pov": false,
16478 "field_msb": 7,
16479 "phv_msb": 15,
16480 "is_compiler_generated": false,
16481 "field_name": "ethernet_dstAddr",
16482 "field_width": 6,
16483 "field_lsb": 0
16484 },
16485 {
16486 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016487 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016488 "phv_lsb": 0,
16489 "is_pov": false,
16490 "field_msb": 47,
16491 "phv_msb": 7,
16492 "is_compiler_generated": false,
16493 "field_name": "ethernet_srcAddr",
16494 "field_width": 6,
16495 "field_lsb": 40
16496 }
16497 ]
16498 },
16499 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016500 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016501 "records": [
16502 {
16503 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016504 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016505 "phv_lsb": 0,
16506 "is_pov": false,
16507 "field_msb": 15,
16508 "phv_msb": 15,
16509 "is_compiler_generated": false,
16510 "field_name": "ethernet_etherType",
16511 "field_width": 2,
16512 "field_lsb": 0
16513 }
16514 ]
16515 },
16516 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016517 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016518 "records": [
16519 {
16520 "word_bit_width": 16,
16521 "position_offset": 0,
16522 "phv_lsb": 7,
16523 "is_pov": false,
16524 "field_msb": 8,
16525 "phv_msb": 15,
16526 "is_compiler_generated": false,
16527 "field_name": "packet_out_hdr_egress_port",
16528 "field_width": 2,
16529 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070016530 },
16531 {
16532 "word_bit_width": 16,
16533 "position_offset": 30,
16534 "phv_lsb": 7,
16535 "is_pov": false,
16536 "field_msb": 8,
16537 "phv_msb": 15,
16538 "is_compiler_generated": false,
16539 "field_name": "packet_in_hdr_ingress_port",
16540 "field_width": 2,
16541 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016542 }
16543 ]
16544 }
16545 ],
16546 "stage_number": 10
16547 },
16548 {
16549 "ingress": [
16550 {
16551 "phv_number": 0,
16552 "records": [
16553 {
16554 "word_bit_width": 32,
16555 "position_offset": 0,
16556 "phv_lsb": 0,
16557 "is_pov": true,
16558 "pov_headers": [],
16559 "field_msb": 31,
16560 "phv_msb": 31,
16561 "is_compiler_generated": false,
16562 "field_name": "POV",
16563 "field_width": 0,
16564 "field_lsb": 0
16565 }
16566 ]
16567 },
16568 {
16569 "phv_number": 1,
16570 "records": [
16571 {
16572 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070016573 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016574 "phv_lsb": 24,
16575 "is_pov": false,
16576 "field_msb": 7,
16577 "phv_msb": 31,
16578 "is_compiler_generated": false,
16579 "field_name": "ipv4_protocol",
16580 "field_width": 1,
16581 "field_lsb": 0
16582 },
16583 {
16584 "word_bit_width": 32,
16585 "position_offset": 10,
16586 "phv_lsb": 8,
16587 "is_pov": false,
16588 "field_msb": 15,
16589 "phv_msb": 23,
16590 "is_compiler_generated": false,
16591 "field_name": "ipv4_hdrChecksum",
16592 "field_width": 2,
16593 "field_lsb": 0
16594 },
16595 {
16596 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070016597 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016598 "phv_lsb": 0,
16599 "is_pov": false,
16600 "field_msb": 31,
16601 "phv_msb": 7,
16602 "is_compiler_generated": false,
16603 "field_name": "ipv4_srcAddr",
16604 "field_width": 4,
16605 "field_lsb": 24
16606 }
16607 ]
16608 },
16609 {
16610 "phv_number": 2,
16611 "records": [
16612 {
16613 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070016614 "position_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016615 "phv_lsb": 0,
16616 "is_pov": false,
16617 "field_msb": 31,
16618 "phv_msb": 31,
16619 "is_compiler_generated": false,
16620 "field_name": "ipv4_dstAddr",
16621 "field_width": 4,
16622 "field_lsb": 0
16623 }
16624 ]
16625 },
16626 {
16627 "phv_number": 3,
16628 "records": [
16629 {
16630 "word_bit_width": 32,
Carmelo Cascone6230a612017-09-13 03:25:41 +020016631 "position_offset": 33,
16632 "phv_lsb": 24,
16633 "is_pov": false,
16634 "field_msb": 7,
16635 "phv_msb": 31,
16636 "is_compiler_generated": false,
16637 "field_name": "tcp_dstPort",
16638 "field_width": 2,
16639 "field_lsb": 0
16640 },
16641 {
16642 "word_bit_width": 32,
16643 "position_offset": 76,
16644 "phv_lsb": 0,
16645 "is_pov": false,
16646 "field_msb": 31,
16647 "phv_msb": 23,
16648 "is_compiler_generated": false,
16649 "field_name": "tcp_seqNo",
16650 "field_width": 4,
16651 "field_lsb": 8
16652 }
16653 ]
16654 },
16655 {
16656 "phv_number": 4,
16657 "records": [
16658 {
16659 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020016660 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016661 "phv_lsb": 0,
16662 "is_pov": false,
16663 "field_msb": 39,
16664 "phv_msb": 31,
16665 "is_compiler_generated": false,
16666 "field_name": "ethernet_dstAddr",
16667 "field_width": 6,
16668 "field_lsb": 8
16669 }
16670 ]
16671 },
16672 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016673 "phv_number": 5,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016674 "records": [
16675 {
16676 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070016677 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016678 "phv_lsb": 0,
16679 "is_pov": false,
16680 "field_msb": 31,
16681 "phv_msb": 31,
16682 "is_compiler_generated": false,
16683 "field_name": "ethernet_srcAddr",
16684 "field_width": 6,
16685 "field_lsb": 0
16686 }
16687 ]
16688 },
16689 {
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016690 "phv_number": 64,
16691 "records": [
16692 {
16693 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070016694 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016695 "phv_lsb": 0,
16696 "is_pov": false,
16697 "field_msb": 23,
16698 "phv_msb": 7,
16699 "is_compiler_generated": false,
16700 "field_name": "ipv4_srcAddr",
16701 "field_width": 4,
16702 "field_lsb": 16
16703 }
16704 ]
16705 },
16706 {
Brian O'Connora6862e02017-09-08 01:17:39 -070016707 "phv_number": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016708 "records": [
16709 {
16710 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020016711 "position_offset": 38,
16712 "phv_lsb": 0,
16713 "is_pov": false,
16714 "field_msb": 15,
16715 "phv_msb": 7,
16716 "is_compiler_generated": false,
16717 "field_name": "tcp_srcPort",
16718 "field_width": 2,
16719 "field_lsb": 8
16720 },
16721 {
16722 "word_bit_width": 8,
16723 "position_offset": 66,
16724 "phv_lsb": 0,
16725 "is_pov": false,
16726 "field_msb": 7,
16727 "phv_msb": 7,
16728 "is_compiler_generated": false,
16729 "field_name": "udp_srcPort",
16730 "field_width": 2,
16731 "field_lsb": 0
16732 }
16733 ]
16734 },
16735 {
16736 "phv_number": 66,
16737 "records": [
16738 {
16739 "word_bit_width": 8,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020016740 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016741 "phv_lsb": 0,
16742 "is_pov": false,
16743 "field_msb": 47,
16744 "phv_msb": 7,
16745 "is_compiler_generated": false,
16746 "field_name": "ethernet_dstAddr",
16747 "field_width": 6,
16748 "field_lsb": 40
16749 }
16750 ]
16751 },
16752 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016753 "phv_number": 67,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016754 "records": [
16755 {
16756 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070016757 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016758 "phv_lsb": 0,
16759 "is_pov": false,
16760 "field_msb": 39,
16761 "phv_msb": 7,
16762 "is_compiler_generated": false,
16763 "field_name": "ethernet_srcAddr",
16764 "field_width": 6,
16765 "field_lsb": 32
16766 }
16767 ]
16768 },
16769 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016770 "phv_number": 68,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016771 "records": [
16772 {
16773 "word_bit_width": 8,
16774 "position_offset": 0,
16775 "phv_lsb": 0,
16776 "is_pov": true,
16777 "pov_headers": [
16778 {
16779 "bit_index": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070016780 "position_offset": 80,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016781 "header_name": "packet_in_hdr",
16782 "hidden": false
16783 },
16784 {
16785 "bit_index": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070016786 "position_offset": 81,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016787 "header_name": "packet_out_hdr",
16788 "hidden": false
16789 },
16790 {
16791 "bit_index": 2,
Brian O'Connora6862e02017-09-08 01:17:39 -070016792 "position_offset": 82,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016793 "header_name": "ethernet",
16794 "hidden": false
16795 },
16796 {
16797 "bit_index": 3,
Brian O'Connora6862e02017-09-08 01:17:39 -070016798 "position_offset": 83,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016799 "header_name": "ipv4",
16800 "hidden": false
16801 },
16802 {
16803 "bit_index": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070016804 "position_offset": 84,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016805 "header_name": "tcp",
16806 "hidden": false
16807 },
16808 {
16809 "bit_index": 5,
Brian O'Connora6862e02017-09-08 01:17:39 -070016810 "position_offset": 85,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016811 "header_name": "udp",
16812 "hidden": false
16813 }
16814 ],
16815 "field_msb": 39,
16816 "phv_msb": 7,
16817 "is_compiler_generated": false,
16818 "field_name": "POV",
16819 "field_width": 0,
16820 "field_lsb": 32
16821 }
16822 ]
16823 },
16824 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016825 "phv_number": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016826 "records": [
16827 {
16828 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070016829 "position_offset": 51,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016830 "phv_lsb": 5,
16831 "is_pov": false,
16832 "field_msb": 2,
16833 "phv_msb": 7,
16834 "is_compiler_generated": false,
16835 "field_name": "ig_intr_md_for_tm_drop_ctl",
16836 "field_width": 1,
16837 "field_lsb": 0
16838 }
16839 ]
16840 },
16841 {
16842 "phv_number": 128,
16843 "records": [
16844 {
16845 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020016846 "position_offset": 30,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016847 "phv_lsb": 15,
16848 "is_pov": false,
16849 "field_msb": 0,
16850 "phv_msb": 15,
16851 "is_compiler_generated": false,
16852 "field_name": "ig_intr_md_resubmit_flag",
16853 "field_width": 1,
16854 "field_lsb": 0
16855 },
16856 {
16857 "word_bit_width": 16,
16858 "position_offset": 8,
16859 "phv_lsb": 0,
16860 "is_pov": false,
16861 "field_msb": 8,
16862 "phv_msb": 8,
16863 "is_compiler_generated": false,
16864 "field_name": "ig_intr_md_ingress_port",
16865 "field_width": 2,
16866 "field_lsb": 0
16867 }
16868 ]
16869 },
16870 {
16871 "phv_number": 129,
16872 "records": [
16873 {
16874 "word_bit_width": 16,
16875 "position_offset": 0,
16876 "phv_lsb": 7,
16877 "is_pov": false,
16878 "field_msb": 8,
16879 "phv_msb": 15,
16880 "is_compiler_generated": false,
16881 "field_name": "packet_out_hdr_egress_port",
16882 "field_width": 2,
16883 "field_lsb": 0
16884 },
16885 {
16886 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020016887 "position_offset": 31,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016888 "phv_lsb": 7,
16889 "is_pov": false,
16890 "field_msb": 8,
16891 "phv_msb": 15,
16892 "is_compiler_generated": false,
16893 "field_name": "packet_in_hdr_ingress_port",
16894 "field_width": 2,
16895 "field_lsb": 0
16896 }
16897 ]
16898 },
16899 {
16900 "phv_number": 130,
16901 "records": [
16902 {
16903 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016904 "position_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016905 "phv_lsb": 0,
16906 "is_pov": false,
16907 "field_msb": 8,
16908 "phv_msb": 8,
16909 "is_compiler_generated": false,
16910 "field_name": "ig_intr_md_for_tm_ucast_egress_port",
16911 "field_width": 2,
16912 "field_lsb": 0
16913 }
16914 ]
16915 },
16916 {
16917 "phv_number": 131,
16918 "records": [
16919 {
16920 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016921 "position_offset": 13,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016922 "phv_lsb": 0,
16923 "is_pov": false,
16924 "field_msb": 15,
16925 "phv_msb": 15,
16926 "is_compiler_generated": false,
16927 "field_name": "ipv4_srcAddr",
16928 "field_width": 4,
16929 "field_lsb": 0
16930 }
16931 ]
16932 },
16933 {
16934 "phv_number": 132,
16935 "records": [
16936 {
16937 "word_bit_width": 16,
Carmelo Cascone6230a612017-09-13 03:25:41 +020016938 "position_offset": 38,
16939 "phv_lsb": 8,
16940 "is_pov": false,
16941 "field_msb": 7,
16942 "phv_msb": 15,
16943 "is_compiler_generated": false,
16944 "field_name": "tcp_srcPort",
16945 "field_width": 2,
16946 "field_lsb": 0
16947 },
16948 {
16949 "word_bit_width": 16,
16950 "position_offset": 33,
16951 "phv_lsb": 0,
16952 "is_pov": false,
16953 "field_msb": 15,
16954 "phv_msb": 7,
16955 "is_compiler_generated": false,
16956 "field_name": "tcp_dstPort",
16957 "field_width": 2,
16958 "field_lsb": 8
16959 }
16960 ]
16961 },
16962 {
16963 "phv_number": 133,
16964 "records": [
16965 {
16966 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020016967 "position_offset": 20,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016968 "phv_lsb": 8,
16969 "is_pov": false,
16970 "field_msb": 7,
16971 "phv_msb": 15,
16972 "is_compiler_generated": false,
16973 "field_name": "ethernet_dstAddr",
16974 "field_width": 6,
16975 "field_lsb": 0
16976 },
16977 {
16978 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070016979 "position_offset": 70,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016980 "phv_lsb": 0,
16981 "is_pov": false,
16982 "field_msb": 47,
16983 "phv_msb": 7,
16984 "is_compiler_generated": false,
16985 "field_name": "ethernet_srcAddr",
16986 "field_width": 6,
16987 "field_lsb": 40
16988 }
16989 ]
16990 },
16991 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020016992 "phv_number": 134,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020016993 "records": [
16994 {
16995 "word_bit_width": 16,
16996 "position_offset": 5,
16997 "phv_lsb": 0,
16998 "is_pov": false,
16999 "field_msb": 15,
17000 "phv_msb": 15,
17001 "is_compiler_generated": false,
17002 "field_name": "ethernet_etherType",
17003 "field_width": 2,
17004 "field_lsb": 0
17005 }
17006 ]
17007 },
17008 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017009 "phv_number": 135,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017010 "records": [
17011 {
17012 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020017013 "position_offset": 36,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017014 "phv_lsb": 0,
17015 "is_pov": false,
17016 "field_msb": 15,
17017 "phv_msb": 15,
17018 "is_compiler_generated": false,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020017019 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017020 "field_width": 2,
17021 "field_lsb": 0
17022 }
17023 ]
17024 },
17025 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017026 "phv_number": 136,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017027 "records": [
17028 {
17029 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070017030 "position_offset": 61,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017031 "phv_lsb": 0,
17032 "is_pov": false,
17033 "field_msb": 15,
17034 "phv_msb": 15,
17035 "is_compiler_generated": false,
17036 "field_name": "ecmp_metadata_selector",
17037 "field_width": 2,
17038 "field_lsb": 0
17039 }
17040 ]
17041 },
17042 {
17043 "phv_number": 256,
17044 "records": [
17045 {
17046 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070017047 "position_offset": 49,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017048 "phv_lsb": 24,
17049 "is_pov": false,
17050 "field_msb": 7,
17051 "phv_msb": 31,
17052 "is_compiler_generated": false,
17053 "field_name": "ipv4_identification",
17054 "field_width": 2,
17055 "field_lsb": 0
17056 },
17057 {
17058 "word_bit_width": 32,
17059 "position_offset": 7,
17060 "phv_lsb": 21,
17061 "is_pov": false,
17062 "field_msb": 2,
17063 "phv_msb": 23,
17064 "is_compiler_generated": false,
17065 "field_name": "ipv4_flags",
17066 "field_width": 1,
17067 "field_lsb": 0
17068 },
17069 {
17070 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070017071 "position_offset": 44,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017072 "phv_lsb": 8,
17073 "is_pov": false,
17074 "field_msb": 12,
17075 "phv_msb": 20,
17076 "is_compiler_generated": false,
17077 "field_name": "ipv4_fragOffset",
17078 "field_width": 2,
17079 "field_lsb": 0
17080 },
17081 {
17082 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070017083 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017084 "phv_lsb": 0,
17085 "is_pov": false,
17086 "field_msb": 7,
17087 "phv_msb": 7,
17088 "is_compiler_generated": false,
17089 "field_name": "ipv4_ttl",
17090 "field_width": 1,
17091 "field_lsb": 0
17092 }
17093 ]
17094 },
17095 {
17096 "phv_number": 257,
17097 "records": [
17098 {
17099 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070017100 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017101 "phv_lsb": 28,
17102 "is_pov": false,
17103 "field_msb": 3,
17104 "phv_msb": 31,
17105 "is_compiler_generated": false,
17106 "field_name": "tcp_dataOffset",
17107 "field_width": 1,
17108 "field_lsb": 0
17109 },
17110 {
17111 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070017112 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017113 "phv_lsb": 25,
17114 "is_pov": false,
17115 "field_msb": 2,
17116 "phv_msb": 27,
17117 "is_compiler_generated": false,
17118 "field_name": "tcp_res",
17119 "field_width": 1,
17120 "field_lsb": 0
17121 },
17122 {
17123 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070017124 "position_offset": 12,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017125 "phv_lsb": 22,
17126 "is_pov": false,
17127 "field_msb": 2,
17128 "phv_msb": 24,
17129 "is_compiler_generated": false,
17130 "field_name": "tcp_ecn",
17131 "field_width": 1,
17132 "field_lsb": 0
17133 },
17134 {
17135 "word_bit_width": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020017136 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017137 "phv_lsb": 16,
17138 "is_pov": false,
17139 "field_msb": 5,
17140 "phv_msb": 21,
17141 "is_compiler_generated": false,
17142 "field_name": "tcp_ctrl",
17143 "field_width": 1,
17144 "field_lsb": 0
17145 },
17146 {
17147 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070017148 "position_offset": 46,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017149 "phv_lsb": 0,
17150 "is_pov": false,
17151 "field_msb": 15,
17152 "phv_msb": 15,
17153 "is_compiler_generated": false,
17154 "field_name": "tcp_window",
17155 "field_width": 2,
17156 "field_lsb": 0
Carmelo Cascone6230a612017-09-13 03:25:41 +020017157 },
17158 {
17159 "word_bit_width": 32,
17160 "position_offset": 17,
17161 "phv_lsb": 16,
17162 "is_pov": false,
17163 "field_msb": 15,
17164 "phv_msb": 31,
17165 "is_compiler_generated": false,
17166 "field_name": "udp_length_",
17167 "field_width": 2,
17168 "field_lsb": 0
17169 },
17170 {
17171 "word_bit_width": 32,
17172 "position_offset": 68,
17173 "phv_lsb": 0,
17174 "is_pov": false,
17175 "field_msb": 15,
17176 "phv_msb": 15,
17177 "is_compiler_generated": false,
17178 "field_name": "udp_checksum",
17179 "field_width": 2,
17180 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017181 }
17182 ]
17183 },
17184 {
Brian O'Connora6862e02017-09-08 01:17:39 -070017185 "phv_number": 258,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017186 "records": [
17187 {
17188 "word_bit_width": 32,
17189 "position_offset": 2,
17190 "phv_lsb": 16,
17191 "is_pov": false,
17192 "field_msb": 15,
17193 "phv_msb": 31,
17194 "is_compiler_generated": false,
17195 "field_name": "tcp_checksum",
17196 "field_width": 2,
17197 "field_lsb": 0
17198 },
17199 {
17200 "word_bit_width": 32,
Brian O'Connora6862e02017-09-08 01:17:39 -070017201 "position_offset": 52,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017202 "phv_lsb": 0,
17203 "is_pov": false,
17204 "field_msb": 15,
17205 "phv_msb": 15,
17206 "is_compiler_generated": false,
17207 "field_name": "tcp_urgentPtr",
17208 "field_width": 2,
17209 "field_lsb": 0
17210 }
17211 ]
17212 },
17213 {
Brian O'Connora6862e02017-09-08 01:17:39 -070017214 "phv_number": 288,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017215 "records": [
17216 {
17217 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070017218 "position_offset": 65,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017219 "phv_lsb": 4,
17220 "is_pov": false,
17221 "field_msb": 3,
17222 "phv_msb": 7,
17223 "is_compiler_generated": false,
17224 "field_name": "ipv4_version",
17225 "field_width": 1,
17226 "field_lsb": 0
17227 },
17228 {
17229 "word_bit_width": 8,
17230 "position_offset": 40,
17231 "phv_lsb": 0,
17232 "is_pov": false,
17233 "field_msb": 3,
17234 "phv_msb": 3,
17235 "is_compiler_generated": false,
17236 "field_name": "ipv4_ihl",
17237 "field_width": 1,
17238 "field_lsb": 0
17239 }
17240 ]
17241 },
17242 {
Brian O'Connora6862e02017-09-08 01:17:39 -070017243 "phv_number": 289,
17244 "records": [
17245 {
17246 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020017247 "position_offset": 76,
Brian O'Connora6862e02017-09-08 01:17:39 -070017248 "phv_lsb": 0,
17249 "is_pov": false,
17250 "field_msb": 7,
17251 "phv_msb": 7,
17252 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020017253 "field_name": "tcp_seqNo",
17254 "field_width": 4,
Brian O'Connora6862e02017-09-08 01:17:39 -070017255 "field_lsb": 0
17256 },
17257 {
17258 "word_bit_width": 8,
Carmelo Cascone6230a612017-09-13 03:25:41 +020017259 "position_offset": 66,
Brian O'Connora6862e02017-09-08 01:17:39 -070017260 "phv_lsb": 0,
17261 "is_pov": false,
17262 "field_msb": 15,
17263 "phv_msb": 7,
17264 "is_compiler_generated": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020017265 "field_name": "udp_srcPort",
Brian O'Connora6862e02017-09-08 01:17:39 -070017266 "field_width": 2,
17267 "field_lsb": 8
17268 }
17269 ]
17270 },
17271 {
Brian O'Connora6862e02017-09-08 01:17:39 -070017272 "phv_number": 320,
17273 "records": [
17274 {
17275 "word_bit_width": 16,
17276 "position_offset": 4,
17277 "phv_lsb": 8,
17278 "is_pov": false,
17279 "field_msb": 7,
17280 "phv_msb": 15,
17281 "is_compiler_generated": false,
17282 "field_name": "ipv4_diffserv",
17283 "field_width": 1,
17284 "field_lsb": 0
17285 },
17286 {
17287 "word_bit_width": 16,
17288 "position_offset": 63,
17289 "phv_lsb": 0,
17290 "is_pov": false,
17291 "field_msb": 15,
17292 "phv_msb": 7,
17293 "is_compiler_generated": false,
17294 "field_name": "ipv4_totalLen",
17295 "field_width": 2,
17296 "field_lsb": 8
17297 }
17298 ]
17299 },
17300 {
17301 "phv_number": 321,
17302 "records": [
17303 {
17304 "word_bit_width": 16,
17305 "position_offset": 63,
17306 "phv_lsb": 8,
17307 "is_pov": false,
17308 "field_msb": 7,
17309 "phv_msb": 15,
17310 "is_compiler_generated": false,
17311 "field_name": "ipv4_totalLen",
17312 "field_width": 2,
17313 "field_lsb": 0
17314 },
17315 {
17316 "word_bit_width": 16,
17317 "position_offset": 49,
17318 "phv_lsb": 0,
17319 "is_pov": false,
17320 "field_msb": 15,
17321 "phv_msb": 7,
17322 "is_compiler_generated": false,
17323 "field_name": "ipv4_identification",
17324 "field_width": 2,
17325 "field_lsb": 8
17326 }
17327 ]
17328 },
17329 {
17330 "phv_number": 322,
17331 "records": [
17332 {
17333 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020017334 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070017335 "phv_lsb": 0,
17336 "is_pov": false,
17337 "field_msb": 31,
17338 "phv_msb": 15,
17339 "is_compiler_generated": false,
17340 "field_name": "tcp_ackNo",
17341 "field_width": 4,
17342 "field_lsb": 16
Carmelo Cascone6230a612017-09-13 03:25:41 +020017343 },
17344 {
17345 "word_bit_width": 16,
17346 "position_offset": 55,
17347 "phv_lsb": 0,
17348 "is_pov": false,
17349 "field_msb": 15,
17350 "phv_msb": 15,
17351 "is_compiler_generated": false,
17352 "field_name": "udp_dstPort",
17353 "field_width": 2,
17354 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070017355 }
17356 ]
17357 },
17358 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017359 "phv_number": 323,
Brian O'Connora6862e02017-09-08 01:17:39 -070017360 "records": [
17361 {
17362 "word_bit_width": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020017363 "position_offset": 26,
Brian O'Connora6862e02017-09-08 01:17:39 -070017364 "phv_lsb": 0,
17365 "is_pov": false,
17366 "field_msb": 15,
17367 "phv_msb": 15,
17368 "is_compiler_generated": false,
17369 "field_name": "tcp_ackNo",
17370 "field_width": 4,
17371 "field_lsb": 0
17372 }
17373 ]
17374 }
17375 ],
17376 "egress": [
17377 {
17378 "phv_number": 80,
17379 "records": [
17380 {
17381 "word_bit_width": 8,
17382 "position_offset": 7,
17383 "phv_lsb": 0,
17384 "is_pov": false,
17385 "field_msb": 2,
17386 "phv_msb": 2,
17387 "is_compiler_generated": false,
17388 "field_name": "eg_intr_md_egress_cos",
17389 "field_width": 1,
17390 "field_lsb": 0
17391 }
17392 ]
17393 },
17394 {
17395 "phv_number": 81,
17396 "records": [
17397 {
17398 "word_bit_width": 8,
17399 "position_offset": 0,
17400 "phv_lsb": 0,
17401 "is_pov": true,
17402 "pov_headers": [
17403 {
17404 "bit_index": 0,
17405 "position_offset": 73,
17406 "header_name": "packet_in_hdr",
17407 "hidden": false
17408 },
17409 {
17410 "bit_index": 1,
17411 "position_offset": 74,
17412 "header_name": "packet_out_hdr",
17413 "hidden": false
17414 },
17415 {
17416 "bit_index": 2,
17417 "position_offset": 75,
17418 "header_name": "ethernet",
17419 "hidden": false
17420 },
17421 {
17422 "bit_index": 3,
17423 "position_offset": 76,
17424 "header_name": "ipv4",
17425 "hidden": false
17426 },
17427 {
17428 "bit_index": 4,
17429 "position_offset": 77,
17430 "header_name": "tcp",
17431 "hidden": false
17432 },
17433 {
17434 "bit_index": 5,
17435 "position_offset": 78,
17436 "header_name": "udp",
17437 "hidden": false
17438 }
17439 ],
17440 "field_msb": 7,
17441 "phv_msb": 7,
17442 "is_compiler_generated": false,
17443 "field_name": "POV",
17444 "field_width": 0,
17445 "field_lsb": 0
17446 }
17447 ]
17448 },
17449 {
17450 "phv_number": 144,
17451 "records": [
17452 {
17453 "word_bit_width": 16,
17454 "position_offset": 61,
17455 "phv_lsb": 0,
17456 "is_pov": false,
17457 "field_msb": 8,
17458 "phv_msb": 8,
17459 "is_compiler_generated": false,
17460 "field_name": "eg_intr_md_egress_port",
17461 "field_width": 2,
17462 "field_lsb": 0
17463 }
17464 ]
17465 },
17466 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017467 "phv_number": 260,
Brian O'Connora6862e02017-09-08 01:17:39 -070017468 "records": [
17469 {
17470 "word_bit_width": 32,
17471 "position_offset": 47,
17472 "phv_lsb": 24,
17473 "is_pov": false,
17474 "field_msb": 7,
17475 "phv_msb": 31,
17476 "is_compiler_generated": false,
17477 "field_name": "ipv4_ttl",
17478 "field_width": 1,
17479 "field_lsb": 0
17480 },
17481 {
17482 "word_bit_width": 32,
17483 "position_offset": 18,
17484 "phv_lsb": 16,
17485 "is_pov": false,
17486 "field_msb": 7,
17487 "phv_msb": 23,
17488 "is_compiler_generated": false,
17489 "field_name": "ipv4_protocol",
17490 "field_width": 1,
17491 "field_lsb": 0
17492 },
17493 {
17494 "word_bit_width": 32,
17495 "position_offset": 9,
17496 "phv_lsb": 0,
17497 "is_pov": false,
17498 "field_msb": 15,
17499 "phv_msb": 15,
17500 "is_compiler_generated": false,
17501 "field_name": "ipv4_hdrChecksum",
17502 "field_width": 2,
17503 "field_lsb": 0
17504 }
17505 ]
17506 },
17507 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017508 "phv_number": 261,
Brian O'Connora6862e02017-09-08 01:17:39 -070017509 "records": [
17510 {
17511 "word_bit_width": 32,
17512 "position_offset": 12,
17513 "phv_lsb": 0,
17514 "is_pov": false,
17515 "field_msb": 31,
17516 "phv_msb": 31,
17517 "is_compiler_generated": false,
17518 "field_name": "ipv4_srcAddr",
17519 "field_width": 4,
17520 "field_lsb": 0
17521 }
17522 ]
17523 },
17524 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017525 "phv_number": 262,
Brian O'Connora6862e02017-09-08 01:17:39 -070017526 "records": [
17527 {
17528 "word_bit_width": 32,
17529 "position_offset": 50,
17530 "phv_lsb": 0,
17531 "is_pov": false,
17532 "field_msb": 31,
17533 "phv_msb": 31,
17534 "is_compiler_generated": false,
17535 "field_name": "ipv4_dstAddr",
17536 "field_width": 4,
17537 "field_lsb": 0
17538 }
17539 ]
17540 },
17541 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017542 "phv_number": 263,
Brian O'Connora6862e02017-09-08 01:17:39 -070017543 "records": [
17544 {
17545 "word_bit_width": 32,
17546 "position_offset": 25,
17547 "phv_lsb": 0,
17548 "is_pov": false,
17549 "field_msb": 31,
17550 "phv_msb": 31,
17551 "is_compiler_generated": false,
17552 "field_name": "tcp_ackNo",
17553 "field_width": 4,
17554 "field_lsb": 0
17555 },
17556 {
17557 "word_bit_width": 32,
17558 "position_offset": 16,
17559 "phv_lsb": 16,
17560 "is_pov": false,
17561 "field_msb": 15,
17562 "phv_msb": 31,
17563 "is_compiler_generated": false,
17564 "field_name": "udp_length_",
17565 "field_width": 2,
17566 "field_lsb": 0
17567 },
17568 {
17569 "word_bit_width": 32,
17570 "position_offset": 59,
17571 "phv_lsb": 0,
17572 "is_pov": false,
17573 "field_msb": 15,
17574 "phv_msb": 15,
17575 "is_compiler_generated": false,
17576 "field_name": "udp_checksum",
17577 "field_width": 2,
17578 "field_lsb": 0
17579 }
17580 ]
17581 },
17582 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017583 "phv_number": 264,
Brian O'Connora6862e02017-09-08 01:17:39 -070017584 "records": [
17585 {
17586 "word_bit_width": 32,
17587 "position_offset": 38,
17588 "phv_lsb": 28,
17589 "is_pov": false,
17590 "field_msb": 3,
17591 "phv_msb": 31,
17592 "is_compiler_generated": false,
17593 "field_name": "tcp_dataOffset",
17594 "field_width": 1,
17595 "field_lsb": 0
17596 },
17597 {
17598 "word_bit_width": 32,
17599 "position_offset": 58,
17600 "phv_lsb": 25,
17601 "is_pov": false,
17602 "field_msb": 2,
17603 "phv_msb": 27,
17604 "is_compiler_generated": false,
17605 "field_name": "tcp_res",
17606 "field_width": 1,
17607 "field_lsb": 0
17608 },
17609 {
17610 "word_bit_width": 32,
17611 "position_offset": 11,
17612 "phv_lsb": 22,
17613 "is_pov": false,
17614 "field_msb": 2,
17615 "phv_msb": 24,
17616 "is_compiler_generated": false,
17617 "field_name": "tcp_ecn",
17618 "field_width": 1,
17619 "field_lsb": 0
17620 },
17621 {
17622 "word_bit_width": 32,
17623 "position_offset": 34,
17624 "phv_lsb": 16,
17625 "is_pov": false,
17626 "field_msb": 5,
17627 "phv_msb": 21,
17628 "is_compiler_generated": false,
17629 "field_name": "tcp_ctrl",
17630 "field_width": 1,
17631 "field_lsb": 0
17632 },
17633 {
17634 "word_bit_width": 32,
17635 "position_offset": 41,
17636 "phv_lsb": 0,
17637 "is_pov": false,
17638 "field_msb": 15,
17639 "phv_msb": 15,
17640 "is_compiler_generated": false,
17641 "field_name": "tcp_window",
17642 "field_width": 2,
17643 "field_lsb": 0
17644 }
17645 ]
17646 },
17647 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017648 "phv_number": 265,
Brian O'Connora6862e02017-09-08 01:17:39 -070017649 "records": [
17650 {
17651 "word_bit_width": 32,
17652 "position_offset": 2,
17653 "phv_lsb": 16,
17654 "is_pov": false,
17655 "field_msb": 15,
17656 "phv_msb": 31,
17657 "is_compiler_generated": false,
17658 "field_name": "tcp_checksum",
17659 "field_width": 2,
17660 "field_lsb": 0
17661 },
17662 {
17663 "word_bit_width": 32,
17664 "position_offset": 45,
17665 "phv_lsb": 0,
17666 "is_pov": false,
17667 "field_msb": 15,
17668 "phv_msb": 15,
17669 "is_compiler_generated": false,
17670 "field_name": "tcp_urgentPtr",
17671 "field_width": 2,
17672 "field_lsb": 0
17673 }
17674 ]
17675 },
17676 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017677 "phv_number": 266,
Brian O'Connora6862e02017-09-08 01:17:39 -070017678 "records": [
17679 {
17680 "word_bit_width": 32,
17681 "position_offset": 19,
17682 "phv_lsb": 0,
17683 "is_pov": false,
17684 "field_msb": 39,
17685 "phv_msb": 31,
17686 "is_compiler_generated": false,
17687 "field_name": "ethernet_dstAddr",
17688 "field_width": 6,
17689 "field_lsb": 8
17690 }
17691 ]
17692 },
17693 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017694 "phv_number": 267,
Brian O'Connora6862e02017-09-08 01:17:39 -070017695 "records": [
17696 {
17697 "word_bit_width": 32,
17698 "position_offset": 63,
17699 "phv_lsb": 0,
17700 "is_pov": false,
17701 "field_msb": 31,
17702 "phv_msb": 31,
17703 "is_compiler_generated": false,
17704 "field_name": "ethernet_srcAddr",
17705 "field_width": 6,
17706 "field_lsb": 0
17707 }
17708 ]
17709 },
17710 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017711 "phv_number": 292,
Brian O'Connora6862e02017-09-08 01:17:39 -070017712 "records": [
17713 {
17714 "word_bit_width": 8,
17715 "position_offset": 29,
17716 "phv_lsb": 4,
17717 "is_pov": false,
17718 "field_msb": 3,
17719 "phv_msb": 7,
17720 "is_compiler_generated": false,
17721 "field_name": "ipv4_version",
17722 "field_width": 1,
17723 "field_lsb": 0
17724 },
17725 {
17726 "word_bit_width": 8,
17727 "position_offset": 37,
17728 "phv_lsb": 0,
17729 "is_pov": false,
17730 "field_msb": 3,
17731 "phv_msb": 3,
17732 "is_compiler_generated": false,
17733 "field_name": "ipv4_ihl",
17734 "field_width": 1,
17735 "field_lsb": 0
17736 }
17737 ]
17738 },
17739 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017740 "phv_number": 293,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017741 "records": [
17742 {
17743 "word_bit_width": 8,
17744 "position_offset": 4,
17745 "phv_lsb": 0,
17746 "is_pov": false,
17747 "field_msb": 7,
17748 "phv_msb": 7,
17749 "is_compiler_generated": false,
17750 "field_name": "ipv4_diffserv",
17751 "field_width": 1,
17752 "field_lsb": 0
17753 }
17754 ]
17755 },
17756 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017757 "phv_number": 294,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017758 "records": [
17759 {
17760 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070017761 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017762 "phv_lsb": 0,
17763 "is_pov": false,
17764 "field_msb": 15,
17765 "phv_msb": 7,
17766 "is_compiler_generated": false,
17767 "field_name": "tcp_srcPort",
17768 "field_width": 2,
17769 "field_lsb": 8
17770 },
17771 {
17772 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070017773 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017774 "phv_lsb": 0,
17775 "is_pov": false,
17776 "field_msb": 15,
17777 "phv_msb": 7,
17778 "is_compiler_generated": false,
17779 "field_name": "udp_srcPort",
17780 "field_width": 2,
17781 "field_lsb": 8
17782 }
17783 ]
17784 },
17785 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017786 "phv_number": 295,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017787 "records": [
17788 {
17789 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070017790 "position_offset": 35,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017791 "phv_lsb": 0,
17792 "is_pov": false,
17793 "field_msb": 7,
17794 "phv_msb": 7,
17795 "is_compiler_generated": false,
17796 "field_name": "tcp_srcPort",
17797 "field_width": 2,
17798 "field_lsb": 0
17799 },
17800 {
17801 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070017802 "position_offset": 56,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017803 "phv_lsb": 0,
17804 "is_pov": false,
17805 "field_msb": 7,
17806 "phv_msb": 7,
17807 "is_compiler_generated": false,
17808 "field_name": "udp_srcPort",
17809 "field_width": 2,
17810 "field_lsb": 0
17811 }
17812 ]
17813 },
17814 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017815 "phv_number": 296,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017816 "records": [
17817 {
17818 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070017819 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017820 "phv_lsb": 0,
17821 "is_pov": false,
17822 "field_msb": 47,
17823 "phv_msb": 7,
17824 "is_compiler_generated": false,
17825 "field_name": "ethernet_dstAddr",
17826 "field_width": 6,
17827 "field_lsb": 40
17828 }
17829 ]
17830 },
17831 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017832 "phv_number": 297,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017833 "records": [
17834 {
17835 "word_bit_width": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070017836 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017837 "phv_lsb": 0,
17838 "is_pov": false,
17839 "field_msb": 39,
17840 "phv_msb": 7,
17841 "is_compiler_generated": false,
17842 "field_name": "ethernet_srcAddr",
17843 "field_width": 6,
17844 "field_lsb": 32
17845 }
17846 ]
17847 },
17848 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017849 "phv_number": 326,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017850 "records": [
17851 {
17852 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070017853 "position_offset": 54,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017854 "phv_lsb": 0,
17855 "is_pov": false,
17856 "field_msb": 15,
17857 "phv_msb": 15,
17858 "is_compiler_generated": false,
17859 "field_name": "ipv4_totalLen",
17860 "field_width": 2,
17861 "field_lsb": 0
17862 }
17863 ]
17864 },
17865 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017866 "phv_number": 327,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017867 "records": [
17868 {
17869 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070017870 "position_offset": 43,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017871 "phv_lsb": 0,
17872 "is_pov": false,
17873 "field_msb": 15,
17874 "phv_msb": 15,
17875 "is_compiler_generated": false,
17876 "field_name": "ipv4_identification",
17877 "field_width": 2,
17878 "field_lsb": 0
17879 }
17880 ]
17881 },
17882 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017883 "phv_number": 328,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017884 "records": [
17885 {
17886 "word_bit_width": 16,
17887 "position_offset": 8,
17888 "phv_lsb": 13,
17889 "is_pov": false,
17890 "field_msb": 2,
17891 "phv_msb": 15,
17892 "is_compiler_generated": false,
17893 "field_name": "ipv4_flags",
17894 "field_width": 1,
17895 "field_lsb": 0
17896 },
17897 {
17898 "word_bit_width": 16,
17899 "position_offset": 5,
17900 "phv_lsb": 0,
17901 "is_pov": false,
17902 "field_msb": 12,
17903 "phv_msb": 12,
17904 "is_compiler_generated": false,
17905 "field_name": "ipv4_fragOffset",
17906 "field_width": 2,
17907 "field_lsb": 0
17908 }
17909 ]
17910 },
17911 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017912 "phv_number": 329,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017913 "records": [
17914 {
17915 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070017916 "position_offset": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017917 "phv_lsb": 0,
17918 "is_pov": false,
17919 "field_msb": 15,
17920 "phv_msb": 15,
17921 "is_compiler_generated": false,
17922 "field_name": "tcp_dstPort",
17923 "field_width": 2,
17924 "field_lsb": 0
17925 },
17926 {
17927 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070017928 "position_offset": 48,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017929 "phv_lsb": 0,
17930 "is_pov": false,
17931 "field_msb": 15,
17932 "phv_msb": 15,
17933 "is_compiler_generated": false,
17934 "field_name": "udp_dstPort",
17935 "field_width": 2,
17936 "field_lsb": 0
17937 }
17938 ]
17939 },
17940 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017941 "phv_number": 330,
17942 "records": [
17943 {
17944 "word_bit_width": 16,
17945 "position_offset": 69,
17946 "phv_lsb": 0,
17947 "is_pov": false,
17948 "field_msb": 31,
17949 "phv_msb": 15,
17950 "is_compiler_generated": false,
17951 "field_name": "tcp_seqNo",
17952 "field_width": 4,
17953 "field_lsb": 16
17954 }
17955 ]
17956 },
17957 {
17958 "phv_number": 331,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017959 "records": [
17960 {
17961 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070017962 "position_offset": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017963 "phv_lsb": 0,
17964 "is_pov": false,
17965 "field_msb": 15,
17966 "phv_msb": 15,
17967 "is_compiler_generated": false,
17968 "field_name": "tcp_seqNo",
17969 "field_width": 4,
17970 "field_lsb": 0
17971 }
17972 ]
17973 },
17974 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020017975 "phv_number": 332,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017976 "records": [
17977 {
17978 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070017979 "position_offset": 19,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017980 "phv_lsb": 8,
17981 "is_pov": false,
17982 "field_msb": 7,
17983 "phv_msb": 15,
17984 "is_compiler_generated": false,
17985 "field_name": "ethernet_dstAddr",
17986 "field_width": 6,
17987 "field_lsb": 0
17988 },
17989 {
17990 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070017991 "position_offset": 63,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020017992 "phv_lsb": 0,
17993 "is_pov": false,
17994 "field_msb": 47,
17995 "phv_msb": 7,
17996 "is_compiler_generated": false,
17997 "field_name": "ethernet_srcAddr",
17998 "field_width": 6,
17999 "field_lsb": 40
18000 }
18001 ]
18002 },
18003 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020018004 "phv_number": 333,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018005 "records": [
18006 {
18007 "word_bit_width": 16,
Brian O'Connora6862e02017-09-08 01:17:39 -070018008 "position_offset": 39,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018009 "phv_lsb": 0,
18010 "is_pov": false,
18011 "field_msb": 15,
18012 "phv_msb": 15,
18013 "is_compiler_generated": false,
18014 "field_name": "ethernet_etherType",
18015 "field_width": 2,
18016 "field_lsb": 0
18017 }
18018 ]
18019 },
18020 {
Carmelo Cascone6230a612017-09-13 03:25:41 +020018021 "phv_number": 334,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018022 "records": [
18023 {
18024 "word_bit_width": 16,
18025 "position_offset": 0,
18026 "phv_lsb": 7,
18027 "is_pov": false,
18028 "field_msb": 8,
18029 "phv_msb": 15,
18030 "is_compiler_generated": false,
18031 "field_name": "packet_out_hdr_egress_port",
18032 "field_width": 2,
18033 "field_lsb": 0
Brian O'Connora6862e02017-09-08 01:17:39 -070018034 },
18035 {
18036 "word_bit_width": 16,
18037 "position_offset": 30,
18038 "phv_lsb": 7,
18039 "is_pov": false,
18040 "field_msb": 8,
18041 "phv_msb": 15,
18042 "is_compiler_generated": false,
18043 "field_name": "packet_in_hdr_ingress_port",
18044 "field_width": 2,
18045 "field_lsb": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018046 }
18047 ]
18048 }
18049 ],
18050 "stage_number": 11
18051 }
18052 ],
18053 "compiler_version": "5.1.0",
18054 "tables": [
18055 {
18056 "direction": "ingress",
18057 "handle": 33554433,
18058 "name": "ingress_port_count_table__action__",
18059 "table_type": "action",
18060 "stage_tables": [
18061 {
18062 "memory_resource_allocation": null,
18063 "pack_format": [
18064 {
18065 "entries_per_table_word": 1,
18066 "action_handle": 536870914,
18067 "memory_word_width": 128,
18068 "table_word_width": 128,
18069 "entries": [
18070 {
18071 "entry_number": 0,
18072 "fields": [
18073 {
18074 "start_bit": 0,
18075 "field_width": 0,
18076 "lsb_mem_word_idx": 1,
18077 "source": "zero",
18078 "lsb_mem_word_offset": 0,
18079 "field_name": "--padding--"
18080 }
18081 ]
18082 }
18083 ],
18084 "number_memory_units_per_table_word": 1
18085 }
18086 ],
18087 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018088 "stage_number": 2,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018089 "stage_table_type": "action_data",
18090 "size": 0
18091 }
18092 ],
18093 "actions": [
18094 {
18095 "p4_parameters": [],
Carmelo Cascone6230a612017-09-13 03:25:41 +020018096 "disallowed_as_default_action_reason": "USES_HASH_DIST",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018097 "handle": 536870914,
18098 "name": "count_ingress",
18099 "indirect_resources": [],
18100 "override_stat_full_addr": 0,
18101 "override_meter_addr_pfe": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020018102 "allowed_as_default_action": false,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018103 "override_stat_addr_pfe": true,
18104 "override_stateful_addr_pfe": false,
18105 "override_meter_full_addr": 0,
18106 "override_stat_addr": false,
18107 "override_stateful_addr": false,
18108 "override_stateful_full_addr": 0,
18109 "override_meter_addr": false
18110 }
18111 ],
18112 "how_referenced": "direct",
18113 "size": 1024
18114 },
18115 {
18116 "direction": "ingress",
18117 "handle": 16777217,
18118 "name": "ingress_port_count_table",
18119 "is_resource_controllable": true,
18120 "table_type": "match",
18121 "ap_bind_indirect_res_to_match": [],
18122 "statistics_table_refs": [
18123 {
18124 "how_referenced": "indirect",
18125 "handle": 67108865,
18126 "name": "ingress_port_counter"
18127 }
18128 ],
18129 "actions": [
18130 {
18131 "p4_parameters": [],
Carmelo Cascone6230a612017-09-13 03:25:41 +020018132 "disallowed_as_default_action_reason": "USES_HASH_DIST",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018133 "handle": 536870914,
18134 "name": "count_ingress",
18135 "indirect_resources": [],
18136 "override_stat_full_addr": 0,
18137 "override_meter_addr_pfe": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020018138 "allowed_as_default_action": false,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018139 "override_stat_addr_pfe": true,
18140 "override_stateful_addr_pfe": false,
18141 "override_meter_full_addr": 0,
18142 "override_stat_addr": false,
18143 "override_stateful_addr": false,
18144 "override_stateful_full_addr": 0,
18145 "override_meter_addr": false
18146 }
18147 ],
18148 "meter_table_refs": [],
18149 "default_action_handle": 536870914,
18150 "uses_range": false,
18151 "match_attributes": {
18152 "stage_tables": [
18153 {
Brian O'Connora6862e02017-09-08 01:17:39 -070018154 "default_next_table": 33,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018155 "action_format": [
18156 {
18157 "vliw_instruction_full": 64,
18158 "next_table": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018159 "next_table_full": 33,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018160 "action_handle": 536870914,
18161 "action_name": "count_ingress",
18162 "table_name": "egress_port_count_table",
18163 "immediate_fields": [],
18164 "vliw_instruction": 1
18165 }
18166 ],
18167 "memory_resource_allocation": null,
18168 "pack_format": [
18169 {
18170 "memory_word_width": 0,
Carmelo Cascone6230a612017-09-13 03:25:41 +020018171 "entries_per_table_word": 0,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018172 "table_word_width": 0,
18173 "number_memory_units_per_table_word": 0
18174 }
18175 ],
Carmelo Cascone6230a612017-09-13 03:25:41 +020018176 "hash_functions": [
18177 {
18178 "hash_function_number": 0,
18179 "hash_bits": []
18180 }
18181 ],
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018182 "result_physical_buses": [
18183 1
18184 ],
18185 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018186 "stage_number": 2,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018187 "stage_table_type": "match_with_no_key",
Carmelo Cascone6230a612017-09-13 03:25:41 +020018188 "size": 1024
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018189 }
18190 ],
18191 "match_type": "match_with_no_key"
18192 },
18193 "stateful_table_refs": [],
18194 "default_next_table_mask": 0,
18195 "selection_table_refs": [],
18196 "action_data_table_refs": [],
18197 "match_key_fields": [],
18198 "size": 1024
18199 },
18200 {
18201 "direction": "ingress",
18202 "handle": 33554434,
18203 "name": "egress_port_count_table__action__",
18204 "table_type": "action",
18205 "stage_tables": [
18206 {
18207 "memory_resource_allocation": null,
18208 "pack_format": [
18209 {
18210 "entries_per_table_word": 1,
18211 "action_handle": 536870916,
18212 "memory_word_width": 128,
18213 "table_word_width": 128,
18214 "entries": [
18215 {
18216 "entry_number": 0,
18217 "fields": [
18218 {
18219 "start_bit": 0,
18220 "field_width": 0,
18221 "lsb_mem_word_idx": 1,
18222 "source": "zero",
18223 "lsb_mem_word_offset": 0,
18224 "field_name": "--padding--"
18225 }
18226 ]
18227 }
18228 ],
18229 "number_memory_units_per_table_word": 1
18230 }
18231 ],
18232 "logical_table_id": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070018233 "stage_number": 2,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018234 "stage_table_type": "action_data",
18235 "size": 0
18236 }
18237 ],
18238 "actions": [
18239 {
18240 "p4_parameters": [],
Carmelo Cascone6230a612017-09-13 03:25:41 +020018241 "disallowed_as_default_action_reason": "USES_HASH_DIST",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018242 "handle": 536870916,
18243 "name": "count_egress",
18244 "indirect_resources": [],
18245 "override_stat_full_addr": 0,
18246 "override_meter_addr_pfe": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020018247 "allowed_as_default_action": false,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018248 "override_stat_addr_pfe": true,
18249 "override_stateful_addr_pfe": false,
18250 "override_meter_full_addr": 0,
18251 "override_stat_addr": false,
18252 "override_stateful_addr": false,
18253 "override_stateful_full_addr": 0,
18254 "override_meter_addr": false
18255 }
18256 ],
18257 "how_referenced": "direct",
18258 "size": 1024
18259 },
18260 {
18261 "direction": "ingress",
18262 "handle": 16777218,
18263 "name": "egress_port_count_table",
18264 "is_resource_controllable": true,
18265 "table_type": "match",
18266 "ap_bind_indirect_res_to_match": [],
18267 "statistics_table_refs": [
18268 {
18269 "how_referenced": "indirect",
18270 "handle": 67108866,
18271 "name": "egress_port_counter"
18272 }
18273 ],
18274 "actions": [
18275 {
18276 "p4_parameters": [],
Carmelo Cascone6230a612017-09-13 03:25:41 +020018277 "disallowed_as_default_action_reason": "USES_HASH_DIST",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018278 "handle": 536870916,
18279 "name": "count_egress",
18280 "indirect_resources": [],
18281 "override_stat_full_addr": 0,
18282 "override_meter_addr_pfe": false,
Carmelo Cascone6230a612017-09-13 03:25:41 +020018283 "allowed_as_default_action": false,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018284 "override_stat_addr_pfe": true,
18285 "override_stateful_addr_pfe": false,
18286 "override_meter_full_addr": 0,
18287 "override_stat_addr": false,
18288 "override_stateful_addr": false,
18289 "override_stateful_full_addr": 0,
18290 "override_meter_addr": false
18291 }
18292 ],
18293 "meter_table_refs": [],
18294 "default_action_handle": 536870916,
18295 "uses_range": false,
18296 "match_attributes": {
18297 "stage_tables": [
18298 {
18299 "default_next_table": 255,
18300 "action_format": [
18301 {
18302 "vliw_instruction_full": 64,
18303 "next_table": 0,
18304 "next_table_full": 255,
18305 "action_handle": 536870916,
18306 "action_name": "count_egress",
18307 "table_name": "--END_OF_PIPELINE--",
18308 "immediate_fields": [],
18309 "vliw_instruction": 0
18310 }
18311 ],
18312 "memory_resource_allocation": null,
18313 "pack_format": [
18314 {
18315 "memory_word_width": 0,
Carmelo Cascone6230a612017-09-13 03:25:41 +020018316 "entries_per_table_word": 0,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018317 "table_word_width": 0,
18318 "number_memory_units_per_table_word": 0
18319 }
18320 ],
Carmelo Cascone6230a612017-09-13 03:25:41 +020018321 "hash_functions": [
18322 {
18323 "hash_function_number": 0,
18324 "hash_bits": []
18325 }
18326 ],
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018327 "result_physical_buses": [
18328 0
18329 ],
18330 "logical_table_id": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070018331 "stage_number": 2,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018332 "stage_table_type": "match_with_no_key",
Carmelo Cascone6230a612017-09-13 03:25:41 +020018333 "size": 1024
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018334 }
18335 ],
18336 "match_type": "match_with_no_key"
18337 },
18338 "stateful_table_refs": [],
18339 "default_next_table_mask": 0,
18340 "selection_table_refs": [],
18341 "action_data_table_refs": [],
18342 "match_key_fields": [],
18343 "size": 1024
18344 },
18345 {
18346 "direction": "ingress",
18347 "handle": 33554435,
Brian O'Connora6862e02017-09-08 01:17:39 -070018348 "name": "process_packet_out_table__action__",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018349 "table_type": "action",
18350 "stage_tables": [
18351 {
18352 "memory_resource_allocation": null,
18353 "pack_format": [
18354 {
18355 "entries_per_table_word": 1,
18356 "action_handle": 536870919,
18357 "memory_word_width": 128,
18358 "table_word_width": 128,
18359 "entries": [
18360 {
18361 "entry_number": 0,
18362 "fields": [
18363 {
18364 "start_bit": 0,
18365 "field_width": 0,
18366 "lsb_mem_word_idx": 1,
18367 "source": "zero",
18368 "lsb_mem_word_offset": 0,
18369 "field_name": "--padding--"
18370 }
18371 ]
18372 }
18373 ],
18374 "number_memory_units_per_table_word": 1
18375 }
18376 ],
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018377 "logical_table_id": 1,
18378 "stage_number": 0,
18379 "stage_table_type": "action_data",
18380 "size": 0
18381 }
18382 ],
18383 "actions": [
18384 {
18385 "p4_parameters": [],
Brian O'Connora6862e02017-09-08 01:17:39 -070018386 "handle": 536870919,
18387 "name": "_process_packet_out",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018388 "indirect_resources": [],
18389 "override_stat_full_addr": 0,
18390 "override_meter_addr_pfe": false,
18391 "allowed_as_default_action": true,
18392 "override_stat_addr_pfe": false,
18393 "override_stateful_addr_pfe": false,
18394 "override_meter_full_addr": 0,
18395 "override_stat_addr": false,
18396 "override_stateful_addr": false,
18397 "override_stateful_full_addr": 0,
18398 "override_meter_addr": false
18399 }
18400 ],
18401 "how_referenced": "direct",
18402 "size": 1024
18403 },
18404 {
Brian O'Connora6862e02017-09-08 01:17:39 -070018405 "direction": "ingress",
18406 "handle": 16777219,
18407 "name": "process_packet_out_table",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018408 "is_resource_controllable": true,
18409 "table_type": "match",
18410 "ap_bind_indirect_res_to_match": [],
18411 "statistics_table_refs": [],
18412 "actions": [
18413 {
18414 "p4_parameters": [],
Brian O'Connora6862e02017-09-08 01:17:39 -070018415 "handle": 536870919,
18416 "name": "_process_packet_out",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018417 "indirect_resources": [],
18418 "override_stat_full_addr": 0,
18419 "override_meter_addr_pfe": false,
18420 "allowed_as_default_action": true,
18421 "override_stat_addr_pfe": false,
18422 "override_stateful_addr_pfe": false,
18423 "override_meter_full_addr": 0,
18424 "override_stat_addr": false,
18425 "override_stateful_addr": false,
18426 "override_stateful_full_addr": 0,
18427 "override_meter_addr": false
18428 }
18429 ],
18430 "meter_table_refs": [],
Brian O'Connora6862e02017-09-08 01:17:39 -070018431 "default_action_handle": 536870919,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018432 "uses_range": false,
18433 "match_attributes": {
18434 "stage_tables": [
18435 {
Brian O'Connora6862e02017-09-08 01:17:39 -070018436 "default_next_table": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018437 "action_format": [
18438 {
Brian O'Connora6862e02017-09-08 01:17:39 -070018439 "vliw_instruction_full": 69,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018440 "next_table": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018441 "next_table_full": 32,
18442 "action_handle": 536870919,
18443 "action_name": "_process_packet_out",
18444 "table_name": "_condition_2",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018445 "immediate_fields": [],
Brian O'Connora6862e02017-09-08 01:17:39 -070018446 "vliw_instruction": 0
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018447 }
18448 ],
18449 "memory_resource_allocation": null,
18450 "pack_format": [
18451 {
18452 "memory_word_width": 0,
18453 "entries_per_table_word": 1,
18454 "table_word_width": 0,
18455 "number_memory_units_per_table_word": 0
18456 }
18457 ],
18458 "result_physical_buses": [
Brian O'Connora6862e02017-09-08 01:17:39 -070018459 1
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018460 ],
18461 "logical_table_id": 1,
18462 "stage_number": 0,
18463 "stage_table_type": "match_with_no_key",
18464 "size": 1
18465 }
18466 ],
18467 "match_type": "match_with_no_key"
18468 },
18469 "stateful_table_refs": [],
18470 "default_next_table_mask": 0,
18471 "selection_table_refs": [],
18472 "action_data_table_refs": [],
18473 "match_key_fields": [],
18474 "size": 1024
18475 },
18476 {
18477 "direction": "ingress",
Brian O'Connora6862e02017-09-08 01:17:39 -070018478 "handle": 33554436,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018479 "name": "table0__action__",
18480 "table_type": "action",
18481 "stage_tables": [
18482 {
18483 "memory_resource_allocation": {
18484 "spare_bank_memory_unit": 80,
18485 "memory_units_and_vpns": [
18486 {
18487 "memory_units": [
18488 80
18489 ],
18490 "vpns": [
18491 0
18492 ]
18493 }
18494 ],
18495 "memory_type": "sram"
18496 },
18497 "pack_format": [
18498 {
18499 "entries_per_table_word": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070018500 "action_handle": 536870921,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018501 "memory_word_width": 128,
18502 "table_word_width": 128,
18503 "entries": [
18504 {
18505 "entry_number": 7,
18506 "fields": [
18507 {
18508 "start_bit": 0,
18509 "field_width": 7,
18510 "lsb_mem_word_idx": 0,
18511 "source": "zero",
18512 "lsb_mem_word_offset": 121,
18513 "field_name": "--padding--"
18514 },
18515 {
18516 "start_bit": 0,
18517 "field_width": 9,
18518 "lsb_mem_word_idx": 0,
18519 "source": "spec",
18520 "lsb_mem_word_offset": 112,
18521 "field_name": "port"
18522 }
18523 ]
18524 },
18525 {
18526 "entry_number": 6,
18527 "fields": [
18528 {
18529 "start_bit": 0,
18530 "field_width": 7,
18531 "lsb_mem_word_idx": 0,
18532 "source": "zero",
18533 "lsb_mem_word_offset": 105,
18534 "field_name": "--padding--"
18535 },
18536 {
18537 "start_bit": 0,
18538 "field_width": 9,
18539 "lsb_mem_word_idx": 0,
18540 "source": "spec",
18541 "lsb_mem_word_offset": 96,
18542 "field_name": "port"
18543 }
18544 ]
18545 },
18546 {
18547 "entry_number": 5,
18548 "fields": [
18549 {
18550 "start_bit": 0,
18551 "field_width": 7,
18552 "lsb_mem_word_idx": 0,
18553 "source": "zero",
18554 "lsb_mem_word_offset": 89,
18555 "field_name": "--padding--"
18556 },
18557 {
18558 "start_bit": 0,
18559 "field_width": 9,
18560 "lsb_mem_word_idx": 0,
18561 "source": "spec",
18562 "lsb_mem_word_offset": 80,
18563 "field_name": "port"
18564 }
18565 ]
18566 },
18567 {
18568 "entry_number": 4,
18569 "fields": [
18570 {
18571 "start_bit": 0,
18572 "field_width": 7,
18573 "lsb_mem_word_idx": 0,
18574 "source": "zero",
18575 "lsb_mem_word_offset": 73,
18576 "field_name": "--padding--"
18577 },
18578 {
18579 "start_bit": 0,
18580 "field_width": 9,
18581 "lsb_mem_word_idx": 0,
18582 "source": "spec",
18583 "lsb_mem_word_offset": 64,
18584 "field_name": "port"
18585 }
18586 ]
18587 },
18588 {
18589 "entry_number": 3,
18590 "fields": [
18591 {
18592 "start_bit": 0,
18593 "field_width": 7,
18594 "lsb_mem_word_idx": 0,
18595 "source": "zero",
18596 "lsb_mem_word_offset": 57,
18597 "field_name": "--padding--"
18598 },
18599 {
18600 "start_bit": 0,
18601 "field_width": 9,
18602 "lsb_mem_word_idx": 0,
18603 "source": "spec",
18604 "lsb_mem_word_offset": 48,
18605 "field_name": "port"
18606 }
18607 ]
18608 },
18609 {
18610 "entry_number": 2,
18611 "fields": [
18612 {
18613 "start_bit": 0,
18614 "field_width": 7,
18615 "lsb_mem_word_idx": 0,
18616 "source": "zero",
18617 "lsb_mem_word_offset": 41,
18618 "field_name": "--padding--"
18619 },
18620 {
18621 "start_bit": 0,
18622 "field_width": 9,
18623 "lsb_mem_word_idx": 0,
18624 "source": "spec",
18625 "lsb_mem_word_offset": 32,
18626 "field_name": "port"
18627 }
18628 ]
18629 },
18630 {
18631 "entry_number": 1,
18632 "fields": [
18633 {
18634 "start_bit": 0,
18635 "field_width": 7,
18636 "lsb_mem_word_idx": 0,
18637 "source": "zero",
18638 "lsb_mem_word_offset": 25,
18639 "field_name": "--padding--"
18640 },
18641 {
18642 "start_bit": 0,
18643 "field_width": 9,
18644 "lsb_mem_word_idx": 0,
18645 "source": "spec",
18646 "lsb_mem_word_offset": 16,
18647 "field_name": "port"
18648 }
18649 ]
18650 },
18651 {
18652 "entry_number": 0,
18653 "fields": [
18654 {
18655 "start_bit": 0,
18656 "field_width": 7,
18657 "lsb_mem_word_idx": 0,
18658 "source": "zero",
18659 "lsb_mem_word_offset": 9,
18660 "field_name": "--padding--"
18661 },
18662 {
18663 "start_bit": 0,
18664 "field_width": 9,
18665 "lsb_mem_word_idx": 0,
18666 "source": "spec",
18667 "lsb_mem_word_offset": 0,
18668 "field_name": "port"
18669 }
18670 ]
18671 }
18672 ],
18673 "number_memory_units_per_table_word": 1
18674 },
18675 {
18676 "entries_per_table_word": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070018677 "action_handle": 536870924,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018678 "memory_word_width": 128,
18679 "table_word_width": 128,
18680 "entries": [
18681 {
18682 "entry_number": 7,
18683 "fields": [
18684 {
18685 "start_bit": 0,
18686 "field_width": 16,
18687 "lsb_mem_word_idx": 0,
18688 "source": "spec",
18689 "lsb_mem_word_offset": 112,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020018690 "field_name": "group_id"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018691 }
18692 ]
18693 },
18694 {
18695 "entry_number": 6,
18696 "fields": [
18697 {
18698 "start_bit": 0,
18699 "field_width": 16,
18700 "lsb_mem_word_idx": 0,
18701 "source": "spec",
18702 "lsb_mem_word_offset": 96,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020018703 "field_name": "group_id"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018704 }
18705 ]
18706 },
18707 {
18708 "entry_number": 5,
18709 "fields": [
18710 {
18711 "start_bit": 0,
18712 "field_width": 16,
18713 "lsb_mem_word_idx": 0,
18714 "source": "spec",
18715 "lsb_mem_word_offset": 80,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020018716 "field_name": "group_id"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018717 }
18718 ]
18719 },
18720 {
18721 "entry_number": 4,
18722 "fields": [
18723 {
18724 "start_bit": 0,
18725 "field_width": 16,
18726 "lsb_mem_word_idx": 0,
18727 "source": "spec",
18728 "lsb_mem_word_offset": 64,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020018729 "field_name": "group_id"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018730 }
18731 ]
18732 },
18733 {
18734 "entry_number": 3,
18735 "fields": [
18736 {
18737 "start_bit": 0,
18738 "field_width": 16,
18739 "lsb_mem_word_idx": 0,
18740 "source": "spec",
18741 "lsb_mem_word_offset": 48,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020018742 "field_name": "group_id"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018743 }
18744 ]
18745 },
18746 {
18747 "entry_number": 2,
18748 "fields": [
18749 {
18750 "start_bit": 0,
18751 "field_width": 16,
18752 "lsb_mem_word_idx": 0,
18753 "source": "spec",
18754 "lsb_mem_word_offset": 32,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020018755 "field_name": "group_id"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018756 }
18757 ]
18758 },
18759 {
18760 "entry_number": 1,
18761 "fields": [
18762 {
18763 "start_bit": 0,
18764 "field_width": 16,
18765 "lsb_mem_word_idx": 0,
18766 "source": "spec",
18767 "lsb_mem_word_offset": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020018768 "field_name": "group_id"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018769 }
18770 ]
18771 },
18772 {
18773 "entry_number": 0,
18774 "fields": [
18775 {
18776 "start_bit": 0,
18777 "field_width": 16,
18778 "lsb_mem_word_idx": 0,
18779 "source": "spec",
18780 "lsb_mem_word_offset": 0,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020018781 "field_name": "group_id"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018782 }
18783 ]
18784 }
18785 ],
18786 "number_memory_units_per_table_word": 1
18787 },
18788 {
18789 "entries_per_table_word": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070018790 "action_handle": 536870928,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018791 "memory_word_width": 128,
18792 "table_word_width": 128,
18793 "entries": [
18794 {
18795 "entry_number": 7,
18796 "fields": [
18797 {
18798 "start_bit": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018799 "field_width": 7,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018800 "lsb_mem_word_idx": 0,
18801 "source": "zero",
Brian O'Connora6862e02017-09-08 01:17:39 -070018802 "lsb_mem_word_offset": 121,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018803 "field_name": "--padding--"
Brian O'Connora6862e02017-09-08 01:17:39 -070018804 },
18805 {
18806 "start_bit": 0,
18807 "immediate_name": "--constant-0--",
18808 "field_width": 9,
18809 "lsb_mem_word_idx": 0,
18810 "const_tuples": [
18811 {
18812 "dest_start": 0,
18813 "value": 192,
18814 "dest_width": 9
18815 }
18816 ],
18817 "source": "constant",
18818 "lsb_mem_word_offset": 112,
18819 "field_name": "--constant-0--"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018820 }
18821 ]
18822 },
18823 {
18824 "entry_number": 6,
18825 "fields": [
18826 {
18827 "start_bit": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018828 "field_width": 7,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018829 "lsb_mem_word_idx": 0,
18830 "source": "zero",
Brian O'Connora6862e02017-09-08 01:17:39 -070018831 "lsb_mem_word_offset": 105,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018832 "field_name": "--padding--"
Brian O'Connora6862e02017-09-08 01:17:39 -070018833 },
18834 {
18835 "start_bit": 0,
18836 "immediate_name": "--constant-0--",
18837 "field_width": 9,
18838 "lsb_mem_word_idx": 0,
18839 "const_tuples": [
18840 {
18841 "dest_start": 0,
18842 "value": 192,
18843 "dest_width": 9
18844 }
18845 ],
18846 "source": "constant",
18847 "lsb_mem_word_offset": 96,
18848 "field_name": "--constant-0--"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018849 }
18850 ]
18851 },
18852 {
18853 "entry_number": 5,
18854 "fields": [
18855 {
18856 "start_bit": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018857 "field_width": 7,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018858 "lsb_mem_word_idx": 0,
18859 "source": "zero",
Brian O'Connora6862e02017-09-08 01:17:39 -070018860 "lsb_mem_word_offset": 89,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018861 "field_name": "--padding--"
Brian O'Connora6862e02017-09-08 01:17:39 -070018862 },
18863 {
18864 "start_bit": 0,
18865 "immediate_name": "--constant-0--",
18866 "field_width": 9,
18867 "lsb_mem_word_idx": 0,
18868 "const_tuples": [
18869 {
18870 "dest_start": 0,
18871 "value": 192,
18872 "dest_width": 9
18873 }
18874 ],
18875 "source": "constant",
18876 "lsb_mem_word_offset": 80,
18877 "field_name": "--constant-0--"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018878 }
18879 ]
18880 },
18881 {
18882 "entry_number": 4,
18883 "fields": [
18884 {
18885 "start_bit": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018886 "field_width": 7,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018887 "lsb_mem_word_idx": 0,
18888 "source": "zero",
Brian O'Connora6862e02017-09-08 01:17:39 -070018889 "lsb_mem_word_offset": 73,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018890 "field_name": "--padding--"
Brian O'Connora6862e02017-09-08 01:17:39 -070018891 },
18892 {
18893 "start_bit": 0,
18894 "immediate_name": "--constant-0--",
18895 "field_width": 9,
18896 "lsb_mem_word_idx": 0,
18897 "const_tuples": [
18898 {
18899 "dest_start": 0,
18900 "value": 192,
18901 "dest_width": 9
18902 }
18903 ],
18904 "source": "constant",
18905 "lsb_mem_word_offset": 64,
18906 "field_name": "--constant-0--"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018907 }
18908 ]
18909 },
18910 {
18911 "entry_number": 3,
18912 "fields": [
18913 {
18914 "start_bit": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018915 "field_width": 7,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018916 "lsb_mem_word_idx": 0,
18917 "source": "zero",
Brian O'Connora6862e02017-09-08 01:17:39 -070018918 "lsb_mem_word_offset": 57,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018919 "field_name": "--padding--"
Brian O'Connora6862e02017-09-08 01:17:39 -070018920 },
18921 {
18922 "start_bit": 0,
18923 "immediate_name": "--constant-0--",
18924 "field_width": 9,
18925 "lsb_mem_word_idx": 0,
18926 "const_tuples": [
18927 {
18928 "dest_start": 0,
18929 "value": 192,
18930 "dest_width": 9
18931 }
18932 ],
18933 "source": "constant",
18934 "lsb_mem_word_offset": 48,
18935 "field_name": "--constant-0--"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018936 }
18937 ]
18938 },
18939 {
18940 "entry_number": 2,
18941 "fields": [
18942 {
18943 "start_bit": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018944 "field_width": 7,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018945 "lsb_mem_word_idx": 0,
18946 "source": "zero",
Brian O'Connora6862e02017-09-08 01:17:39 -070018947 "lsb_mem_word_offset": 41,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018948 "field_name": "--padding--"
Brian O'Connora6862e02017-09-08 01:17:39 -070018949 },
18950 {
18951 "start_bit": 0,
18952 "immediate_name": "--constant-0--",
18953 "field_width": 9,
18954 "lsb_mem_word_idx": 0,
18955 "const_tuples": [
18956 {
18957 "dest_start": 0,
18958 "value": 192,
18959 "dest_width": 9
18960 }
18961 ],
18962 "source": "constant",
18963 "lsb_mem_word_offset": 32,
18964 "field_name": "--constant-0--"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018965 }
18966 ]
18967 },
18968 {
18969 "entry_number": 1,
18970 "fields": [
18971 {
18972 "start_bit": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070018973 "field_width": 7,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018974 "lsb_mem_word_idx": 0,
18975 "source": "zero",
Brian O'Connora6862e02017-09-08 01:17:39 -070018976 "lsb_mem_word_offset": 25,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018977 "field_name": "--padding--"
Brian O'Connora6862e02017-09-08 01:17:39 -070018978 },
18979 {
18980 "start_bit": 0,
18981 "immediate_name": "--constant-0--",
18982 "field_width": 9,
18983 "lsb_mem_word_idx": 0,
18984 "const_tuples": [
18985 {
18986 "dest_start": 0,
18987 "value": 192,
18988 "dest_width": 9
18989 }
18990 ],
18991 "source": "constant",
18992 "lsb_mem_word_offset": 16,
18993 "field_name": "--constant-0--"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020018994 }
18995 ]
18996 },
18997 {
18998 "entry_number": 0,
18999 "fields": [
19000 {
19001 "start_bit": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070019002 "field_width": 7,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019003 "lsb_mem_word_idx": 0,
19004 "source": "zero",
Brian O'Connora6862e02017-09-08 01:17:39 -070019005 "lsb_mem_word_offset": 9,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019006 "field_name": "--padding--"
Brian O'Connora6862e02017-09-08 01:17:39 -070019007 },
19008 {
19009 "start_bit": 0,
19010 "immediate_name": "--constant-0--",
19011 "field_width": 9,
19012 "lsb_mem_word_idx": 0,
19013 "const_tuples": [
19014 {
19015 "dest_start": 0,
19016 "value": 192,
19017 "dest_width": 9
19018 }
19019 ],
19020 "source": "constant",
19021 "lsb_mem_word_offset": 0,
19022 "field_name": "--constant-0--"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019023 }
19024 ]
19025 }
19026 ],
19027 "number_memory_units_per_table_word": 1
19028 },
19029 {
19030 "entries_per_table_word": 8,
Brian O'Connora6862e02017-09-08 01:17:39 -070019031 "action_handle": 536870930,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019032 "memory_word_width": 128,
19033 "table_word_width": 128,
19034 "entries": [
19035 {
19036 "entry_number": 7,
19037 "fields": [
19038 {
19039 "start_bit": 0,
19040 "field_width": 16,
19041 "lsb_mem_word_idx": 0,
19042 "source": "zero",
19043 "lsb_mem_word_offset": 112,
19044 "field_name": "--padding--"
19045 }
19046 ]
19047 },
19048 {
19049 "entry_number": 6,
19050 "fields": [
19051 {
19052 "start_bit": 0,
19053 "field_width": 16,
19054 "lsb_mem_word_idx": 0,
19055 "source": "zero",
19056 "lsb_mem_word_offset": 96,
19057 "field_name": "--padding--"
19058 }
19059 ]
19060 },
19061 {
19062 "entry_number": 5,
19063 "fields": [
19064 {
19065 "start_bit": 0,
19066 "field_width": 16,
19067 "lsb_mem_word_idx": 0,
19068 "source": "zero",
19069 "lsb_mem_word_offset": 80,
19070 "field_name": "--padding--"
19071 }
19072 ]
19073 },
19074 {
19075 "entry_number": 4,
19076 "fields": [
19077 {
19078 "start_bit": 0,
19079 "field_width": 16,
19080 "lsb_mem_word_idx": 0,
19081 "source": "zero",
19082 "lsb_mem_word_offset": 64,
19083 "field_name": "--padding--"
19084 }
19085 ]
19086 },
19087 {
19088 "entry_number": 3,
19089 "fields": [
19090 {
19091 "start_bit": 0,
19092 "field_width": 16,
19093 "lsb_mem_word_idx": 0,
19094 "source": "zero",
19095 "lsb_mem_word_offset": 48,
19096 "field_name": "--padding--"
19097 }
19098 ]
19099 },
19100 {
19101 "entry_number": 2,
19102 "fields": [
19103 {
19104 "start_bit": 0,
19105 "field_width": 16,
19106 "lsb_mem_word_idx": 0,
19107 "source": "zero",
19108 "lsb_mem_word_offset": 32,
19109 "field_name": "--padding--"
19110 }
19111 ]
19112 },
19113 {
19114 "entry_number": 1,
19115 "fields": [
19116 {
19117 "start_bit": 0,
19118 "field_width": 16,
19119 "lsb_mem_word_idx": 0,
19120 "source": "zero",
19121 "lsb_mem_word_offset": 16,
19122 "field_name": "--padding--"
19123 }
19124 ]
19125 },
19126 {
19127 "entry_number": 0,
19128 "fields": [
19129 {
19130 "start_bit": 0,
19131 "field_width": 16,
19132 "lsb_mem_word_idx": 0,
19133 "source": "zero",
19134 "lsb_mem_word_offset": 0,
19135 "field_name": "--padding--"
19136 }
19137 ]
19138 }
19139 ],
19140 "number_memory_units_per_table_word": 1
19141 }
19142 ],
19143 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070019144 "stage_number": 0,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019145 "stage_table_type": "action_data",
19146 "size": 8192
19147 }
19148 ],
19149 "actions": [
19150 {
19151 "p4_parameters": [
19152 {
19153 "position": 0,
19154 "name": "port",
19155 "start_bit": 0,
19156 "bit_width": 9
19157 }
19158 ],
Brian O'Connora6862e02017-09-08 01:17:39 -070019159 "handle": 536870921,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019160 "name": "set_egress_port",
19161 "indirect_resources": [],
19162 "override_stat_full_addr": 0,
19163 "override_meter_addr_pfe": false,
19164 "allowed_as_default_action": true,
19165 "override_stat_addr_pfe": false,
19166 "override_stateful_addr_pfe": false,
19167 "override_meter_full_addr": 0,
19168 "override_stat_addr": false,
19169 "override_stateful_addr": false,
19170 "override_stateful_full_addr": 0,
19171 "override_meter_addr": false
19172 },
19173 {
19174 "p4_parameters": [
19175 {
19176 "position": 0,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020019177 "name": "group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019178 "start_bit": 0,
19179 "bit_width": 16
19180 }
19181 ],
19182 "disallowed_as_default_action_reason": "USES_HASH_DIST",
Brian O'Connora6862e02017-09-08 01:17:39 -070019183 "handle": 536870924,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019184 "name": "ecmp_group",
19185 "indirect_resources": [],
19186 "override_stat_full_addr": 0,
19187 "override_meter_addr_pfe": false,
19188 "allowed_as_default_action": false,
19189 "override_stat_addr_pfe": false,
19190 "override_stateful_addr_pfe": false,
19191 "override_meter_full_addr": 0,
19192 "override_stat_addr": false,
19193 "override_stateful_addr": false,
19194 "override_stateful_full_addr": 0,
19195 "override_meter_addr": false
19196 },
19197 {
19198 "p4_parameters": [],
Brian O'Connora6862e02017-09-08 01:17:39 -070019199 "handle": 536870928,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019200 "name": "send_to_cpu",
19201 "indirect_resources": [],
19202 "override_stat_full_addr": 0,
19203 "override_meter_addr_pfe": false,
19204 "allowed_as_default_action": true,
19205 "override_stat_addr_pfe": false,
19206 "override_stateful_addr_pfe": false,
19207 "override_meter_full_addr": 0,
19208 "override_stat_addr": false,
19209 "override_stateful_addr": false,
19210 "override_stateful_full_addr": 0,
19211 "override_meter_addr": false
19212 },
19213 {
19214 "p4_parameters": [],
Brian O'Connora6862e02017-09-08 01:17:39 -070019215 "handle": 536870930,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019216 "name": "_drop",
19217 "indirect_resources": [],
19218 "override_stat_full_addr": 0,
19219 "override_meter_addr_pfe": false,
19220 "allowed_as_default_action": true,
19221 "override_stat_addr_pfe": false,
19222 "override_stateful_addr_pfe": false,
19223 "override_meter_full_addr": 0,
19224 "override_stat_addr": false,
19225 "override_stateful_addr": false,
19226 "override_stateful_full_addr": 0,
19227 "override_meter_addr": false
19228 }
19229 ],
19230 "how_referenced": "direct",
19231 "size": 512
19232 },
19233 {
19234 "direction": "ingress",
Brian O'Connora6862e02017-09-08 01:17:39 -070019235 "handle": 16777220,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019236 "name": "table0",
19237 "is_resource_controllable": true,
19238 "table_type": "match",
19239 "ap_bind_indirect_res_to_match": [],
19240 "statistics_table_refs": [
19241 {
19242 "how_referenced": "direct",
19243 "handle": 67108867,
19244 "name": "table0_counter"
19245 }
19246 ],
19247 "actions": [
19248 {
19249 "p4_parameters": [
19250 {
19251 "position": 0,
19252 "name": "port",
19253 "start_bit": 0,
19254 "bit_width": 9
19255 }
19256 ],
Brian O'Connora6862e02017-09-08 01:17:39 -070019257 "handle": 536870921,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019258 "name": "set_egress_port",
19259 "indirect_resources": [],
19260 "override_stat_full_addr": 0,
19261 "override_meter_addr_pfe": false,
19262 "allowed_as_default_action": true,
19263 "override_stat_addr_pfe": false,
19264 "override_stateful_addr_pfe": false,
19265 "override_meter_full_addr": 0,
19266 "override_stat_addr": false,
19267 "override_stateful_addr": false,
19268 "override_stateful_full_addr": 0,
19269 "override_meter_addr": false
19270 },
19271 {
19272 "p4_parameters": [
19273 {
19274 "position": 0,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020019275 "name": "group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019276 "start_bit": 0,
19277 "bit_width": 16
19278 }
19279 ],
19280 "disallowed_as_default_action_reason": "USES_HASH_DIST",
Brian O'Connora6862e02017-09-08 01:17:39 -070019281 "handle": 536870924,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019282 "name": "ecmp_group",
19283 "indirect_resources": [],
19284 "override_stat_full_addr": 0,
19285 "override_meter_addr_pfe": false,
19286 "allowed_as_default_action": false,
19287 "override_stat_addr_pfe": false,
19288 "override_stateful_addr_pfe": false,
19289 "override_meter_full_addr": 0,
19290 "override_stat_addr": false,
19291 "override_stateful_addr": false,
19292 "override_stateful_full_addr": 0,
19293 "override_meter_addr": false
19294 },
19295 {
19296 "p4_parameters": [],
Brian O'Connora6862e02017-09-08 01:17:39 -070019297 "handle": 536870928,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019298 "name": "send_to_cpu",
19299 "indirect_resources": [],
19300 "override_stat_full_addr": 0,
19301 "override_meter_addr_pfe": false,
19302 "allowed_as_default_action": true,
19303 "override_stat_addr_pfe": false,
19304 "override_stateful_addr_pfe": false,
19305 "override_meter_full_addr": 0,
19306 "override_stat_addr": false,
19307 "override_stateful_addr": false,
19308 "override_stateful_full_addr": 0,
19309 "override_meter_addr": false
19310 },
19311 {
19312 "p4_parameters": [],
Brian O'Connora6862e02017-09-08 01:17:39 -070019313 "handle": 536870930,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019314 "name": "_drop",
19315 "indirect_resources": [],
19316 "override_stat_full_addr": 0,
19317 "override_meter_addr_pfe": false,
19318 "allowed_as_default_action": true,
19319 "override_stat_addr_pfe": false,
19320 "override_stateful_addr_pfe": false,
19321 "override_meter_full_addr": 0,
19322 "override_stat_addr": false,
19323 "override_stateful_addr": false,
19324 "override_stateful_full_addr": 0,
19325 "override_meter_addr": false
19326 }
19327 ],
19328 "meter_table_refs": [],
19329 "uses_range": false,
19330 "match_attributes": {
19331 "stage_tables": [
19332 {
Brian O'Connora6862e02017-09-08 01:17:39 -070019333 "default_next_table": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019334 "memory_resource_allocation": {
19335 "memory_units_and_vpns": [
19336 {
19337 "memory_units": [
19338 21,
19339 22,
19340 23
19341 ],
19342 "vpns": [
19343 0
19344 ]
19345 }
19346 ],
19347 "memory_type": "tcam"
19348 },
19349 "pack_format": [
19350 {
19351 "memory_word_width": 47,
19352 "entries_per_table_word": 1,
19353 "entries": [
19354 {
19355 "entry_number": 0,
19356 "fields": [
19357 {
19358 "start_bit": 0,
19359 "field_width": 2,
19360 "lsb_mem_word_idx": 2,
19361 "source": "parity",
19362 "msb_mem_word_idx": 2,
19363 "lsb_mem_word_offset": 45,
19364 "field_name": "--tcam_parity_2--"
19365 },
19366 {
19367 "start_bit": 0,
19368 "field_width": 4,
19369 "lsb_mem_word_idx": 2,
19370 "source": "zero",
19371 "msb_mem_word_idx": 2,
19372 "lsb_mem_word_offset": 41,
19373 "field_name": "--unused--"
19374 },
19375 {
19376 "start_bit": 40,
19377 "field_width": 8,
19378 "lsb_mem_word_idx": 2,
19379 "source": "spec",
19380 "msb_mem_word_idx": 2,
19381 "lsb_mem_word_offset": 33,
19382 "field_name": "ethernet_dstAddr"
19383 },
19384 {
19385 "start_bit": 32,
19386 "field_width": 8,
19387 "lsb_mem_word_idx": 2,
19388 "source": "spec",
19389 "msb_mem_word_idx": 2,
19390 "lsb_mem_word_offset": 25,
19391 "field_name": "ethernet_srcAddr"
19392 },
19393 {
19394 "start_bit": 0,
19395 "field_width": 8,
19396 "lsb_mem_word_idx": 2,
19397 "source": "spec",
19398 "msb_mem_word_idx": 2,
19399 "lsb_mem_word_offset": 17,
19400 "field_name": "ethernet_dstAddr"
19401 },
19402 {
19403 "start_bit": 0,
19404 "field_width": 8,
19405 "lsb_mem_word_idx": 2,
19406 "source": "spec",
19407 "msb_mem_word_idx": 2,
19408 "lsb_mem_word_offset": 9,
19409 "field_name": "ig_intr_md_ingress_port"
19410 },
19411 {
19412 "start_bit": 8,
19413 "field_width": 8,
19414 "lsb_mem_word_idx": 2,
19415 "source": "spec",
19416 "msb_mem_word_idx": 2,
19417 "lsb_mem_word_offset": 1,
19418 "field_name": "ethernet_etherType"
19419 },
19420 {
19421 "start_bit": 0,
19422 "field_width": 1,
19423 "lsb_mem_word_idx": 2,
19424 "source": "payload",
19425 "msb_mem_word_idx": 2,
19426 "lsb_mem_word_offset": 0,
19427 "field_name": "--tcam_payload_2--"
19428 },
19429 {
19430 "start_bit": 0,
19431 "field_width": 2,
19432 "lsb_mem_word_idx": 1,
19433 "source": "parity",
19434 "msb_mem_word_idx": 1,
19435 "lsb_mem_word_offset": 45,
19436 "field_name": "--tcam_parity_1--"
19437 },
19438 {
19439 "start_bit": 0,
19440 "field_width": 2,
19441 "lsb_mem_word_idx": 1,
19442 "source": "version",
19443 "msb_mem_word_idx": 1,
19444 "lsb_mem_word_offset": 43,
19445 "field_name": "--version--"
19446 },
19447 {
19448 "start_bit": 0,
19449 "field_width": 2,
19450 "lsb_mem_word_idx": 1,
19451 "source": "zero",
19452 "msb_mem_word_idx": 1,
19453 "lsb_mem_word_offset": 41,
19454 "field_name": "--unused--"
19455 },
19456 {
19457 "start_bit": 40,
19458 "field_width": 8,
19459 "lsb_mem_word_idx": 1,
19460 "source": "spec",
19461 "msb_mem_word_idx": 1,
19462 "lsb_mem_word_offset": 33,
19463 "field_name": "ethernet_srcAddr"
19464 },
19465 {
19466 "start_bit": 16,
19467 "field_width": 8,
19468 "lsb_mem_word_idx": 1,
19469 "source": "spec",
19470 "msb_mem_word_idx": 1,
19471 "lsb_mem_word_offset": 25,
19472 "field_name": "ethernet_dstAddr"
19473 },
19474 {
19475 "start_bit": 0,
19476 "field_width": 8,
19477 "lsb_mem_word_idx": 1,
19478 "source": "spec",
19479 "msb_mem_word_idx": 1,
19480 "lsb_mem_word_offset": 17,
19481 "field_name": "ethernet_etherType"
19482 },
19483 {
19484 "start_bit": 24,
19485 "field_width": 16,
19486 "lsb_mem_word_idx": 1,
19487 "source": "spec",
19488 "msb_mem_word_idx": 1,
19489 "lsb_mem_word_offset": 1,
19490 "field_name": "ethernet_dstAddr"
19491 },
19492 {
19493 "start_bit": 0,
19494 "field_width": 1,
19495 "lsb_mem_word_idx": 1,
19496 "source": "payload",
19497 "msb_mem_word_idx": 1,
19498 "lsb_mem_word_offset": 0,
19499 "field_name": "--tcam_payload_1--"
19500 },
19501 {
19502 "start_bit": 0,
19503 "field_width": 2,
19504 "lsb_mem_word_idx": 0,
19505 "source": "parity",
19506 "msb_mem_word_idx": 0,
19507 "lsb_mem_word_offset": 45,
19508 "field_name": "--tcam_parity_0--"
19509 },
19510 {
19511 "start_bit": 0,
19512 "field_width": 3,
19513 "lsb_mem_word_idx": 0,
19514 "source": "zero",
19515 "msb_mem_word_idx": 0,
19516 "lsb_mem_word_offset": 42,
19517 "field_name": "--unused--"
19518 },
19519 {
19520 "start_bit": 8,
19521 "field_width": 1,
19522 "lsb_mem_word_idx": 0,
19523 "source": "spec",
19524 "msb_mem_word_idx": 0,
19525 "lsb_mem_word_offset": 41,
19526 "field_name": "ig_intr_md_ingress_port"
19527 },
19528 {
19529 "start_bit": 8,
19530 "field_width": 8,
19531 "lsb_mem_word_idx": 0,
19532 "source": "spec",
19533 "msb_mem_word_idx": 0,
19534 "lsb_mem_word_offset": 33,
19535 "field_name": "ethernet_dstAddr"
19536 },
19537 {
19538 "start_bit": 0,
19539 "field_width": 32,
19540 "lsb_mem_word_idx": 0,
19541 "source": "spec",
19542 "msb_mem_word_idx": 0,
19543 "lsb_mem_word_offset": 1,
19544 "field_name": "ethernet_srcAddr"
19545 },
19546 {
19547 "start_bit": 0,
19548 "field_width": 1,
19549 "lsb_mem_word_idx": 0,
19550 "source": "payload",
19551 "msb_mem_word_idx": 0,
19552 "lsb_mem_word_offset": 0,
19553 "field_name": "--tcam_payload_0--"
19554 }
19555 ]
19556 }
19557 ],
19558 "table_word_width": 141,
19559 "number_memory_units_per_table_word": 3
19560 }
19561 ],
19562 "idletime_stage_table": {
19563 "memory_resource_allocation": {
19564 "spare_bank_memory_unit": 42,
19565 "memory_units_and_vpns": [
19566 {
19567 "memory_units": [
19568 42
19569 ],
19570 "vpns": [
19571 0
19572 ]
19573 }
19574 ],
19575 "memory_type": "map_ram"
19576 },
19577 "pack_format": [
19578 {
19579 "memory_word_width": 11,
19580 "entries_per_table_word": 2,
19581 "table_word_width": 11,
19582 "number_memory_units_per_table_word": 1
19583 }
19584 ],
19585 "precision": 3,
19586 "enable_pfe": true,
19587 "two_way_notification": true,
19588 "disable_notification": false,
19589 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070019590 "stage_number": 0,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019591 "stage_table_type": "idletime",
19592 "size": 2048
19593 },
19594 "ternary_indirection_stage_table": {
19595 "action_format": [
19596 {
19597 "vliw_instruction_full": 65,
19598 "next_table": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070019599 "next_table_full": 32,
19600 "action_handle": 536870921,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019601 "action_name": "set_egress_port",
19602 "table_name": "_condition_2",
19603 "immediate_fields": [],
19604 "vliw_instruction": 9
19605 },
19606 {
19607 "vliw_instruction_full": 66,
19608 "next_table": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070019609 "next_table_full": 16,
19610 "action_handle": 536870924,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019611 "action_name": "ecmp_group",
19612 "table_name": "ecmp_group_table",
19613 "immediate_fields": [],
19614 "vliw_instruction": 10
19615 },
19616 {
19617 "vliw_instruction_full": 67,
19618 "next_table": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070019619 "next_table_full": 32,
19620 "action_handle": 536870928,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019621 "action_name": "send_to_cpu",
19622 "table_name": "_condition_2",
19623 "immediate_fields": [],
19624 "vliw_instruction": 11
19625 },
19626 {
19627 "vliw_instruction_full": 68,
19628 "next_table": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070019629 "next_table_full": 32,
19630 "action_handle": 536870930,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020019631 "action_name": "_drop",
19632 "table_name": "_condition_2",
19633 "immediate_fields": [],
19634 "vliw_instruction": 12
19635 }
19636 ],
19637 "memory_resource_allocation": {
19638 "spare_bank_memory_unit": 2,
19639 "memory_units_and_vpns": [
19640 {
19641 "memory_units": [
19642 2
19643 ],
19644 "vpns": [
19645 0
19646 ]
19647 }
19648 ],
19649 "memory_type": "sram"
19650 },
19651 "pack_format": [
19652 {
19653 "memory_word_width": 128,
19654 "entries_per_table_word": 16,
19655 "entries": [
19656 {
19657 "entry_number": 15,
19658 "fields": [
19659 {
19660 "start_bit": 0,
19661 "field_width": 3,
19662 "lsb_mem_word_idx": 0,
19663 "source": "zero",
19664 "msb_mem_word_idx": 0,
19665 "lsb_mem_word_offset": 125,
19666 "field_name": "--padding--",
19667 "enable_pfe": false
19668 },
19669 {
19670 "start_bit": 0,
19671 "field_width": 4,
19672 "lsb_mem_word_idx": 0,
19673 "source": "instr",
19674 "msb_mem_word_idx": 0,
19675 "lsb_mem_word_offset": 121,
19676 "field_name": "--instruction_address--",
19677 "enable_pfe": false
19678 },
19679 {
19680 "start_bit": 0,
19681 "field_width": 1,
19682 "lsb_mem_word_idx": 0,
19683 "source": "next_table",
19684 "msb_mem_word_idx": 0,
19685 "lsb_mem_word_offset": 120,
19686 "field_name": "--next_table--",
19687 "enable_pfe": false
19688 }
19689 ]
19690 },
19691 {
19692 "entry_number": 14,
19693 "fields": [
19694 {
19695 "start_bit": 0,
19696 "field_width": 3,
19697 "lsb_mem_word_idx": 0,
19698 "source": "zero",
19699 "msb_mem_word_idx": 0,
19700 "lsb_mem_word_offset": 117,
19701 "field_name": "--padding--",
19702 "enable_pfe": false
19703 },
19704 {
19705 "start_bit": 0,
19706 "field_width": 4,
19707 "lsb_mem_word_idx": 0,
19708 "source": "instr",
19709 "msb_mem_word_idx": 0,
19710 "lsb_mem_word_offset": 113,
19711 "field_name": "--instruction_address--",
19712 "enable_pfe": false
19713 },
19714 {
19715 "start_bit": 0,
19716 "field_width": 1,
19717 "lsb_mem_word_idx": 0,
19718 "source": "next_table",
19719 "msb_mem_word_idx": 0,
19720 "lsb_mem_word_offset": 112,
19721 "field_name": "--next_table--",
19722 "enable_pfe": false
19723 }
19724 ]
19725 },
19726 {
19727 "entry_number": 13,
19728 "fields": [
19729 {
19730 "start_bit": 0,
19731 "field_width": 3,
19732 "lsb_mem_word_idx": 0,
19733 "source": "zero",
19734 "msb_mem_word_idx": 0,
19735 "lsb_mem_word_offset": 109,
19736 "field_name": "--padding--",
19737 "enable_pfe": false
19738 },
19739 {
19740 "start_bit": 0,
19741 "field_width": 4,
19742 "lsb_mem_word_idx": 0,
19743 "source": "instr",
19744 "msb_mem_word_idx": 0,
19745 "lsb_mem_word_offset": 105,
19746 "field_name": "--instruction_address--",
19747 "enable_pfe": false
19748 },
19749 {
19750 "start_bit": 0,
19751 "field_width": 1,
19752 "lsb_mem_word_idx": 0,
19753 "source": "next_table",
19754 "msb_mem_word_idx": 0,
19755 "lsb_mem_word_offset": 104,
19756 "field_name": "--next_table--",
19757 "enable_pfe": false
19758 }
19759 ]
19760 },
19761 {
19762 "entry_number": 12,
19763 "fields": [
19764 {
19765 "start_bit": 0,
19766 "field_width": 3,
19767 "lsb_mem_word_idx": 0,
19768 "source": "zero",
19769 "msb_mem_word_idx": 0,
19770 "lsb_mem_word_offset": 101,
19771 "field_name": "--padding--",
19772 "enable_pfe": false
19773 },
19774 {
19775 "start_bit": 0,
19776 "field_width": 4,
19777 "lsb_mem_word_idx": 0,
19778 "source": "instr",
19779 "msb_mem_word_idx": 0,
19780 "lsb_mem_word_offset": 97,
19781 "field_name": "--instruction_address--",
19782 "enable_pfe": false
19783 },
19784 {
19785 "start_bit": 0,
19786 "field_width": 1,
19787 "lsb_mem_word_idx": 0,
19788 "source": "next_table",
19789 "msb_mem_word_idx": 0,
19790 "lsb_mem_word_offset": 96,
19791 "field_name": "--next_table--",
19792 "enable_pfe": false
19793 }
19794 ]
19795 },
19796 {
19797 "entry_number": 11,
19798 "fields": [
19799 {
19800 "start_bit": 0,
19801 "field_width": 3,
19802 "lsb_mem_word_idx": 0,
19803 "source": "zero",
19804 "msb_mem_word_idx": 0,
19805 "lsb_mem_word_offset": 93,
19806 "field_name": "--padding--",
19807 "enable_pfe": false
19808 },
19809 {
19810 "start_bit": 0,
19811 "field_width": 4,
19812 "lsb_mem_word_idx": 0,
19813 "source": "instr",
19814 "msb_mem_word_idx": 0,
19815 "lsb_mem_word_offset": 89,
19816 "field_name": "--instruction_address--",
19817 "enable_pfe": false
19818 },
19819 {
19820 "start_bit": 0,
19821 "field_width": 1,
19822 "lsb_mem_word_idx": 0,
19823 "source": "next_table",
19824 "msb_mem_word_idx": 0,
19825 "lsb_mem_word_offset": 88,
19826 "field_name": "--next_table--",
19827 "enable_pfe": false
19828 }
19829 ]
19830 },
19831 {
19832 "entry_number": 10,
19833 "fields": [
19834 {
19835 "start_bit": 0,
19836 "field_width": 3,
19837 "lsb_mem_word_idx": 0,
19838 "source": "zero",
19839 "msb_mem_word_idx": 0,
19840 "lsb_mem_word_offset": 85,
19841 "field_name": "--padding--",
19842 "enable_pfe": false
19843 },
19844 {
19845 "start_bit": 0,
19846 "field_width": 4,
19847 "lsb_mem_word_idx": 0,
19848 "source": "instr",
19849 "msb_mem_word_idx": 0,
19850 "lsb_mem_word_offset": 81,
19851 "field_name": "--instruction_address--",
19852 "enable_pfe": false
19853 },
19854 {
19855 "start_bit": 0,
19856 "field_width": 1,
19857 "lsb_mem_word_idx": 0,
19858 "source": "next_table",
19859 "msb_mem_word_idx": 0,
19860 "lsb_mem_word_offset": 80,
19861 "field_name": "--next_table--",
19862 "enable_pfe": false
19863 }
19864 ]
19865 },
19866 {
19867 "entry_number": 9,
19868 "fields": [
19869 {
19870 "start_bit": 0,
19871 "field_width": 3,
19872 "lsb_mem_word_idx": 0,
19873 "source": "zero",
19874 "msb_mem_word_idx": 0,
19875 "lsb_mem_word_offset": 77,
19876 "field_name": "--padding--",
19877 "enable_pfe": false
19878 },
19879 {
19880 "start_bit": 0,
19881 "field_width": 4,
19882 "lsb_mem_word_idx": 0,
19883 "source": "instr",
19884 "msb_mem_word_idx": 0,
19885 "lsb_mem_word_offset": 73,
19886 "field_name": "--instruction_address--",
19887 "enable_pfe": false
19888 },
19889 {
19890 "start_bit": 0,
19891 "field_width": 1,
19892 "lsb_mem_word_idx": 0,
19893 "source": "next_table",
19894 "msb_mem_word_idx": 0,
19895 "lsb_mem_word_offset": 72,
19896 "field_name": "--next_table--",
19897 "enable_pfe": false
19898 }
19899 ]
19900 },
19901 {
19902 "entry_number": 8,
19903 "fields": [
19904 {
19905 "start_bit": 0,
19906 "field_width": 3,
19907 "lsb_mem_word_idx": 0,
19908 "source": "zero",
19909 "msb_mem_word_idx": 0,
19910 "lsb_mem_word_offset": 69,
19911 "field_name": "--padding--",
19912 "enable_pfe": false
19913 },
19914 {
19915 "start_bit": 0,
19916 "field_width": 4,
19917 "lsb_mem_word_idx": 0,
19918 "source": "instr",
19919 "msb_mem_word_idx": 0,
19920 "lsb_mem_word_offset": 65,
19921 "field_name": "--instruction_address--",
19922 "enable_pfe": false
19923 },
19924 {
19925 "start_bit": 0,
19926 "field_width": 1,
19927 "lsb_mem_word_idx": 0,
19928 "source": "next_table",
19929 "msb_mem_word_idx": 0,
19930 "lsb_mem_word_offset": 64,
19931 "field_name": "--next_table--",
19932 "enable_pfe": false
19933 }
19934 ]
19935 },
19936 {
19937 "entry_number": 7,
19938 "fields": [
19939 {
19940 "start_bit": 0,
19941 "field_width": 3,
19942 "lsb_mem_word_idx": 0,
19943 "source": "zero",
19944 "msb_mem_word_idx": 0,
19945 "lsb_mem_word_offset": 61,
19946 "field_name": "--padding--",
19947 "enable_pfe": false
19948 },
19949 {
19950 "start_bit": 0,
19951 "field_width": 4,
19952 "lsb_mem_word_idx": 0,
19953 "source": "instr",
19954 "msb_mem_word_idx": 0,
19955 "lsb_mem_word_offset": 57,
19956 "field_name": "--instruction_address--",
19957 "enable_pfe": false
19958 },
19959 {
19960 "start_bit": 0,
19961 "field_width": 1,
19962 "lsb_mem_word_idx": 0,
19963 "source": "next_table",
19964 "msb_mem_word_idx": 0,
19965 "lsb_mem_word_offset": 56,
19966 "field_name": "--next_table--",
19967 "enable_pfe": false
19968 }
19969 ]
19970 },
19971 {
19972 "entry_number": 6,
19973 "fields": [
19974 {
19975 "start_bit": 0,
19976 "field_width": 3,
19977 "lsb_mem_word_idx": 0,
19978 "source": "zero",
19979 "msb_mem_word_idx": 0,
19980 "lsb_mem_word_offset": 53,
19981 "field_name": "--padding--",
19982 "enable_pfe": false
19983 },
19984 {
19985 "start_bit": 0,
19986 "field_width": 4,
19987 "lsb_mem_word_idx": 0,
19988 "source": "instr",
19989 "msb_mem_word_idx": 0,
19990 "lsb_mem_word_offset": 49,
19991 "field_name": "--instruction_address--",
19992 "enable_pfe": false
19993 },
19994 {
19995 "start_bit": 0,
19996 "field_width": 1,
19997 "lsb_mem_word_idx": 0,
19998 "source": "next_table",
19999 "msb_mem_word_idx": 0,
20000 "lsb_mem_word_offset": 48,
20001 "field_name": "--next_table--",
20002 "enable_pfe": false
20003 }
20004 ]
20005 },
20006 {
20007 "entry_number": 5,
20008 "fields": [
20009 {
20010 "start_bit": 0,
20011 "field_width": 3,
20012 "lsb_mem_word_idx": 0,
20013 "source": "zero",
20014 "msb_mem_word_idx": 0,
20015 "lsb_mem_word_offset": 45,
20016 "field_name": "--padding--",
20017 "enable_pfe": false
20018 },
20019 {
20020 "start_bit": 0,
20021 "field_width": 4,
20022 "lsb_mem_word_idx": 0,
20023 "source": "instr",
20024 "msb_mem_word_idx": 0,
20025 "lsb_mem_word_offset": 41,
20026 "field_name": "--instruction_address--",
20027 "enable_pfe": false
20028 },
20029 {
20030 "start_bit": 0,
20031 "field_width": 1,
20032 "lsb_mem_word_idx": 0,
20033 "source": "next_table",
20034 "msb_mem_word_idx": 0,
20035 "lsb_mem_word_offset": 40,
20036 "field_name": "--next_table--",
20037 "enable_pfe": false
20038 }
20039 ]
20040 },
20041 {
20042 "entry_number": 4,
20043 "fields": [
20044 {
20045 "start_bit": 0,
20046 "field_width": 3,
20047 "lsb_mem_word_idx": 0,
20048 "source": "zero",
20049 "msb_mem_word_idx": 0,
20050 "lsb_mem_word_offset": 37,
20051 "field_name": "--padding--",
20052 "enable_pfe": false
20053 },
20054 {
20055 "start_bit": 0,
20056 "field_width": 4,
20057 "lsb_mem_word_idx": 0,
20058 "source": "instr",
20059 "msb_mem_word_idx": 0,
20060 "lsb_mem_word_offset": 33,
20061 "field_name": "--instruction_address--",
20062 "enable_pfe": false
20063 },
20064 {
20065 "start_bit": 0,
20066 "field_width": 1,
20067 "lsb_mem_word_idx": 0,
20068 "source": "next_table",
20069 "msb_mem_word_idx": 0,
20070 "lsb_mem_word_offset": 32,
20071 "field_name": "--next_table--",
20072 "enable_pfe": false
20073 }
20074 ]
20075 },
20076 {
20077 "entry_number": 3,
20078 "fields": [
20079 {
20080 "start_bit": 0,
20081 "field_width": 3,
20082 "lsb_mem_word_idx": 0,
20083 "source": "zero",
20084 "msb_mem_word_idx": 0,
20085 "lsb_mem_word_offset": 29,
20086 "field_name": "--padding--",
20087 "enable_pfe": false
20088 },
20089 {
20090 "start_bit": 0,
20091 "field_width": 4,
20092 "lsb_mem_word_idx": 0,
20093 "source": "instr",
20094 "msb_mem_word_idx": 0,
20095 "lsb_mem_word_offset": 25,
20096 "field_name": "--instruction_address--",
20097 "enable_pfe": false
20098 },
20099 {
20100 "start_bit": 0,
20101 "field_width": 1,
20102 "lsb_mem_word_idx": 0,
20103 "source": "next_table",
20104 "msb_mem_word_idx": 0,
20105 "lsb_mem_word_offset": 24,
20106 "field_name": "--next_table--",
20107 "enable_pfe": false
20108 }
20109 ]
20110 },
20111 {
20112 "entry_number": 2,
20113 "fields": [
20114 {
20115 "start_bit": 0,
20116 "field_width": 3,
20117 "lsb_mem_word_idx": 0,
20118 "source": "zero",
20119 "msb_mem_word_idx": 0,
20120 "lsb_mem_word_offset": 21,
20121 "field_name": "--padding--",
20122 "enable_pfe": false
20123 },
20124 {
20125 "start_bit": 0,
20126 "field_width": 4,
20127 "lsb_mem_word_idx": 0,
20128 "source": "instr",
20129 "msb_mem_word_idx": 0,
20130 "lsb_mem_word_offset": 17,
20131 "field_name": "--instruction_address--",
20132 "enable_pfe": false
20133 },
20134 {
20135 "start_bit": 0,
20136 "field_width": 1,
20137 "lsb_mem_word_idx": 0,
20138 "source": "next_table",
20139 "msb_mem_word_idx": 0,
20140 "lsb_mem_word_offset": 16,
20141 "field_name": "--next_table--",
20142 "enable_pfe": false
20143 }
20144 ]
20145 },
20146 {
20147 "entry_number": 1,
20148 "fields": [
20149 {
20150 "start_bit": 0,
20151 "field_width": 3,
20152 "lsb_mem_word_idx": 0,
20153 "source": "zero",
20154 "msb_mem_word_idx": 0,
20155 "lsb_mem_word_offset": 13,
20156 "field_name": "--padding--",
20157 "enable_pfe": false
20158 },
20159 {
20160 "start_bit": 0,
20161 "field_width": 4,
20162 "lsb_mem_word_idx": 0,
20163 "source": "instr",
20164 "msb_mem_word_idx": 0,
20165 "lsb_mem_word_offset": 9,
20166 "field_name": "--instruction_address--",
20167 "enable_pfe": false
20168 },
20169 {
20170 "start_bit": 0,
20171 "field_width": 1,
20172 "lsb_mem_word_idx": 0,
20173 "source": "next_table",
20174 "msb_mem_word_idx": 0,
20175 "lsb_mem_word_offset": 8,
20176 "field_name": "--next_table--",
20177 "enable_pfe": false
20178 }
20179 ]
20180 },
20181 {
20182 "entry_number": 0,
20183 "fields": [
20184 {
20185 "start_bit": 0,
20186 "field_width": 3,
20187 "lsb_mem_word_idx": 0,
20188 "source": "zero",
20189 "msb_mem_word_idx": 0,
20190 "lsb_mem_word_offset": 5,
20191 "field_name": "--padding--",
20192 "enable_pfe": false
20193 },
20194 {
20195 "start_bit": 0,
20196 "field_width": 4,
20197 "lsb_mem_word_idx": 0,
20198 "source": "instr",
20199 "msb_mem_word_idx": 0,
20200 "lsb_mem_word_offset": 1,
20201 "field_name": "--instruction_address--",
20202 "enable_pfe": false
20203 },
20204 {
20205 "start_bit": 0,
20206 "field_width": 1,
20207 "lsb_mem_word_idx": 0,
20208 "source": "next_table",
20209 "msb_mem_word_idx": 0,
20210 "lsb_mem_word_offset": 0,
20211 "field_name": "--next_table--",
20212 "enable_pfe": false
20213 }
20214 ]
20215 }
20216 ],
20217 "table_word_width": 128,
20218 "number_memory_units_per_table_word": 1
20219 }
20220 ],
20221 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070020222 "stage_number": 0,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020223 "stage_table_type": "ternary_indirection",
20224 "size": 16384
20225 },
20226 "result_physical_buses": [
20227 0
20228 ],
20229 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070020230 "stage_number": 0,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020231 "stage_table_type": "ternary_match",
20232 "size": 512
20233 }
20234 ],
20235 "match_type": "ternary"
20236 },
20237 "stateful_table_refs": [],
20238 "default_next_table_mask": 1,
20239 "selection_table_refs": [],
20240 "action_data_table_refs": [
20241 {
20242 "how_referenced": "direct",
Brian O'Connora6862e02017-09-08 01:17:39 -070020243 "handle": 33554436,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020244 "name": "table0__action__"
20245 }
20246 ],
20247 "match_key_fields": [
20248 {
20249 "bit_width": 9,
20250 "match_type": "ternary",
20251 "start_bit": 0,
20252 "position": 0,
20253 "bit_width_full": 9,
20254 "name": "ig_intr_md_ingress_port"
20255 },
20256 {
20257 "bit_width": 48,
20258 "match_type": "ternary",
20259 "start_bit": 0,
20260 "position": 1,
20261 "bit_width_full": 48,
20262 "name": "ethernet_dstAddr"
20263 },
20264 {
20265 "bit_width": 48,
20266 "match_type": "ternary",
20267 "start_bit": 0,
20268 "position": 2,
20269 "bit_width_full": 48,
20270 "name": "ethernet_srcAddr"
20271 },
20272 {
20273 "bit_width": 16,
20274 "match_type": "ternary",
20275 "start_bit": 0,
20276 "position": 3,
20277 "bit_width_full": 16,
20278 "name": "ethernet_etherType"
20279 }
20280 ],
20281 "size": 512
20282 },
20283 {
20284 "direction": "ingress",
Brian O'Connora6862e02017-09-08 01:17:39 -070020285 "handle": 33554437,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020286 "name": "ecmp_group_table__action__",
20287 "table_type": "action",
20288 "stage_tables": [
20289 {
20290 "memory_resource_allocation": null,
20291 "pack_format": [
20292 {
20293 "entries_per_table_word": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070020294 "action_handle": 536870932,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020295 "memory_word_width": 128,
20296 "table_word_width": 128,
20297 "entries": [
20298 {
20299 "entry_number": 0,
20300 "fields": [
20301 {
20302 "start_bit": 0,
20303 "field_width": 0,
20304 "lsb_mem_word_idx": 1,
20305 "source": "zero",
20306 "lsb_mem_word_offset": 0,
20307 "field_name": "--padding--"
20308 }
20309 ]
20310 }
20311 ],
20312 "number_memory_units_per_table_word": 1
20313 }
20314 ],
20315 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070020316 "stage_number": 1,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020317 "stage_table_type": "action_data",
20318 "size": 0
20319 }
20320 ],
20321 "actions": [
20322 {
20323 "p4_parameters": [
20324 {
20325 "position": 0,
20326 "name": "port",
20327 "start_bit": 0,
20328 "bit_width": 9
20329 }
20330 ],
Brian O'Connora6862e02017-09-08 01:17:39 -070020331 "handle": 536870932,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020332 "name": "set_egress_port",
20333 "indirect_resources": [],
20334 "override_stat_full_addr": 0,
20335 "override_meter_addr_pfe": false,
20336 "allowed_as_default_action": true,
20337 "override_stat_addr_pfe": false,
20338 "override_stateful_addr_pfe": false,
20339 "override_meter_full_addr": 0,
20340 "override_stat_addr": false,
20341 "override_stateful_addr": false,
20342 "override_stateful_full_addr": 0,
20343 "override_meter_addr": false
20344 }
20345 ],
20346 "how_referenced": "direct",
20347 "size": 1024
20348 },
20349 {
20350 "direction": "ingress",
Brian O'Connora6862e02017-09-08 01:17:39 -070020351 "handle": 16777221,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020352 "name": "ecmp_group_table",
20353 "is_resource_controllable": true,
20354 "table_type": "match",
20355 "ap_bind_indirect_res_to_match": [],
20356 "statistics_table_refs": [
20357 {
20358 "how_referenced": "direct",
20359 "handle": 67108868,
20360 "name": "ecmp_group_table_counter"
20361 }
20362 ],
20363 "actions": [
20364 {
20365 "p4_parameters": [
20366 {
20367 "position": 0,
20368 "name": "port",
20369 "start_bit": 0,
20370 "bit_width": 9
20371 }
20372 ],
Brian O'Connora6862e02017-09-08 01:17:39 -070020373 "handle": 536870932,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020374 "name": "set_egress_port",
20375 "indirect_resources": [],
20376 "override_stat_full_addr": 0,
20377 "override_meter_addr_pfe": false,
20378 "allowed_as_default_action": true,
20379 "override_stat_addr_pfe": false,
20380 "override_stateful_addr_pfe": false,
20381 "override_meter_full_addr": 0,
20382 "override_stat_addr": false,
20383 "override_stateful_addr": false,
20384 "override_stateful_full_addr": 0,
20385 "override_meter_addr": false
20386 }
20387 ],
20388 "meter_table_refs": [],
20389 "uses_range": false,
20390 "match_attributes": {
20391 "stage_tables": [
20392 {
Brian O'Connora6862e02017-09-08 01:17:39 -070020393 "default_next_table": 32,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020394 "action_format": [
20395 {
20396 "vliw_instruction_full": 65,
20397 "next_table": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070020398 "next_table_full": 32,
20399 "action_handle": 536870932,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020400 "action_name": "set_egress_port",
20401 "table_name": "_condition_2",
20402 "immediate_fields": [
20403 {
20404 "param_name": "port",
20405 "dest_start": 0,
20406 "param_type": "parameter",
20407 "param_shift": 0,
20408 "dest_width": 9
20409 }
20410 ],
20411 "vliw_instruction": 0
20412 }
20413 ],
20414 "memory_resource_allocation": null,
20415 "pack_format": [
20416 {
20417 "memory_word_width": 128,
20418 "entries_per_table_word": 1,
20419 "table_word_width": 128,
20420 "number_memory_units_per_table_word": 1
20421 }
20422 ],
20423 "hash_functions": [
20424 {
20425 "hash_function_number": 0,
20426 "hash_bits": [
20427 {
20428 "hash_bit": 0,
20429 "seed": 0,
20430 "bits_to_xor": [
20431 {
20432 "hash_match_group_bit": 0,
20433 "field_name": "ecmp_metadata_selector",
20434 "field_bit": 0,
20435 "hash_match_group": 0
20436 },
20437 {
20438 "hash_match_group_bit": 10,
20439 "field_name": "ecmp_metadata_selector",
20440 "field_bit": 10,
20441 "hash_match_group": 0
20442 },
20443 {
20444 "hash_match_group_bit": 15,
20445 "field_name": "ecmp_metadata_selector",
20446 "field_bit": 15,
20447 "hash_match_group": 0
20448 },
20449 {
20450 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020451 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020452 "field_bit": 0,
20453 "hash_match_group": 0
20454 },
20455 {
20456 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020457 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020458 "field_bit": 3,
20459 "hash_match_group": 0
20460 },
20461 {
20462 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020463 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020464 "field_bit": 5,
20465 "hash_match_group": 0
20466 },
20467 {
20468 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020469 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020470 "field_bit": 7,
20471 "hash_match_group": 0
20472 },
20473 {
20474 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020475 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020476 "field_bit": 9,
20477 "hash_match_group": 0
20478 },
20479 {
20480 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020481 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020482 "field_bit": 10,
20483 "hash_match_group": 0
20484 },
20485 {
20486 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020487 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020488 "field_bit": 11,
20489 "hash_match_group": 0
20490 },
20491 {
20492 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020493 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020494 "field_bit": 12,
20495 "hash_match_group": 0
20496 },
20497 {
20498 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020499 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020500 "field_bit": 13,
20501 "hash_match_group": 0
20502 },
20503 {
20504 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020505 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020506 "field_bit": 15,
20507 "hash_match_group": 0
20508 }
20509 ]
20510 },
20511 {
20512 "hash_bit": 1,
20513 "seed": 0,
20514 "bits_to_xor": [
20515 {
20516 "hash_match_group_bit": 1,
20517 "field_name": "ecmp_metadata_selector",
20518 "field_bit": 1,
20519 "hash_match_group": 0
20520 },
20521 {
20522 "hash_match_group_bit": 13,
20523 "field_name": "ecmp_metadata_selector",
20524 "field_bit": 13,
20525 "hash_match_group": 0
20526 },
20527 {
20528 "hash_match_group_bit": 15,
20529 "field_name": "ecmp_metadata_selector",
20530 "field_bit": 15,
20531 "hash_match_group": 0
20532 },
20533 {
20534 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020535 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020536 "field_bit": 0,
20537 "hash_match_group": 0
20538 },
20539 {
20540 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020541 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020542 "field_bit": 1,
20543 "hash_match_group": 0
20544 },
20545 {
20546 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020547 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020548 "field_bit": 4,
20549 "hash_match_group": 0
20550 },
20551 {
20552 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020553 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020554 "field_bit": 6,
20555 "hash_match_group": 0
20556 },
20557 {
20558 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020559 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020560 "field_bit": 7,
20561 "hash_match_group": 0
20562 },
20563 {
20564 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020565 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020566 "field_bit": 14,
20567 "hash_match_group": 0
20568 },
20569 {
20570 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020571 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020572 "field_bit": 15,
20573 "hash_match_group": 0
20574 }
20575 ]
20576 },
20577 {
20578 "hash_bit": 2,
20579 "seed": 1,
20580 "bits_to_xor": [
20581 {
20582 "hash_match_group_bit": 2,
20583 "field_name": "ecmp_metadata_selector",
20584 "field_bit": 2,
20585 "hash_match_group": 0
20586 },
20587 {
20588 "hash_match_group_bit": 10,
20589 "field_name": "ecmp_metadata_selector",
20590 "field_bit": 10,
20591 "hash_match_group": 0
20592 },
20593 {
20594 "hash_match_group_bit": 12,
20595 "field_name": "ecmp_metadata_selector",
20596 "field_bit": 12,
20597 "hash_match_group": 0
20598 },
20599 {
20600 "hash_match_group_bit": 14,
20601 "field_name": "ecmp_metadata_selector",
20602 "field_bit": 14,
20603 "hash_match_group": 0
20604 },
20605 {
20606 "hash_match_group_bit": 15,
20607 "field_name": "ecmp_metadata_selector",
20608 "field_bit": 15,
20609 "hash_match_group": 0
20610 },
20611 {
20612 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020613 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020614 "field_bit": 2,
20615 "hash_match_group": 0
20616 },
20617 {
20618 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020619 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020620 "field_bit": 3,
20621 "hash_match_group": 0
20622 },
20623 {
20624 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020625 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020626 "field_bit": 4,
20627 "hash_match_group": 0
20628 },
20629 {
20630 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020631 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020632 "field_bit": 6,
20633 "hash_match_group": 0
20634 },
20635 {
20636 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020637 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020638 "field_bit": 7,
20639 "hash_match_group": 0
20640 },
20641 {
20642 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020643 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020644 "field_bit": 9,
20645 "hash_match_group": 0
20646 },
20647 {
20648 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020649 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020650 "field_bit": 10,
20651 "hash_match_group": 0
20652 },
20653 {
20654 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020655 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020656 "field_bit": 13,
20657 "hash_match_group": 0
20658 }
20659 ]
20660 },
20661 {
20662 "hash_bit": 3,
20663 "seed": 1,
20664 "bits_to_xor": [
20665 {
20666 "hash_match_group_bit": 3,
20667 "field_name": "ecmp_metadata_selector",
20668 "field_bit": 3,
20669 "hash_match_group": 0
20670 },
20671 {
20672 "hash_match_group_bit": 11,
20673 "field_name": "ecmp_metadata_selector",
20674 "field_bit": 11,
20675 "hash_match_group": 0
20676 },
20677 {
20678 "hash_match_group_bit": 12,
20679 "field_name": "ecmp_metadata_selector",
20680 "field_bit": 12,
20681 "hash_match_group": 0
20682 },
20683 {
20684 "hash_match_group_bit": 13,
20685 "field_name": "ecmp_metadata_selector",
20686 "field_bit": 13,
20687 "hash_match_group": 0
20688 },
20689 {
20690 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020691 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020692 "field_bit": 4,
20693 "hash_match_group": 0
20694 },
20695 {
20696 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020697 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020698 "field_bit": 6,
20699 "hash_match_group": 0
20700 },
20701 {
20702 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020703 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020704 "field_bit": 7,
20705 "hash_match_group": 0
20706 },
20707 {
20708 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020709 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020710 "field_bit": 11,
20711 "hash_match_group": 0
20712 },
20713 {
20714 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020715 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020716 "field_bit": 12,
20717 "hash_match_group": 0
20718 },
20719 {
20720 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020721 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020722 "field_bit": 13,
20723 "hash_match_group": 0
20724 },
20725 {
20726 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020727 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020728 "field_bit": 14,
20729 "hash_match_group": 0
20730 }
20731 ]
20732 },
20733 {
20734 "hash_bit": 4,
20735 "seed": 0,
20736 "bits_to_xor": [
20737 {
20738 "hash_match_group_bit": 4,
20739 "field_name": "ecmp_metadata_selector",
20740 "field_bit": 4,
20741 "hash_match_group": 0
20742 },
20743 {
20744 "hash_match_group_bit": 11,
20745 "field_name": "ecmp_metadata_selector",
20746 "field_bit": 11,
20747 "hash_match_group": 0
20748 },
20749 {
20750 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020751 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020752 "field_bit": 2,
20753 "hash_match_group": 0
20754 },
20755 {
20756 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020757 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020758 "field_bit": 3,
20759 "hash_match_group": 0
20760 },
20761 {
20762 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020763 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020764 "field_bit": 4,
20765 "hash_match_group": 0
20766 },
20767 {
20768 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020769 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020770 "field_bit": 6,
20771 "hash_match_group": 0
20772 },
20773 {
20774 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020775 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020776 "field_bit": 7,
20777 "hash_match_group": 0
20778 },
20779 {
20780 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020781 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020782 "field_bit": 10,
20783 "hash_match_group": 0
20784 },
20785 {
20786 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020787 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020788 "field_bit": 12,
20789 "hash_match_group": 0
20790 },
20791 {
20792 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020793 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020794 "field_bit": 13,
20795 "hash_match_group": 0
20796 },
20797 {
20798 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020799 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020800 "field_bit": 14,
20801 "hash_match_group": 0
20802 },
20803 {
20804 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020805 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020806 "field_bit": 15,
20807 "hash_match_group": 0
20808 }
20809 ]
20810 },
20811 {
20812 "hash_bit": 5,
20813 "seed": 1,
20814 "bits_to_xor": [
20815 {
20816 "hash_match_group_bit": 5,
20817 "field_name": "ecmp_metadata_selector",
20818 "field_bit": 5,
20819 "hash_match_group": 0
20820 },
20821 {
20822 "hash_match_group_bit": 10,
20823 "field_name": "ecmp_metadata_selector",
20824 "field_bit": 10,
20825 "hash_match_group": 0
20826 },
20827 {
20828 "hash_match_group_bit": 13,
20829 "field_name": "ecmp_metadata_selector",
20830 "field_bit": 13,
20831 "hash_match_group": 0
20832 },
20833 {
20834 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020835 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020836 "field_bit": 1,
20837 "hash_match_group": 0
20838 },
20839 {
20840 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020841 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020842 "field_bit": 2,
20843 "hash_match_group": 0
20844 },
20845 {
20846 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020847 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020848 "field_bit": 3,
20849 "hash_match_group": 0
20850 },
20851 {
20852 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020853 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020854 "field_bit": 12,
20855 "hash_match_group": 0
20856 },
20857 {
20858 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020859 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020860 "field_bit": 15,
20861 "hash_match_group": 0
20862 }
20863 ]
20864 },
20865 {
20866 "hash_bit": 6,
20867 "seed": 0,
20868 "bits_to_xor": [
20869 {
20870 "hash_match_group_bit": 6,
20871 "field_name": "ecmp_metadata_selector",
20872 "field_bit": 6,
20873 "hash_match_group": 0
20874 },
20875 {
20876 "hash_match_group_bit": 10,
20877 "field_name": "ecmp_metadata_selector",
20878 "field_bit": 10,
20879 "hash_match_group": 0
20880 },
20881 {
20882 "hash_match_group_bit": 12,
20883 "field_name": "ecmp_metadata_selector",
20884 "field_bit": 12,
20885 "hash_match_group": 0
20886 },
20887 {
20888 "hash_match_group_bit": 13,
20889 "field_name": "ecmp_metadata_selector",
20890 "field_bit": 13,
20891 "hash_match_group": 0
20892 },
20893 {
20894 "hash_match_group_bit": 14,
20895 "field_name": "ecmp_metadata_selector",
20896 "field_bit": 14,
20897 "hash_match_group": 0
20898 },
20899 {
20900 "hash_match_group_bit": 15,
20901 "field_name": "ecmp_metadata_selector",
20902 "field_bit": 15,
20903 "hash_match_group": 0
20904 },
20905 {
20906 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020907 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020908 "field_bit": 1,
20909 "hash_match_group": 0
20910 },
20911 {
20912 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020913 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020914 "field_bit": 2,
20915 "hash_match_group": 0
20916 },
20917 {
20918 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020919 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020920 "field_bit": 3,
20921 "hash_match_group": 0
20922 },
20923 {
20924 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020925 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020926 "field_bit": 4,
20927 "hash_match_group": 0
20928 },
20929 {
20930 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020931 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020932 "field_bit": 5,
20933 "hash_match_group": 0
20934 },
20935 {
20936 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020937 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020938 "field_bit": 9,
20939 "hash_match_group": 0
20940 },
20941 {
20942 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020943 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020944 "field_bit": 10,
20945 "hash_match_group": 0
20946 },
20947 {
20948 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020949 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020950 "field_bit": 11,
20951 "hash_match_group": 0
20952 },
20953 {
20954 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020955 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020956 "field_bit": 15,
20957 "hash_match_group": 0
20958 }
20959 ]
20960 },
20961 {
20962 "hash_bit": 7,
20963 "seed": 1,
20964 "bits_to_xor": [
20965 {
20966 "hash_match_group_bit": 7,
20967 "field_name": "ecmp_metadata_selector",
20968 "field_bit": 7,
20969 "hash_match_group": 0
20970 },
20971 {
20972 "hash_match_group_bit": 10,
20973 "field_name": "ecmp_metadata_selector",
20974 "field_bit": 10,
20975 "hash_match_group": 0
20976 },
20977 {
20978 "hash_match_group_bit": 11,
20979 "field_name": "ecmp_metadata_selector",
20980 "field_bit": 11,
20981 "hash_match_group": 0
20982 },
20983 {
20984 "hash_match_group_bit": 15,
20985 "field_name": "ecmp_metadata_selector",
20986 "field_bit": 15,
20987 "hash_match_group": 0
20988 },
20989 {
20990 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020991 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020992 "field_bit": 0,
20993 "hash_match_group": 0
20994 },
20995 {
20996 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020020997 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020020998 "field_bit": 2,
20999 "hash_match_group": 0
21000 },
21001 {
21002 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021003 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021004 "field_bit": 3,
21005 "hash_match_group": 0
21006 },
21007 {
21008 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021009 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021010 "field_bit": 4,
21011 "hash_match_group": 0
21012 },
21013 {
21014 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021015 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021016 "field_bit": 5,
21017 "hash_match_group": 0
21018 },
21019 {
21020 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021021 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021022 "field_bit": 6,
21023 "hash_match_group": 0
21024 },
21025 {
21026 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021027 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021028 "field_bit": 10,
21029 "hash_match_group": 0
21030 }
21031 ]
21032 },
21033 {
21034 "hash_bit": 8,
21035 "seed": 1,
21036 "bits_to_xor": [
21037 {
21038 "hash_match_group_bit": 8,
21039 "field_name": "ecmp_metadata_selector",
21040 "field_bit": 8,
21041 "hash_match_group": 0
21042 },
21043 {
21044 "hash_match_group_bit": 11,
21045 "field_name": "ecmp_metadata_selector",
21046 "field_bit": 11,
21047 "hash_match_group": 0
21048 },
21049 {
21050 "hash_match_group_bit": 12,
21051 "field_name": "ecmp_metadata_selector",
21052 "field_bit": 12,
21053 "hash_match_group": 0
21054 },
21055 {
21056 "hash_match_group_bit": 13,
21057 "field_name": "ecmp_metadata_selector",
21058 "field_bit": 13,
21059 "hash_match_group": 0
21060 },
21061 {
21062 "hash_match_group_bit": 14,
21063 "field_name": "ecmp_metadata_selector",
21064 "field_bit": 14,
21065 "hash_match_group": 0
21066 },
21067 {
21068 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021069 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021070 "field_bit": 1,
21071 "hash_match_group": 0
21072 },
21073 {
21074 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021075 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021076 "field_bit": 4,
21077 "hash_match_group": 0
21078 },
21079 {
21080 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021081 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021082 "field_bit": 14,
21083 "hash_match_group": 0
21084 }
21085 ]
21086 },
21087 {
21088 "hash_bit": 9,
21089 "seed": 0,
21090 "bits_to_xor": [
21091 {
21092 "hash_match_group_bit": 9,
21093 "field_name": "ecmp_metadata_selector",
21094 "field_bit": 9,
21095 "hash_match_group": 0
21096 },
21097 {
21098 "hash_match_group_bit": 10,
21099 "field_name": "ecmp_metadata_selector",
21100 "field_bit": 10,
21101 "hash_match_group": 0
21102 },
21103 {
21104 "hash_match_group_bit": 11,
21105 "field_name": "ecmp_metadata_selector",
21106 "field_bit": 11,
21107 "hash_match_group": 0
21108 },
21109 {
21110 "hash_match_group_bit": 13,
21111 "field_name": "ecmp_metadata_selector",
21112 "field_bit": 13,
21113 "hash_match_group": 0
21114 },
21115 {
21116 "hash_match_group_bit": 14,
21117 "field_name": "ecmp_metadata_selector",
21118 "field_bit": 14,
21119 "hash_match_group": 0
21120 },
21121 {
21122 "hash_match_group_bit": 15,
21123 "field_name": "ecmp_metadata_selector",
21124 "field_bit": 15,
21125 "hash_match_group": 0
21126 },
21127 {
21128 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021129 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021130 "field_bit": 4,
21131 "hash_match_group": 0
21132 },
21133 {
21134 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021135 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021136 "field_bit": 5,
21137 "hash_match_group": 0
21138 },
21139 {
21140 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021141 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021142 "field_bit": 8,
21143 "hash_match_group": 0
21144 },
21145 {
21146 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021147 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021148 "field_bit": 13,
21149 "hash_match_group": 0
21150 }
21151 ]
21152 },
21153 {
21154 "hash_bit": 10,
21155 "seed": 1,
21156 "bits_to_xor": [
21157 {
21158 "hash_match_group_bit": 9,
21159 "field_name": "ecmp_metadata_selector",
21160 "field_bit": 9,
21161 "hash_match_group": 0
21162 },
21163 {
21164 "hash_match_group_bit": 11,
21165 "field_name": "ecmp_metadata_selector",
21166 "field_bit": 11,
21167 "hash_match_group": 0
21168 },
21169 {
21170 "hash_match_group_bit": 12,
21171 "field_name": "ecmp_metadata_selector",
21172 "field_bit": 12,
21173 "hash_match_group": 0
21174 },
21175 {
21176 "hash_match_group_bit": 13,
21177 "field_name": "ecmp_metadata_selector",
21178 "field_bit": 13,
21179 "hash_match_group": 0
21180 },
21181 {
21182 "hash_match_group_bit": 14,
21183 "field_name": "ecmp_metadata_selector",
21184 "field_bit": 14,
21185 "hash_match_group": 0
21186 },
21187 {
21188 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021189 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021190 "field_bit": 4,
21191 "hash_match_group": 0
21192 },
21193 {
21194 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021195 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021196 "field_bit": 5,
21197 "hash_match_group": 0
21198 },
21199 {
21200 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021201 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021202 "field_bit": 6,
21203 "hash_match_group": 0
21204 },
21205 {
21206 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021207 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021208 "field_bit": 7,
21209 "hash_match_group": 0
21210 },
21211 {
21212 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021213 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021214 "field_bit": 8,
21215 "hash_match_group": 0
21216 },
21217 {
21218 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021219 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021220 "field_bit": 9,
21221 "hash_match_group": 0
21222 },
21223 {
21224 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021225 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021226 "field_bit": 10,
21227 "hash_match_group": 0
21228 },
21229 {
21230 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021231 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021232 "field_bit": 11,
21233 "hash_match_group": 0
21234 },
21235 {
21236 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021237 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021238 "field_bit": 12,
21239 "hash_match_group": 0
21240 },
21241 {
21242 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021243 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021244 "field_bit": 13,
21245 "hash_match_group": 0
21246 },
21247 {
21248 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021249 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021250 "field_bit": 14,
21251 "hash_match_group": 0
21252 }
21253 ]
21254 },
21255 {
21256 "hash_bit": 11,
21257 "seed": 1,
21258 "bits_to_xor": [
21259 {
21260 "hash_match_group_bit": 0,
21261 "field_name": "ecmp_metadata_selector",
21262 "field_bit": 0,
21263 "hash_match_group": 0
21264 },
21265 {
21266 "hash_match_group_bit": 10,
21267 "field_name": "ecmp_metadata_selector",
21268 "field_bit": 10,
21269 "hash_match_group": 0
21270 },
21271 {
21272 "hash_match_group_bit": 11,
21273 "field_name": "ecmp_metadata_selector",
21274 "field_bit": 11,
21275 "hash_match_group": 0
21276 },
21277 {
21278 "hash_match_group_bit": 12,
21279 "field_name": "ecmp_metadata_selector",
21280 "field_bit": 12,
21281 "hash_match_group": 0
21282 },
21283 {
21284 "hash_match_group_bit": 14,
21285 "field_name": "ecmp_metadata_selector",
21286 "field_bit": 14,
21287 "hash_match_group": 0
21288 },
21289 {
21290 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021291 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021292 "field_bit": 2,
21293 "hash_match_group": 0
21294 },
21295 {
21296 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021297 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021298 "field_bit": 4,
21299 "hash_match_group": 0
21300 },
21301 {
21302 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021303 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021304 "field_bit": 6,
21305 "hash_match_group": 0
21306 },
21307 {
21308 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021309 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021310 "field_bit": 10,
21311 "hash_match_group": 0
21312 },
21313 {
21314 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021315 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021316 "field_bit": 12,
21317 "hash_match_group": 0
21318 }
21319 ]
21320 },
21321 {
21322 "hash_bit": 12,
21323 "seed": 0,
21324 "bits_to_xor": [
21325 {
21326 "hash_match_group_bit": 1,
21327 "field_name": "ecmp_metadata_selector",
21328 "field_bit": 1,
21329 "hash_match_group": 0
21330 },
21331 {
21332 "hash_match_group_bit": 10,
21333 "field_name": "ecmp_metadata_selector",
21334 "field_bit": 10,
21335 "hash_match_group": 0
21336 },
21337 {
21338 "hash_match_group_bit": 12,
21339 "field_name": "ecmp_metadata_selector",
21340 "field_bit": 12,
21341 "hash_match_group": 0
21342 },
21343 {
21344 "hash_match_group_bit": 15,
21345 "field_name": "ecmp_metadata_selector",
21346 "field_bit": 15,
21347 "hash_match_group": 0
21348 },
21349 {
21350 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021351 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021352 "field_bit": 1,
21353 "hash_match_group": 0
21354 },
21355 {
21356 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021357 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021358 "field_bit": 5,
21359 "hash_match_group": 0
21360 },
21361 {
21362 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021363 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021364 "field_bit": 6,
21365 "hash_match_group": 0
21366 },
21367 {
21368 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021369 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021370 "field_bit": 8,
21371 "hash_match_group": 0
21372 },
21373 {
21374 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021375 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021376 "field_bit": 9,
21377 "hash_match_group": 0
21378 },
21379 {
21380 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021381 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021382 "field_bit": 13,
21383 "hash_match_group": 0
21384 },
21385 {
21386 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021387 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021388 "field_bit": 14,
21389 "hash_match_group": 0
21390 }
21391 ]
21392 },
21393 {
21394 "hash_bit": 13,
21395 "seed": 0,
21396 "bits_to_xor": [
21397 {
21398 "hash_match_group_bit": 2,
21399 "field_name": "ecmp_metadata_selector",
21400 "field_bit": 2,
21401 "hash_match_group": 0
21402 },
21403 {
21404 "hash_match_group_bit": 10,
21405 "field_name": "ecmp_metadata_selector",
21406 "field_bit": 10,
21407 "hash_match_group": 0
21408 },
21409 {
21410 "hash_match_group_bit": 12,
21411 "field_name": "ecmp_metadata_selector",
21412 "field_bit": 12,
21413 "hash_match_group": 0
21414 },
21415 {
21416 "hash_match_group_bit": 13,
21417 "field_name": "ecmp_metadata_selector",
21418 "field_bit": 13,
21419 "hash_match_group": 0
21420 },
21421 {
21422 "hash_match_group_bit": 15,
21423 "field_name": "ecmp_metadata_selector",
21424 "field_bit": 15,
21425 "hash_match_group": 0
21426 },
21427 {
21428 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021429 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021430 "field_bit": 0,
21431 "hash_match_group": 0
21432 },
21433 {
21434 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021435 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021436 "field_bit": 1,
21437 "hash_match_group": 0
21438 },
21439 {
21440 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021441 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021442 "field_bit": 2,
21443 "hash_match_group": 0
21444 },
21445 {
21446 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021447 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021448 "field_bit": 6,
21449 "hash_match_group": 0
21450 },
21451 {
21452 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021453 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021454 "field_bit": 12,
21455 "hash_match_group": 0
21456 },
21457 {
21458 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021459 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021460 "field_bit": 13,
21461 "hash_match_group": 0
21462 }
21463 ]
21464 },
21465 {
21466 "hash_bit": 14,
21467 "seed": 0,
21468 "bits_to_xor": [
21469 {
21470 "hash_match_group_bit": 3,
21471 "field_name": "ecmp_metadata_selector",
21472 "field_bit": 3,
21473 "hash_match_group": 0
21474 },
21475 {
21476 "hash_match_group_bit": 10,
21477 "field_name": "ecmp_metadata_selector",
21478 "field_bit": 10,
21479 "hash_match_group": 0
21480 },
21481 {
21482 "hash_match_group_bit": 11,
21483 "field_name": "ecmp_metadata_selector",
21484 "field_bit": 11,
21485 "hash_match_group": 0
21486 },
21487 {
21488 "hash_match_group_bit": 12,
21489 "field_name": "ecmp_metadata_selector",
21490 "field_bit": 12,
21491 "hash_match_group": 0
21492 },
21493 {
21494 "hash_match_group_bit": 13,
21495 "field_name": "ecmp_metadata_selector",
21496 "field_bit": 13,
21497 "hash_match_group": 0
21498 },
21499 {
21500 "hash_match_group_bit": 14,
21501 "field_name": "ecmp_metadata_selector",
21502 "field_bit": 14,
21503 "hash_match_group": 0
21504 },
21505 {
21506 "hash_match_group_bit": 15,
21507 "field_name": "ecmp_metadata_selector",
21508 "field_bit": 15,
21509 "hash_match_group": 0
21510 },
21511 {
21512 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021513 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021514 "field_bit": 0,
21515 "hash_match_group": 0
21516 },
21517 {
21518 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021519 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021520 "field_bit": 2,
21521 "hash_match_group": 0
21522 },
21523 {
21524 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021525 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021526 "field_bit": 5,
21527 "hash_match_group": 0
21528 },
21529 {
21530 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021531 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021532 "field_bit": 7,
21533 "hash_match_group": 0
21534 },
21535 {
21536 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021537 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021538 "field_bit": 9,
21539 "hash_match_group": 0
21540 },
21541 {
21542 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021543 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021544 "field_bit": 11,
21545 "hash_match_group": 0
21546 },
21547 {
21548 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021549 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021550 "field_bit": 13,
21551 "hash_match_group": 0
21552 },
21553 {
21554 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021555 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021556 "field_bit": 15,
21557 "hash_match_group": 0
21558 }
21559 ]
21560 },
21561 {
21562 "hash_bit": 15,
21563 "seed": 1,
21564 "bits_to_xor": [
21565 {
21566 "hash_match_group_bit": 4,
21567 "field_name": "ecmp_metadata_selector",
21568 "field_bit": 4,
21569 "hash_match_group": 0
21570 },
21571 {
21572 "hash_match_group_bit": 11,
21573 "field_name": "ecmp_metadata_selector",
21574 "field_bit": 11,
21575 "hash_match_group": 0
21576 },
21577 {
21578 "hash_match_group_bit": 14,
21579 "field_name": "ecmp_metadata_selector",
21580 "field_bit": 14,
21581 "hash_match_group": 0
21582 },
21583 {
21584 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021585 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021586 "field_bit": 1,
21587 "hash_match_group": 0
21588 },
21589 {
21590 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021591 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021592 "field_bit": 2,
21593 "hash_match_group": 0
21594 },
21595 {
21596 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021597 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021598 "field_bit": 3,
21599 "hash_match_group": 0
21600 },
21601 {
21602 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021603 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021604 "field_bit": 5,
21605 "hash_match_group": 0
21606 },
21607 {
21608 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021609 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021610 "field_bit": 6,
21611 "hash_match_group": 0
21612 },
21613 {
21614 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021615 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021616 "field_bit": 7,
21617 "hash_match_group": 0
21618 },
21619 {
21620 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021621 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021622 "field_bit": 10,
21623 "hash_match_group": 0
21624 },
21625 {
21626 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021627 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021628 "field_bit": 15,
21629 "hash_match_group": 0
21630 }
21631 ]
21632 },
21633 {
21634 "hash_bit": 16,
21635 "seed": 0,
21636 "bits_to_xor": [
21637 {
21638 "hash_match_group_bit": 5,
21639 "field_name": "ecmp_metadata_selector",
21640 "field_bit": 5,
21641 "hash_match_group": 0
21642 },
21643 {
21644 "hash_match_group_bit": 10,
21645 "field_name": "ecmp_metadata_selector",
21646 "field_bit": 10,
21647 "hash_match_group": 0
21648 },
21649 {
21650 "hash_match_group_bit": 12,
21651 "field_name": "ecmp_metadata_selector",
21652 "field_bit": 12,
21653 "hash_match_group": 0
21654 },
21655 {
21656 "hash_match_group_bit": 13,
21657 "field_name": "ecmp_metadata_selector",
21658 "field_bit": 13,
21659 "hash_match_group": 0
21660 },
21661 {
21662 "hash_match_group_bit": 15,
21663 "field_name": "ecmp_metadata_selector",
21664 "field_bit": 15,
21665 "hash_match_group": 0
21666 },
21667 {
21668 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021669 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021670 "field_bit": 0,
21671 "hash_match_group": 0
21672 },
21673 {
21674 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021675 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021676 "field_bit": 4,
21677 "hash_match_group": 0
21678 },
21679 {
21680 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021681 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021682 "field_bit": 5,
21683 "hash_match_group": 0
21684 },
21685 {
21686 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021687 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021688 "field_bit": 6,
21689 "hash_match_group": 0
21690 },
21691 {
21692 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021693 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021694 "field_bit": 7,
21695 "hash_match_group": 0
21696 },
21697 {
21698 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021699 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021700 "field_bit": 8,
21701 "hash_match_group": 0
21702 },
21703 {
21704 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021705 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021706 "field_bit": 9,
21707 "hash_match_group": 0
21708 },
21709 {
21710 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021711 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021712 "field_bit": 12,
21713 "hash_match_group": 0
21714 },
21715 {
21716 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021717 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021718 "field_bit": 15,
21719 "hash_match_group": 0
21720 }
21721 ]
21722 },
21723 {
21724 "hash_bit": 17,
21725 "seed": 0,
21726 "bits_to_xor": [
21727 {
21728 "hash_match_group_bit": 6,
21729 "field_name": "ecmp_metadata_selector",
21730 "field_bit": 6,
21731 "hash_match_group": 0
21732 },
21733 {
21734 "hash_match_group_bit": 10,
21735 "field_name": "ecmp_metadata_selector",
21736 "field_bit": 10,
21737 "hash_match_group": 0
21738 },
21739 {
21740 "hash_match_group_bit": 12,
21741 "field_name": "ecmp_metadata_selector",
21742 "field_bit": 12,
21743 "hash_match_group": 0
21744 },
21745 {
21746 "hash_match_group_bit": 13,
21747 "field_name": "ecmp_metadata_selector",
21748 "field_bit": 13,
21749 "hash_match_group": 0
21750 },
21751 {
21752 "hash_match_group_bit": 15,
21753 "field_name": "ecmp_metadata_selector",
21754 "field_bit": 15,
21755 "hash_match_group": 0
21756 },
21757 {
21758 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021759 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021760 "field_bit": 0,
21761 "hash_match_group": 0
21762 },
21763 {
21764 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021765 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021766 "field_bit": 1,
21767 "hash_match_group": 0
21768 },
21769 {
21770 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021771 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021772 "field_bit": 2,
21773 "hash_match_group": 0
21774 },
21775 {
21776 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021777 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021778 "field_bit": 4,
21779 "hash_match_group": 0
21780 },
21781 {
21782 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021783 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021784 "field_bit": 6,
21785 "hash_match_group": 0
21786 },
21787 {
21788 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021789 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021790 "field_bit": 7,
21791 "hash_match_group": 0
21792 },
21793 {
21794 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021795 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021796 "field_bit": 8,
21797 "hash_match_group": 0
21798 },
21799 {
21800 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021801 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021802 "field_bit": 11,
21803 "hash_match_group": 0
21804 },
21805 {
21806 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021807 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021808 "field_bit": 12,
21809 "hash_match_group": 0
21810 }
21811 ]
21812 },
21813 {
21814 "hash_bit": 18,
21815 "seed": 0,
21816 "bits_to_xor": [
21817 {
21818 "hash_match_group_bit": 7,
21819 "field_name": "ecmp_metadata_selector",
21820 "field_bit": 7,
21821 "hash_match_group": 0
21822 },
21823 {
21824 "hash_match_group_bit": 10,
21825 "field_name": "ecmp_metadata_selector",
21826 "field_bit": 10,
21827 "hash_match_group": 0
21828 },
21829 {
21830 "hash_match_group_bit": 11,
21831 "field_name": "ecmp_metadata_selector",
21832 "field_bit": 11,
21833 "hash_match_group": 0
21834 },
21835 {
21836 "hash_match_group_bit": 13,
21837 "field_name": "ecmp_metadata_selector",
21838 "field_bit": 13,
21839 "hash_match_group": 0
21840 },
21841 {
21842 "hash_match_group_bit": 14,
21843 "field_name": "ecmp_metadata_selector",
21844 "field_bit": 14,
21845 "hash_match_group": 0
21846 },
21847 {
21848 "hash_match_group_bit": 15,
21849 "field_name": "ecmp_metadata_selector",
21850 "field_bit": 15,
21851 "hash_match_group": 0
21852 },
21853 {
21854 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021855 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021856 "field_bit": 1,
21857 "hash_match_group": 0
21858 },
21859 {
21860 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021861 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021862 "field_bit": 5,
21863 "hash_match_group": 0
21864 },
21865 {
21866 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021867 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021868 "field_bit": 6,
21869 "hash_match_group": 0
21870 },
21871 {
21872 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021873 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021874 "field_bit": 8,
21875 "hash_match_group": 0
21876 },
21877 {
21878 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021879 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021880 "field_bit": 9,
21881 "hash_match_group": 0
21882 },
21883 {
21884 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021885 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021886 "field_bit": 12,
21887 "hash_match_group": 0
21888 }
21889 ]
21890 },
21891 {
21892 "hash_bit": 19,
21893 "seed": 1,
21894 "bits_to_xor": [
21895 {
21896 "hash_match_group_bit": 8,
21897 "field_name": "ecmp_metadata_selector",
21898 "field_bit": 8,
21899 "hash_match_group": 0
21900 },
21901 {
21902 "hash_match_group_bit": 11,
21903 "field_name": "ecmp_metadata_selector",
21904 "field_bit": 11,
21905 "hash_match_group": 0
21906 },
21907 {
21908 "hash_match_group_bit": 13,
21909 "field_name": "ecmp_metadata_selector",
21910 "field_bit": 13,
21911 "hash_match_group": 0
21912 },
21913 {
21914 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021915 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021916 "field_bit": 1,
21917 "hash_match_group": 0
21918 },
21919 {
21920 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021921 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021922 "field_bit": 4,
21923 "hash_match_group": 0
21924 },
21925 {
21926 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021927 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021928 "field_bit": 9,
21929 "hash_match_group": 0
21930 },
21931 {
21932 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021933 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021934 "field_bit": 10,
21935 "hash_match_group": 0
21936 },
21937 {
21938 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021939 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021940 "field_bit": 12,
21941 "hash_match_group": 0
21942 }
21943 ]
21944 },
21945 {
21946 "hash_bit": 20,
21947 "seed": 1,
21948 "bits_to_xor": [
21949 {
21950 "hash_match_group_bit": 8,
21951 "field_name": "ecmp_metadata_selector",
21952 "field_bit": 8,
21953 "hash_match_group": 0
21954 },
21955 {
21956 "hash_match_group_bit": 10,
21957 "field_name": "ecmp_metadata_selector",
21958 "field_bit": 10,
21959 "hash_match_group": 0
21960 },
21961 {
21962 "hash_match_group_bit": 14,
21963 "field_name": "ecmp_metadata_selector",
21964 "field_bit": 14,
21965 "hash_match_group": 0
21966 },
21967 {
21968 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021969 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021970 "field_bit": 5,
21971 "hash_match_group": 0
21972 },
21973 {
21974 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021975 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021976 "field_bit": 6,
21977 "hash_match_group": 0
21978 },
21979 {
21980 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021981 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021982 "field_bit": 7,
21983 "hash_match_group": 0
21984 },
21985 {
21986 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021987 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021988 "field_bit": 9,
21989 "hash_match_group": 0
21990 },
21991 {
21992 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021993 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020021994 "field_bit": 10,
21995 "hash_match_group": 0
21996 },
21997 {
21998 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020021999 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022000 "field_bit": 11,
22001 "hash_match_group": 0
22002 },
22003 {
22004 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022005 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022006 "field_bit": 12,
22007 "hash_match_group": 0
22008 },
22009 {
22010 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022011 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022012 "field_bit": 13,
22013 "hash_match_group": 0
22014 },
22015 {
22016 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022017 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022018 "field_bit": 14,
22019 "hash_match_group": 0
22020 },
22021 {
22022 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022023 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022024 "field_bit": 15,
22025 "hash_match_group": 0
22026 }
22027 ]
22028 },
22029 {
22030 "hash_bit": 21,
22031 "seed": 1,
22032 "bits_to_xor": [
22033 {
22034 "hash_match_group_bit": 9,
22035 "field_name": "ecmp_metadata_selector",
22036 "field_bit": 9,
22037 "hash_match_group": 0
22038 },
22039 {
22040 "hash_match_group_bit": 10,
22041 "field_name": "ecmp_metadata_selector",
22042 "field_bit": 10,
22043 "hash_match_group": 0
22044 },
22045 {
22046 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022047 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022048 "field_bit": 0,
22049 "hash_match_group": 0
22050 },
22051 {
22052 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022053 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022054 "field_bit": 4,
22055 "hash_match_group": 0
22056 },
22057 {
22058 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022059 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022060 "field_bit": 6,
22061 "hash_match_group": 0
22062 },
22063 {
22064 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022065 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022066 "field_bit": 7,
22067 "hash_match_group": 0
22068 },
22069 {
22070 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022071 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022072 "field_bit": 8,
22073 "hash_match_group": 0
22074 },
22075 {
22076 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022077 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022078 "field_bit": 10,
22079 "hash_match_group": 0
22080 },
22081 {
22082 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022083 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022084 "field_bit": 13,
22085 "hash_match_group": 0
22086 },
22087 {
22088 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022089 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022090 "field_bit": 14,
22091 "hash_match_group": 0
22092 }
22093 ]
22094 },
22095 {
22096 "hash_bit": 22,
22097 "seed": 0,
22098 "bits_to_xor": [
22099 {
22100 "hash_match_group_bit": 0,
22101 "field_name": "ecmp_metadata_selector",
22102 "field_bit": 0,
22103 "hash_match_group": 0
22104 },
22105 {
22106 "hash_match_group_bit": 10,
22107 "field_name": "ecmp_metadata_selector",
22108 "field_bit": 10,
22109 "hash_match_group": 0
22110 },
22111 {
22112 "hash_match_group_bit": 15,
22113 "field_name": "ecmp_metadata_selector",
22114 "field_bit": 15,
22115 "hash_match_group": 0
22116 },
22117 {
22118 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022119 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022120 "field_bit": 0,
22121 "hash_match_group": 0
22122 },
22123 {
22124 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022125 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022126 "field_bit": 1,
22127 "hash_match_group": 0
22128 },
22129 {
22130 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022131 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022132 "field_bit": 4,
22133 "hash_match_group": 0
22134 },
22135 {
22136 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022137 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022138 "field_bit": 5,
22139 "hash_match_group": 0
22140 },
22141 {
22142 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022143 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022144 "field_bit": 10,
22145 "hash_match_group": 0
22146 },
22147 {
22148 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022149 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022150 "field_bit": 13,
22151 "hash_match_group": 0
22152 },
22153 {
22154 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022155 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022156 "field_bit": 15,
22157 "hash_match_group": 0
22158 }
22159 ]
22160 },
22161 {
22162 "hash_bit": 23,
22163 "seed": 1,
22164 "bits_to_xor": [
22165 {
22166 "hash_match_group_bit": 1,
22167 "field_name": "ecmp_metadata_selector",
22168 "field_bit": 1,
22169 "hash_match_group": 0
22170 },
22171 {
22172 "hash_match_group_bit": 10,
22173 "field_name": "ecmp_metadata_selector",
22174 "field_bit": 10,
22175 "hash_match_group": 0
22176 },
22177 {
22178 "hash_match_group_bit": 11,
22179 "field_name": "ecmp_metadata_selector",
22180 "field_bit": 11,
22181 "hash_match_group": 0
22182 },
22183 {
22184 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022185 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022186 "field_bit": 2,
22187 "hash_match_group": 0
22188 },
22189 {
22190 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022191 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022192 "field_bit": 3,
22193 "hash_match_group": 0
22194 },
22195 {
22196 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022197 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022198 "field_bit": 4,
22199 "hash_match_group": 0
22200 },
22201 {
22202 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022203 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022204 "field_bit": 5,
22205 "hash_match_group": 0
22206 },
22207 {
22208 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022209 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022210 "field_bit": 6,
22211 "hash_match_group": 0
22212 },
22213 {
22214 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022215 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022216 "field_bit": 9,
22217 "hash_match_group": 0
22218 },
22219 {
22220 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022221 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022222 "field_bit": 10,
22223 "hash_match_group": 0
22224 },
22225 {
22226 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022227 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022228 "field_bit": 11,
22229 "hash_match_group": 0
22230 }
22231 ]
22232 },
22233 {
22234 "hash_bit": 24,
22235 "seed": 1,
22236 "bits_to_xor": [
22237 {
22238 "hash_match_group_bit": 2,
22239 "field_name": "ecmp_metadata_selector",
22240 "field_bit": 2,
22241 "hash_match_group": 0
22242 },
22243 {
22244 "hash_match_group_bit": 10,
22245 "field_name": "ecmp_metadata_selector",
22246 "field_bit": 10,
22247 "hash_match_group": 0
22248 },
22249 {
22250 "hash_match_group_bit": 11,
22251 "field_name": "ecmp_metadata_selector",
22252 "field_bit": 11,
22253 "hash_match_group": 0
22254 },
22255 {
22256 "hash_match_group_bit": 14,
22257 "field_name": "ecmp_metadata_selector",
22258 "field_bit": 14,
22259 "hash_match_group": 0
22260 },
22261 {
22262 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022263 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022264 "field_bit": 0,
22265 "hash_match_group": 0
22266 },
22267 {
22268 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022269 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022270 "field_bit": 2,
22271 "hash_match_group": 0
22272 },
22273 {
22274 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022275 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022276 "field_bit": 3,
22277 "hash_match_group": 0
22278 },
22279 {
22280 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022281 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022282 "field_bit": 7,
22283 "hash_match_group": 0
22284 },
22285 {
22286 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022287 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022288 "field_bit": 8,
22289 "hash_match_group": 0
22290 },
22291 {
22292 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022293 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022294 "field_bit": 9,
22295 "hash_match_group": 0
22296 },
22297 {
22298 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022299 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022300 "field_bit": 10,
22301 "hash_match_group": 0
22302 },
22303 {
22304 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022305 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022306 "field_bit": 11,
22307 "hash_match_group": 0
22308 },
22309 {
22310 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022311 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022312 "field_bit": 13,
22313 "hash_match_group": 0
22314 },
22315 {
22316 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022317 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022318 "field_bit": 14,
22319 "hash_match_group": 0
22320 }
22321 ]
22322 },
22323 {
22324 "hash_bit": 25,
22325 "seed": 1,
22326 "bits_to_xor": [
22327 {
22328 "hash_match_group_bit": 3,
22329 "field_name": "ecmp_metadata_selector",
22330 "field_bit": 3,
22331 "hash_match_group": 0
22332 },
22333 {
22334 "hash_match_group_bit": 10,
22335 "field_name": "ecmp_metadata_selector",
22336 "field_bit": 10,
22337 "hash_match_group": 0
22338 },
22339 {
22340 "hash_match_group_bit": 11,
22341 "field_name": "ecmp_metadata_selector",
22342 "field_bit": 11,
22343 "hash_match_group": 0
22344 },
22345 {
22346 "hash_match_group_bit": 13,
22347 "field_name": "ecmp_metadata_selector",
22348 "field_bit": 13,
22349 "hash_match_group": 0
22350 },
22351 {
22352 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022353 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022354 "field_bit": 1,
22355 "hash_match_group": 0
22356 },
22357 {
22358 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022359 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022360 "field_bit": 6,
22361 "hash_match_group": 0
22362 },
22363 {
22364 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022365 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022366 "field_bit": 7,
22367 "hash_match_group": 0
22368 },
22369 {
22370 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022371 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022372 "field_bit": 8,
22373 "hash_match_group": 0
22374 },
22375 {
22376 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022377 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022378 "field_bit": 11,
22379 "hash_match_group": 0
22380 },
22381 {
22382 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022383 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022384 "field_bit": 12,
22385 "hash_match_group": 0
22386 },
22387 {
22388 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022389 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022390 "field_bit": 13,
22391 "hash_match_group": 0
22392 },
22393 {
22394 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022395 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022396 "field_bit": 14,
22397 "hash_match_group": 0
22398 },
22399 {
22400 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022401 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022402 "field_bit": 15,
22403 "hash_match_group": 0
22404 }
22405 ]
22406 },
22407 {
22408 "hash_bit": 26,
22409 "seed": 1,
22410 "bits_to_xor": [
22411 {
22412 "hash_match_group_bit": 4,
22413 "field_name": "ecmp_metadata_selector",
22414 "field_bit": 4,
22415 "hash_match_group": 0
22416 },
22417 {
22418 "hash_match_group_bit": 12,
22419 "field_name": "ecmp_metadata_selector",
22420 "field_bit": 12,
22421 "hash_match_group": 0
22422 },
22423 {
22424 "hash_match_group_bit": 14,
22425 "field_name": "ecmp_metadata_selector",
22426 "field_bit": 14,
22427 "hash_match_group": 0
22428 },
22429 {
22430 "hash_match_group_bit": 15,
22431 "field_name": "ecmp_metadata_selector",
22432 "field_bit": 15,
22433 "hash_match_group": 0
22434 },
22435 {
22436 "hash_match_group_bit": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022437 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022438 "field_bit": 0,
22439 "hash_match_group": 0
22440 },
22441 {
22442 "hash_match_group_bit": 17,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022443 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022444 "field_bit": 1,
22445 "hash_match_group": 0
22446 },
22447 {
22448 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022449 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022450 "field_bit": 2,
22451 "hash_match_group": 0
22452 },
22453 {
22454 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022455 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022456 "field_bit": 4,
22457 "hash_match_group": 0
22458 },
22459 {
22460 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022461 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022462 "field_bit": 8,
22463 "hash_match_group": 0
22464 },
22465 {
22466 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022467 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022468 "field_bit": 11,
22469 "hash_match_group": 0
22470 },
22471 {
22472 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022473 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022474 "field_bit": 12,
22475 "hash_match_group": 0
22476 },
22477 {
22478 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022479 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022480 "field_bit": 13,
22481 "hash_match_group": 0
22482 },
22483 {
22484 "hash_match_group_bit": 30,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022485 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022486 "field_bit": 14,
22487 "hash_match_group": 0
22488 },
22489 {
22490 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022491 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022492 "field_bit": 15,
22493 "hash_match_group": 0
22494 }
22495 ]
22496 },
22497 {
22498 "hash_bit": 27,
22499 "seed": 0,
22500 "bits_to_xor": [
22501 {
22502 "hash_match_group_bit": 5,
22503 "field_name": "ecmp_metadata_selector",
22504 "field_bit": 5,
22505 "hash_match_group": 0
22506 },
22507 {
22508 "hash_match_group_bit": 11,
22509 "field_name": "ecmp_metadata_selector",
22510 "field_bit": 11,
22511 "hash_match_group": 0
22512 },
22513 {
22514 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022515 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022516 "field_bit": 2,
22517 "hash_match_group": 0
22518 },
22519 {
22520 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022521 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022522 "field_bit": 3,
22523 "hash_match_group": 0
22524 },
22525 {
22526 "hash_match_group_bit": 21,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022527 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022528 "field_bit": 5,
22529 "hash_match_group": 0
22530 },
22531 {
22532 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022533 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022534 "field_bit": 6,
22535 "hash_match_group": 0
22536 },
22537 {
22538 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022539 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022540 "field_bit": 9,
22541 "hash_match_group": 0
22542 },
22543 {
22544 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022545 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022546 "field_bit": 12,
22547 "hash_match_group": 0
22548 },
22549 {
22550 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022551 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022552 "field_bit": 13,
22553 "hash_match_group": 0
22554 }
22555 ]
22556 },
22557 {
22558 "hash_bit": 28,
22559 "seed": 1,
22560 "bits_to_xor": [
22561 {
22562 "hash_match_group_bit": 6,
22563 "field_name": "ecmp_metadata_selector",
22564 "field_bit": 6,
22565 "hash_match_group": 0
22566 },
22567 {
22568 "hash_match_group_bit": 10,
22569 "field_name": "ecmp_metadata_selector",
22570 "field_bit": 10,
22571 "hash_match_group": 0
22572 },
22573 {
22574 "hash_match_group_bit": 12,
22575 "field_name": "ecmp_metadata_selector",
22576 "field_bit": 12,
22577 "hash_match_group": 0
22578 },
22579 {
22580 "hash_match_group_bit": 13,
22581 "field_name": "ecmp_metadata_selector",
22582 "field_bit": 13,
22583 "hash_match_group": 0
22584 },
22585 {
22586 "hash_match_group_bit": 14,
22587 "field_name": "ecmp_metadata_selector",
22588 "field_bit": 14,
22589 "hash_match_group": 0
22590 },
22591 {
22592 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022593 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022594 "field_bit": 2,
22595 "hash_match_group": 0
22596 },
22597 {
22598 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022599 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022600 "field_bit": 3,
22601 "hash_match_group": 0
22602 },
22603 {
22604 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022605 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022606 "field_bit": 4,
22607 "hash_match_group": 0
22608 },
22609 {
22610 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022611 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022612 "field_bit": 6,
22613 "hash_match_group": 0
22614 },
22615 {
22616 "hash_match_group_bit": 23,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022617 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022618 "field_bit": 7,
22619 "hash_match_group": 0
22620 },
22621 {
22622 "hash_match_group_bit": 24,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022623 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022624 "field_bit": 8,
22625 "hash_match_group": 0
22626 },
22627 {
22628 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022629 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022630 "field_bit": 9,
22631 "hash_match_group": 0
22632 },
22633 {
22634 "hash_match_group_bit": 26,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022635 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022636 "field_bit": 10,
22637 "hash_match_group": 0
22638 },
22639 {
22640 "hash_match_group_bit": 28,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022641 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022642 "field_bit": 12,
22643 "hash_match_group": 0
22644 },
22645 {
22646 "hash_match_group_bit": 29,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022647 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022648 "field_bit": 13,
22649 "hash_match_group": 0
22650 },
22651 {
22652 "hash_match_group_bit": 31,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022653 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022654 "field_bit": 15,
22655 "hash_match_group": 0
22656 }
22657 ]
22658 },
22659 {
22660 "hash_bit": 29,
22661 "seed": 0,
22662 "bits_to_xor": [
22663 {
22664 "hash_match_group_bit": 7,
22665 "field_name": "ecmp_metadata_selector",
22666 "field_bit": 7,
22667 "hash_match_group": 0
22668 },
22669 {
22670 "hash_match_group_bit": 11,
22671 "field_name": "ecmp_metadata_selector",
22672 "field_bit": 11,
22673 "hash_match_group": 0
22674 },
22675 {
22676 "hash_match_group_bit": 12,
22677 "field_name": "ecmp_metadata_selector",
22678 "field_bit": 12,
22679 "hash_match_group": 0
22680 },
22681 {
22682 "hash_match_group_bit": 13,
22683 "field_name": "ecmp_metadata_selector",
22684 "field_bit": 13,
22685 "hash_match_group": 0
22686 },
22687 {
22688 "hash_match_group_bit": 14,
22689 "field_name": "ecmp_metadata_selector",
22690 "field_bit": 14,
22691 "hash_match_group": 0
22692 },
22693 {
22694 "hash_match_group_bit": 15,
22695 "field_name": "ecmp_metadata_selector",
22696 "field_bit": 15,
22697 "hash_match_group": 0
22698 },
22699 {
22700 "hash_match_group_bit": 18,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022701 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022702 "field_bit": 2,
22703 "hash_match_group": 0
22704 },
22705 {
22706 "hash_match_group_bit": 19,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022707 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022708 "field_bit": 3,
22709 "hash_match_group": 0
22710 },
22711 {
22712 "hash_match_group_bit": 20,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022713 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022714 "field_bit": 4,
22715 "hash_match_group": 0
22716 },
22717 {
22718 "hash_match_group_bit": 22,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022719 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022720 "field_bit": 6,
22721 "hash_match_group": 0
22722 },
22723 {
22724 "hash_match_group_bit": 25,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022725 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022726 "field_bit": 9,
22727 "hash_match_group": 0
22728 },
22729 {
22730 "hash_match_group_bit": 27,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022731 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022732 "field_bit": 11,
22733 "hash_match_group": 0
22734 }
22735 ]
22736 }
22737 ]
22738 }
22739 ],
22740 "ways": [
22741 {
22742 "way_number": 0,
22743 "memory_resource_allocation": {
22744 "number_select_bits": 0,
22745 "hash_select_bit_hi": 40,
22746 "number_entry_bits": 10,
22747 "hash_entry_bit_lo": 0,
22748 "hash_select_bit_lo": 40,
22749 "hash_entry_bit_hi": 9,
22750 "memory_units_and_vpns": [
22751 {
22752 "memory_units": [
22753 86
22754 ],
22755 "vpns": [
22756 0
22757 ]
22758 }
22759 ],
22760 "hash_function_id": 0
22761 },
22762 "pack_format": [
22763 {
22764 "memory_word_width": 128,
22765 "entries_per_table_word": 1,
22766 "entries": [
22767 {
22768 "entry_number": 0,
22769 "fields": [
22770 {
22771 "start_bit": 0,
22772 "match_mode": "unused",
22773 "field_width": 4,
22774 "lsb_mem_word_idx": 0,
22775 "source": "version",
22776 "msb_mem_word_idx": 0,
22777 "lsb_mem_word_offset": 120,
22778 "field_name": "--version_valid--",
22779 "enable_pfe": false
22780 },
22781 {
22782 "start_bit": 10,
22783 "match_mode": "unused",
22784 "field_width": 6,
22785 "lsb_mem_word_idx": 0,
22786 "source": "spec",
22787 "msb_mem_word_idx": 0,
22788 "lsb_mem_word_offset": 34,
22789 "field_name": "ecmp_metadata_selector",
22790 "enable_pfe": false
22791 },
22792 {
22793 "start_bit": 0,
22794 "match_mode": "unused",
22795 "field_width": 16,
22796 "lsb_mem_word_idx": 0,
22797 "source": "spec",
22798 "msb_mem_word_idx": 0,
22799 "lsb_mem_word_offset": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022800 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022801 "enable_pfe": false
22802 },
22803 {
22804 "start_bit": 0,
22805 "match_mode": "unused",
22806 "field_width": 16,
22807 "lsb_mem_word_idx": 0,
22808 "source": "immediate",
22809 "immediate_name": "--immediate--",
22810 "msb_mem_word_idx": 0,
22811 "lsb_mem_word_offset": 0,
22812 "field_name": "--immediate--",
22813 "enable_pfe": false
22814 }
22815 ]
22816 }
22817 ],
22818 "table_word_width": 128,
22819 "number_memory_units_per_table_word": 1
22820 }
22821 ],
22822 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070022823 "stage_number": 1,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022824 "stage_table_type": "hash_way",
22825 "size": 1024
22826 },
22827 {
22828 "way_number": 1,
22829 "memory_resource_allocation": {
22830 "number_select_bits": 0,
22831 "hash_select_bit_hi": 40,
22832 "number_entry_bits": 10,
22833 "hash_entry_bit_lo": 10,
22834 "hash_select_bit_lo": 40,
22835 "hash_entry_bit_hi": 19,
22836 "memory_units_and_vpns": [
22837 {
22838 "memory_units": [
22839 87
22840 ],
22841 "vpns": [
22842 1
22843 ]
22844 }
22845 ],
22846 "hash_function_id": 0
22847 },
22848 "pack_format": [
22849 {
22850 "memory_word_width": 128,
22851 "entries_per_table_word": 1,
22852 "entries": [
22853 {
22854 "entry_number": 0,
22855 "fields": [
22856 {
22857 "start_bit": 0,
22858 "match_mode": "unused",
22859 "field_width": 4,
22860 "lsb_mem_word_idx": 0,
22861 "source": "version",
22862 "msb_mem_word_idx": 0,
22863 "lsb_mem_word_offset": 120,
22864 "field_name": "--version_valid--",
22865 "enable_pfe": false
22866 },
22867 {
22868 "start_bit": 10,
22869 "match_mode": "unused",
22870 "field_width": 6,
22871 "lsb_mem_word_idx": 0,
22872 "source": "spec",
22873 "msb_mem_word_idx": 0,
22874 "lsb_mem_word_offset": 34,
22875 "field_name": "ecmp_metadata_selector",
22876 "enable_pfe": false
22877 },
22878 {
22879 "start_bit": 0,
22880 "match_mode": "unused",
22881 "field_width": 16,
22882 "lsb_mem_word_idx": 0,
22883 "source": "spec",
22884 "msb_mem_word_idx": 0,
22885 "lsb_mem_word_offset": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022886 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022887 "enable_pfe": false
22888 },
22889 {
22890 "start_bit": 0,
22891 "match_mode": "unused",
22892 "field_width": 16,
22893 "lsb_mem_word_idx": 0,
22894 "source": "immediate",
22895 "immediate_name": "--immediate--",
22896 "msb_mem_word_idx": 0,
22897 "lsb_mem_word_offset": 0,
22898 "field_name": "--immediate--",
22899 "enable_pfe": false
22900 }
22901 ]
22902 }
22903 ],
22904 "table_word_width": 128,
22905 "number_memory_units_per_table_word": 1
22906 }
22907 ],
22908 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070022909 "stage_number": 1,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022910 "stage_table_type": "hash_way",
22911 "size": 1024
22912 },
22913 {
22914 "way_number": 2,
22915 "memory_resource_allocation": {
22916 "number_select_bits": 0,
22917 "hash_select_bit_hi": 40,
22918 "number_entry_bits": 10,
22919 "hash_entry_bit_lo": 20,
22920 "hash_select_bit_lo": 40,
22921 "hash_entry_bit_hi": 29,
22922 "memory_units_and_vpns": [
22923 {
22924 "memory_units": [
22925 88
22926 ],
22927 "vpns": [
22928 2
22929 ]
22930 }
22931 ],
22932 "hash_function_id": 0
22933 },
22934 "pack_format": [
22935 {
22936 "memory_word_width": 128,
22937 "entries_per_table_word": 1,
22938 "entries": [
22939 {
22940 "entry_number": 0,
22941 "fields": [
22942 {
22943 "start_bit": 0,
22944 "match_mode": "unused",
22945 "field_width": 4,
22946 "lsb_mem_word_idx": 0,
22947 "source": "version",
22948 "msb_mem_word_idx": 0,
22949 "lsb_mem_word_offset": 120,
22950 "field_name": "--version_valid--",
22951 "enable_pfe": false
22952 },
22953 {
22954 "start_bit": 10,
22955 "match_mode": "unused",
22956 "field_width": 6,
22957 "lsb_mem_word_idx": 0,
22958 "source": "spec",
22959 "msb_mem_word_idx": 0,
22960 "lsb_mem_word_offset": 34,
22961 "field_name": "ecmp_metadata_selector",
22962 "enable_pfe": false
22963 },
22964 {
22965 "start_bit": 0,
22966 "match_mode": "unused",
22967 "field_width": 16,
22968 "lsb_mem_word_idx": 0,
22969 "source": "spec",
22970 "msb_mem_word_idx": 0,
22971 "lsb_mem_word_offset": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020022972 "field_name": "ecmp_metadata_group_id",
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022973 "enable_pfe": false
22974 },
22975 {
22976 "start_bit": 0,
22977 "match_mode": "unused",
22978 "field_width": 16,
22979 "lsb_mem_word_idx": 0,
22980 "source": "immediate",
22981 "immediate_name": "--immediate--",
22982 "msb_mem_word_idx": 0,
22983 "lsb_mem_word_offset": 0,
22984 "field_name": "--immediate--",
22985 "enable_pfe": false
22986 }
22987 ]
22988 }
22989 ],
22990 "table_word_width": 128,
22991 "number_memory_units_per_table_word": 1
22992 }
22993 ],
22994 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070022995 "stage_number": 1,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020022996 "stage_table_type": "hash_way",
22997 "size": 1024
22998 }
22999 ],
23000 "result_physical_buses": [
23001 14
23002 ],
23003 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070023004 "stage_number": 1,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020023005 "stage_table_type": "hash_match",
23006 "size": 3072
23007 }
23008 ],
23009 "match_type": "exact",
23010 "uses_dynamic_key_masks": false
23011 },
23012 "stateful_table_refs": [],
23013 "default_next_table_mask": 0,
23014 "selection_table_refs": [],
23015 "action_data_table_refs": [],
23016 "match_key_fields": [
23017 {
23018 "bit_width": 16,
23019 "match_type": "exact",
23020 "start_bit": 0,
23021 "position": 0,
23022 "bit_width_full": 16,
Carmelo Cascone8aa05482017-09-12 13:21:59 +020023023 "name": "ecmp_metadata_group_id"
Carmelo Casconef1d0a422017-09-07 17:21:46 +020023024 },
23025 {
23026 "bit_width": 16,
23027 "match_type": "exact",
23028 "start_bit": 0,
23029 "position": 1,
23030 "bit_width_full": 16,
23031 "name": "ecmp_metadata_selector"
23032 }
23033 ],
23034 "size": 1024
23035 },
23036 {
23037 "direction": "ingress",
23038 "statistics_type": "packets",
23039 "handle": 67108865,
23040 "name": "ingress_port_counter",
23041 "byte_counter_resolution": 0,
23042 "table_type": "statistics",
23043 "stage_tables": [
23044 {
23045 "memory_resource_allocation": {
23046 "spare_bank_memory_unit": 55,
23047 "memory_units_and_vpns": [
23048 {
23049 "memory_units": [
23050 54
23051 ],
23052 "vpns": [
23053 0
23054 ]
23055 }
23056 ],
23057 "memory_type": "sram"
23058 },
23059 "pack_format": [
23060 {
23061 "memory_word_width": 128,
23062 "entries_per_table_word": 4,
23063 "table_word_width": 128,
23064 "number_memory_units_per_table_word": 1
23065 }
23066 ],
23067 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070023068 "stage_number": 2,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020023069 "stage_table_type": "statistics",
23070 "size": 4096
23071 }
23072 ],
23073 "enable_pfe": true,
23074 "packet_counter_resolution": 32,
23075 "pfe_bit_position": 19,
23076 "how_referenced": "indirect",
Carmelo Cascone6230a612017-09-13 03:25:41 +020023077 "size": 512
Carmelo Casconef1d0a422017-09-07 17:21:46 +020023078 },
23079 {
23080 "direction": "ingress",
23081 "statistics_type": "packets",
23082 "handle": 67108866,
23083 "name": "egress_port_counter",
23084 "byte_counter_resolution": 0,
23085 "table_type": "statistics",
23086 "stage_tables": [
23087 {
23088 "memory_resource_allocation": {
23089 "spare_bank_memory_unit": 79,
23090 "memory_units_and_vpns": [
23091 {
23092 "memory_units": [
23093 78
23094 ],
23095 "vpns": [
23096 0
23097 ]
23098 }
23099 ],
23100 "memory_type": "sram"
23101 },
23102 "pack_format": [
23103 {
23104 "memory_word_width": 128,
23105 "entries_per_table_word": 4,
23106 "table_word_width": 128,
23107 "number_memory_units_per_table_word": 1
23108 }
23109 ],
23110 "logical_table_id": 1,
Brian O'Connora6862e02017-09-08 01:17:39 -070023111 "stage_number": 2,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020023112 "stage_table_type": "statistics",
23113 "size": 4096
23114 }
23115 ],
23116 "enable_pfe": true,
23117 "packet_counter_resolution": 32,
23118 "pfe_bit_position": 19,
23119 "how_referenced": "indirect",
Carmelo Cascone6230a612017-09-13 03:25:41 +020023120 "size": 512
Carmelo Casconef1d0a422017-09-07 17:21:46 +020023121 },
23122 {
23123 "direction": "ingress",
23124 "statistics_type": "packets",
23125 "handle": 67108867,
23126 "name": "table0_counter",
23127 "byte_counter_resolution": 0,
23128 "table_type": "statistics",
23129 "stage_tables": [
23130 {
23131 "memory_resource_allocation": {
23132 "spare_bank_memory_unit": 79,
23133 "memory_units_and_vpns": [
23134 {
23135 "memory_units": [
23136 78
23137 ],
23138 "vpns": [
23139 0
23140 ]
23141 }
23142 ],
23143 "memory_type": "sram"
23144 },
23145 "pack_format": [
23146 {
23147 "memory_word_width": 128,
23148 "entries_per_table_word": 4,
23149 "table_word_width": 128,
23150 "number_memory_units_per_table_word": 1
23151 }
23152 ],
23153 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070023154 "stage_number": 0,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020023155 "stage_table_type": "statistics",
23156 "size": 4096
23157 }
23158 ],
23159 "enable_pfe": false,
23160 "packet_counter_resolution": 32,
23161 "pfe_bit_position": 19,
23162 "how_referenced": "direct",
23163 "size": 512
23164 },
23165 {
23166 "direction": "ingress",
23167 "statistics_type": "packets",
23168 "handle": 67108868,
23169 "name": "ecmp_group_table_counter",
23170 "byte_counter_resolution": 0,
23171 "table_type": "statistics",
23172 "stage_tables": [
23173 {
23174 "memory_resource_allocation": {
23175 "spare_bank_memory_unit": 79,
23176 "memory_units_and_vpns": [
23177 {
23178 "memory_units": [
23179 78
23180 ],
23181 "vpns": [
23182 0
23183 ]
23184 }
23185 ],
23186 "memory_type": "sram"
23187 },
23188 "pack_format": [
23189 {
23190 "memory_word_width": 128,
23191 "entries_per_table_word": 4,
23192 "table_word_width": 128,
23193 "number_memory_units_per_table_word": 1
23194 }
23195 ],
23196 "logical_table_id": 0,
Brian O'Connora6862e02017-09-08 01:17:39 -070023197 "stage_number": 1,
Carmelo Casconef1d0a422017-09-07 17:21:46 +020023198 "stage_table_type": "statistics",
23199 "size": 4096
23200 }
23201 ],
23202 "enable_pfe": false,
23203 "packet_counter_resolution": 32,
23204 "pfe_bit_position": 19,
23205 "how_referenced": "direct",
23206 "size": 1024
23207 }
23208 ],
23209 "parser": {
23210 "ingress": [],
23211 "egress": []
23212 },
23213 "learn_quanta": [],
23214 "program_name": "ecmp"
23215}