Added ethertype QinQ when double VLAN tagged packets

Double VLAN tagged packets in Mininet uses QinQ Ethertype.

Change-Id: I7c3fa5f1db1ade768e1d998185d9eadded9ebb81
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
index 10538ac..5a7432d 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
@@ -754,6 +754,18 @@
           "transitions" : [
             {
               "type" : "hexstr",
+              "value" : "0x88a8",
+              "mask" : null,
+              "next_state" : "parse_vlan_tag"
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x9100",
+              "mask" : null,
+              "next_state" : "parse_vlan_tag"
+            },
+            {
+              "type" : "hexstr",
               "value" : "0x8100",
               "mask" : null,
               "next_state" : "parse_vlan_tag"
@@ -829,18 +841,6 @@
               "next_state" : "parse_inner_vlan_tag"
             },
             {
-              "type" : "hexstr",
-              "value" : "0x88a8",
-              "mask" : null,
-              "next_state" : "parse_inner_vlan_tag"
-            },
-            {
-              "type" : "hexstr",
-              "value" : "0x9100",
-              "mask" : null,
-              "next_state" : "parse_inner_vlan_tag"
-            },
-            {
               "value" : "default",
               "mask" : null,
               "next_state" : null
@@ -2127,7 +2127,7 @@
       "binding" : "FabricEgress.egress_next.egress_vlan",
       "source_info" : {
         "filename" : "include/control/next.p4",
-        "line" : 309,
+        "line" : 310,
         "column" : 50,
         "source_fragment" : "egress_vlan_counter"
       }
@@ -14709,6 +14709,25 @@
             "column" : 31,
             "source_fragment" : "0x8100; ..."
           }
+        },
+        {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["ethernet", "eth_type"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x88a8"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/control/../define.p4",
+            "line" : 105,
+            "column" : 31,
+            "source_fragment" : "0x88A8; ..."
+          }
         }
       ]
     },
@@ -14731,7 +14750,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 312,
+            "line" : 313,
             "column" : 8,
             "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type; ..."
           }
@@ -14746,7 +14765,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 313,
+            "line" : 314,
             "column" : 8,
             "source_fragment" : "hdr.vlan_tag.setInvalid()"
           }
@@ -14836,7 +14855,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 334,
+            "line" : 335,
             "column" : 12,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -14918,7 +14937,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 350,
+            "line" : 351,
             "column" : 12,
             "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
           }
@@ -14940,7 +14959,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 367,
+            "line" : 368,
             "column" : 35,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -14989,7 +15008,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 366,
+            "line" : 367,
             "column" : 12,
             "source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
           }
@@ -15011,7 +15030,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 371,
+            "line" : 372,
             "column" : 39,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -15060,7 +15079,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 370,
+            "line" : 371,
             "column" : 16,
             "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
           }
@@ -15082,7 +15101,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 376,
+            "line" : 377,
             "column" : 45,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           }
@@ -15131,7 +15150,7 @@
           ],
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 375,
+            "line" : 376,
             "column" : 16,
             "source_fragment" : "hdr.ipv6.hop_limit = hdr.ipv6.hop_limit - 1"
           }
@@ -18525,7 +18544,7 @@
           "id" : 67,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 334,
+            "line" : 335,
             "column" : 12,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
@@ -18554,7 +18573,7 @@
           "id" : 68,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 338,
+            "line" : 339,
             "column" : 36,
             "source_fragment" : "pop_mpls_if_present()"
           },
@@ -18583,7 +18602,7 @@
           "id" : 69,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 340,
+            "line" : 341,
             "column" : 12,
             "source_fragment" : "set_mpls()"
           },
@@ -18612,7 +18631,7 @@
           "id" : 70,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 346,
+            "line" : 347,
             "column" : 12,
             "source_fragment" : "push_vlan()"
           },
@@ -18641,7 +18660,7 @@
           "id" : 71,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 347,
+            "line" : 348,
             "column" : 12,
             "source_fragment" : "push_inner_vlan()"
           },
