Fixes to fabric.p4 pipeline

- Fix ethernet matching fields in ACL (dst and src were inverted)
- When doing punt_to_cpu after setting a multicast group clear the mcast_grp metadata field

Change-Id: I456566929b118188a1b2a40ff3f4de4c6c63d5bb
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
index 4e69bae..4295526 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-full/bmv2/default/bmv2.json
@@ -684,6 +684,32 @@
                 }
               ],
               "op" : "set"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "fabric_metadata_t._bng_s_tag28"]
+                },
+                {
+                  "type" : "hexstr",
+                  "value" : "0x0000"
+                }
+              ],
+              "op" : "set"
+            },
+            {
+              "parameters" : [
+                {
+                  "type" : "field",
+                  "value" : ["scalars", "fabric_metadata_t._bng_c_tag29"]
+                },
+                {
+                  "type" : "hexstr",
+                  "value" : "0x0000"
+                }
+              ],
+              "op" : "set"
             }
           ],
           "transitions" : [
@@ -1753,7 +1779,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "include/parser.p4",
-        "line" : 265,
+        "line" : 269,
         "column" : 8,
         "source_fragment" : "FabricDeparser"
       },
@@ -1766,7 +1792,7 @@
       "id" : 0,
       "source_info" : {
         "filename" : "include/bng.p4",
-        "line" : 151,
+        "line" : 154,
         "column" : 33,
         "source_fragment" : "m_besteff"
       },
@@ -1780,7 +1806,7 @@
       "id" : 1,
       "source_info" : {
         "filename" : "include/bng.p4",
-        "line" : 152,
+        "line" : 155,
         "column" : 33,
         "source_fragment" : "m_prio"
       },
@@ -1868,7 +1894,7 @@
       "id" : 6,
       "source_info" : {
         "filename" : "include/bng.p4",
-        "line" : 149,
+        "line" : 152,
         "column" : 37,
         "source_fragment" : "c_line_rx"
       },
@@ -2036,7 +2062,7 @@
       "id" : 20,
       "source_info" : {
         "filename" : "include/bng.p4",
-        "line" : 264,
+        "line" : 267,
         "column" : 37,
         "source_fragment" : "c_line_tx"
       },
@@ -2572,6 +2598,25 @@
           }
         },
         {
+          "op" : "assign",
+          "parameters" : [
+            {
+              "type" : "field",
+              "value" : ["standard_metadata", "mcast_grp"]
+            },
+            {
+              "type" : "hexstr",
+              "value" : "0x0000"
+            }
+          ],
+          "source_info" : {
+            "filename" : "include/bng.p4",
+            "line" : 47,
+            "column" : 8,
+            "source_fragment" : "smeta.mcast_grp = 0"
+          }
+        },
+        {
           "op" : "count",
           "parameters" : [
             {
@@ -2585,7 +2630,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 45,
+            "line" : 48,
             "column" : 8,
             "source_fragment" : "c_control.count(fmeta.bng.line_id)"
           }
@@ -2626,7 +2671,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 74,
+            "line" : 77,
             "column" : 8,
             "source_fragment" : "mark_to_drop(smeta)"
           }
@@ -2667,7 +2712,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 74,
+            "line" : 77,
             "column" : 8,
             "source_fragment" : "mark_to_drop(smeta)"
           }
@@ -2708,7 +2753,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 68,
+            "line" : 71,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.setInvalid()"
           }
@@ -2727,7 +2772,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 69,
+            "line" : 72,
             "column" : 8,
             "source_fragment" : "c_terminated.count(fmeta.bng.line_id)"
           }
@@ -2768,7 +2813,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 68,
+            "line" : 71,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.setInvalid()"
           }
@@ -2787,7 +2832,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 69,
+            "line" : 72,
             "column" : 8,
             "source_fragment" : "c_terminated.count(fmeta.bng.line_id)"
           }
@@ -2837,7 +2882,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 156,
+            "line" : 159,
             "column" : 35,
             "source_fragment" : "= pppoe_session_id; ..."
           }
@@ -2856,7 +2901,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 157,
+            "line" : 160,
             "column" : 8,
             "source_fragment" : "c_line_rx.count(fmeta.bng.line_id)"
           }