@@ -18670,7 +18689,7 @@
           "id" : 72,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 350,
+            "line" : 351,
             "column" : 12,
             "source_fragment" : "hdr.inner_vlan_tag.setInvalid()"
           },
@@ -18699,7 +18718,7 @@
           "id" : 73,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 317,
+            "line" : 318,
             "column" : 10,
             "source_fragment" : "egress_vlan"
           },
@@ -18788,7 +18807,7 @@
           "id" : 76,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 357,
+            "line" : 358,
             "column" : 20,
             "source_fragment" : "push_vlan()"
           },
@@ -18817,7 +18836,7 @@
           "id" : 77,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 366,
+            "line" : 367,
             "column" : 25,
             "source_fragment" : "="
           },
@@ -18846,7 +18865,7 @@
           "id" : 78,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 367,
+            "line" : 368,
             "column" : 35,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
@@ -18875,7 +18894,7 @@
           "id" : 79,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 370,
+            "line" : 371,
             "column" : 29,
             "source_fragment" : "="
           },
@@ -18904,7 +18923,7 @@
           "id" : 80,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 371,
+            "line" : 372,
             "column" : 39,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
@@ -18933,7 +18952,7 @@
           "id" : 81,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 375,
+            "line" : 376,
             "column" : 35,
             "source_fragment" : "="
           },
@@ -18962,7 +18981,7 @@
           "id" : 82,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 376,
+            "line" : 377,
             "column" : 45,
             "source_fragment" : "mark_to_drop(standard_metadata)"
           },
@@ -20204,7 +20223,7 @@
           "id" : 34,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 332,
+            "line" : 333,
             "column" : 12,
             "source_fragment" : "fabric_metadata.is_multicast == true ..."
           },
@@ -20257,7 +20276,7 @@
           "id" : 35,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 337,
+            "line" : 338,
             "column" : 12,
             "source_fragment" : "fabric_metadata.mpls_label == 0"
           },
@@ -20283,7 +20302,7 @@
           "id" : 36,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 338,
+            "line" : 339,
             "column" : 16,
             "source_fragment" : "hdr.mpls.isValid()"
           },
@@ -20306,7 +20325,7 @@
           "id" : 37,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 344,
+            "line" : 345,
             "column" : 12,
             "source_fragment" : "fabric_metadata.push_double_vlan == true"
           },
@@ -20339,7 +20358,7 @@
           "id" : 38,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 354,
+            "line" : 355,
             "column" : 16,
             "source_fragment" : "!egress_vlan.apply().hit"
           },
@@ -20369,7 +20388,7 @@
           "id" : 39,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 356,
+            "line" : 357,
             "column" : 20,
             "source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
           },
@@ -20395,7 +20414,7 @@
           "id" : 40,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 365,
+            "line" : 366,
             "column" : 12,
             "source_fragment" : "hdr.mpls.isValid()"
           },
@@ -20418,7 +20437,7 @@
           "id" : 41,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 367,
+            "line" : 368,
             "column" : 16,
             "source_fragment" : "hdr.mpls.ttl == 0"
           },
@@ -20444,7 +20463,7 @@
           "id" : 42,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 369,
+            "line" : 370,
             "column" : 15,
             "source_fragment" : "hdr.ipv4.isValid()"
           },
@@ -20467,7 +20486,7 @@
           "id" : 43,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 371,
+            "line" : 372,
             "column" : 20,
             "source_fragment" : "hdr.ipv4.ttl == 0"
           },
@@ -20493,7 +20512,7 @@
           "id" : 44,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 374,
+            "line" : 375,
             "column" : 21,
             "source_fragment" : "hdr.ipv6.isValid()"
           },
@@ -20516,7 +20535,7 @@
           "id" : 45,
           "source_info" : {
             "filename" : "include/control/next.p4",
-            "line" : 376,
+            "line" : 377,
             "column" : 20,
             "source_fragment" : "hdr.ipv6.hop_limit == 0"
           },