@@ -2901,7 +2946,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 162,
+            "line" : 165,
             "column" : 8,
             "source_fragment" : "c_line_rx.count(fmeta.bng.line_id)"
           }
@@ -2916,7 +2961,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 163,
+            "line" : 166,
             "column" : 8,
             "source_fragment" : "mark_to_drop(smeta)"
           }
@@ -2971,7 +3016,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 317,
+            "line" : 320,
             "column" : 30,
             "source_fragment" : "= line_id; ..."
           }
@@ -5151,7 +5196,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 123,
+            "line" : 126,
             "column" : 12,
             "source_fragment" : "return"
           }
@@ -5177,7 +5222,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 128,
+            "line" : 131,
             "column" : 20,
             "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
           }
@@ -5203,7 +5248,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 136,
+            "line" : 139,
             "column" : 19,
             "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
           }
@@ -5262,7 +5307,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 109,
+            "line" : 112,
             "column" : 12,
             "source_fragment" : "hdr.ipv6.src_addr[127:64]"
           }
@@ -5352,7 +5397,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 235,
+            "line" : 238,
             "column" : 24,
             "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
           }
@@ -5382,7 +5427,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 238,
+            "line" : 241,
             "column" : 24,
             "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
           }
@@ -5412,7 +5457,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 247,
+            "line" : 250,
             "column" : 24,
             "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
           }
@@ -5442,7 +5487,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 250,
+            "line" : 253,
             "column" : 24,
             "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
           }
@@ -6111,7 +6156,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 270,
+            "line" : 273,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.setValid()"
           }
@@ -6130,7 +6175,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 271,
+            "line" : 274,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.version = 4w1"
           }
@@ -6149,7 +6194,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 272,
+            "line" : 275,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.type_id = 4w1"
           }
@@ -6168,7 +6213,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 273,
+            "line" : 276,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.code = 8w0"
           }
@@ -6187,7 +6232,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 274,
+            "line" : 277,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.session_id = fmeta.bng.pppoe_session_id; ..."
           }
@@ -6206,7 +6251,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 275,
+            "line" : 278,
             "column" : 8,
             "source_fragment" : "c_line_tx.count(fmeta.bng.line_id)"
           }
@@ -6248,7 +6293,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 280,
+            "line" : 283,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.length = hdr.ipv4.total_len + 16w2"
           }
@@ -6308,7 +6353,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 270,
+            "line" : 273,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.setValid()"
           }
@@ -6327,7 +6372,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 271,
+            "line" : 274,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.version = 4w1"
           }
@@ -6346,7 +6391,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 272,
+            "line" : 275,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.type_id = 4w1"
           }
@@ -6365,7 +6410,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 273,
+            "line" : 276,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.code = 8w0"
           }
@@ -6384,7 +6429,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 274,
+            "line" : 277,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.session_id = fmeta.bng.pppoe_session_id; ..."
           }
@@ -6403,7 +6448,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 275,
+            "line" : 278,
             "column" : 8,
             "source_fragment" : "c_line_tx.count(fmeta.bng.line_id)"
           }
@@ -6445,7 +6490,7 @@
           ],
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 287,
+            "line" : 290,
             "column" : 8,
             "source_fragment" : "hdr.pppoe.length = hdr.ipv6.payload_len + 16w42"
           }
@@ -15997,13 +16042,13 @@
             },
             {
               "match_type" : "ternary",
-              "name" : "eth_src",
+              "name" : "eth_dst",
               "target" : ["ethernet", "dst_addr"],
               "mask" : null
             },
             {
               "match_type" : "ternary",
-              "name" : "eth_dst",
+              "name" : "eth_src",
               "target" : ["ethernet", "src_addr"],
               "mask" : null
             },
@@ -16425,7 +16470,7 @@
           "id" : 39,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 320,
+            "line" : 323,
             "column" : 14,
             "source_fragment" : "t_line_map"
           },
@@ -16467,7 +16512,7 @@
           "id" : 40,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 339,
+            "line" : 342,
             "column" : 31,
             "source_fragment" : "="
           },
@@ -16496,7 +16541,7 @@
           "id" : 41,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 48,
+            "line" : 51,
             "column" : 10,
             "source_fragment" : "t_pppoe_cp"
           },
@@ -16585,7 +16630,7 @@
           "id" : 44,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 123,
+            "line" : 126,
             "column" : 12,
             "source_fragment" : "return"
           },
@@ -16614,7 +16659,7 @@
           "id" : 45,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 84,
+            "line" : 87,
             "column" : 10,
             "source_fragment" : "t_pppoe_term_v4"
           },
@@ -16663,7 +16708,7 @@
           "id" : 46,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 128,
+            "line" : 131,
             "column" : 20,
             "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
           },
@@ -16692,7 +16737,7 @@
           "id" : 47,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 109,
+            "line" : 112,
             "column" : 12,
             "source_fragment" : "hdr.ipv6.src_addr[127:64]"
           },
@@ -16721,7 +16766,7 @@
           "id" : 48,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 106,
+            "line" : 109,
             "column" : 10,
             "source_fragment" : "t_pppoe_term_v6"
           },
@@ -16770,7 +16815,7 @@
           "id" : 49,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 136,
+            "line" : 139,
             "column" : 19,
             "source_fragment" : "c_dropped.count(fmeta.bng.line_id)"
           },
@@ -16799,7 +16844,7 @@
           "id" : 50,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 166,
+            "line" : 169,
             "column" : 10,
             "source_fragment" : "t_line_session_map"
           },
@@ -16882,7 +16927,7 @@
           "id" : 53,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 191,
+            "line" : 194,
             "column" : 10,
             "source_fragment" : "t_qos_v4"
           },
@@ -16937,7 +16982,7 @@
           "id" : 54,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 235,
+            "line" : 238,
             "column" : 24,
             "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
           },
@@ -16966,7 +17011,7 @@
           "id" : 55,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 238,
+            "line" : 241,
             "column" : 24,
             "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
           },
@@ -16995,7 +17040,7 @@
           "id" : 56,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 207,
+            "line" : 210,
             "column" : 10,
             "source_fragment" : "t_qos_v6"
           },
@@ -17044,7 +17089,7 @@
           "id" : 57,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 247,
+            "line" : 250,
             "column" : 24,
             "source_fragment" : "m_prio.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
           },
@@ -17073,7 +17118,7 @@
           "id" : 58,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 250,
+            "line" : 253,
             "column" : 24,
             "source_fragment" : "m_besteff.execute_meter(fmeta.bng.line_id, fmeta.bng.ds_meter_result)"
           },
@@ -17667,7 +17712,7 @@
           "id" : 20,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 338,
+            "line" : 341,
             "column" : 16,
             "source_fragment" : "hdr.pppoe.isValid()"
           },
@@ -17731,7 +17776,7 @@
           "id" : 23,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 125,
+            "line" : 128,
             "column" : 12,
             "source_fragment" : "hdr.ipv4.isValid()"
           },
@@ -17754,7 +17799,7 @@
           "id" : 24,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 133,
+            "line" : 136,
             "column" : 17,
             "source_fragment" : "hdr.ipv6.isValid()"
           },
@@ -17794,7 +17839,7 @@
           "id" : 26,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 232,
+            "line" : 235,
             "column" : 16,
             "source_fragment" : "hdr.ipv4.isValid()"
           },
@@ -17817,7 +17862,7 @@
           "id" : 27,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 244,
+            "line" : 247,
             "column" : 21,
             "source_fragment" : "hdr.ipv6.isValid()"
           },
@@ -18406,7 +18451,7 @@
           "id" : 78,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 294,
+            "line" : 297,
             "column" : 12,
             "source_fragment" : "encap_v4()"
           },
@@ -18435,7 +18480,7 @@
           "id" : 79,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 299,
+            "line" : 302,
             "column" : 12,
             "source_fragment" : "encap_v6()"
           },
@@ -19954,7 +19999,7 @@
           "id" : 43,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 355,
+            "line" : 358,
             "column" : 12,
             "source_fragment" : "fmeta.bng.type == BNG_TYPE_DOWNSTREAM"
           },
@@ -19980,7 +20025,7 @@
           "id" : 44,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 293,
+            "line" : 296,
             "column" : 12,
             "source_fragment" : "hdr.ipv4.isValid()"
           },
@@ -20003,7 +20048,7 @@
           "id" : 45,
           "source_info" : {
             "filename" : "include/bng.p4",
-            "line" : 298,
+            "line" : 301,
             "column" : 17,
             "source_fragment" : "hdr.ipv6.isValid()"
           },