[SDFAB-357] Backport slicing in fabric and add support for QFI in PDR and fabric
Change-Id: Ieb10140dc0029a0cbf59ddfbb77f64f9a8c7379e
(cherry picked from commit 411f6f7f461db6491d627c2cb31642bdd6e7c8d8)
diff --git a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt
index 29aa49f..b909706 100644
--- a/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt
+++ b/pipelines/fabric/impl/src/main/resources/p4c-out/fabric-bng/bmv2/default/p4info.txt
@@ -521,6 +521,92 @@
}
tables {
preamble {
+ id: 34606298
+ name: "FabricIngress.slice_tc_classifier.classifier"
+ alias: "classifier"
+ }
+ match_fields {
+ id: 1
+ name: "ig_port"
+ bitwidth: 9
+ match_type: TERNARY
+ }
+ match_fields {
+ id: 2
+ name: "ipv4_src"
+ bitwidth: 32
+ match_type: TERNARY
+ }
+ match_fields {
+ id: 3
+ name: "ipv4_dst"
+ bitwidth: 32
+ match_type: TERNARY
+ }
+ match_fields {
+ id: 4
+ name: "ip_proto"
+ bitwidth: 8
+ match_type: TERNARY
+ }
+ match_fields {
+ id: 5
+ name: "l4_sport"
+ bitwidth: 16
+ match_type: TERNARY
+ }
+ match_fields {
+ id: 6
+ name: "l4_dport"
+ bitwidth: 16
+ match_type: TERNARY
+ }
+ action_refs {
+ id: 23786376
+ }
+ action_refs {
+ id: 25983516
+ }
+ const_default_action_id: 23786376
+ direct_resource_ids: 334706097
+ size: 512
+}
+tables {
+ preamble {
+ id: 36435258
+ name: "FabricIngress.qos.queues"
+ alias: "queues"
+ }
+ match_fields {
+ id: 1
+ name: "slice_id"
+ bitwidth: 4
+ match_type: EXACT
+ }
+ match_fields {
+ id: 2
+ name: "tc"
+ bitwidth: 2
+ match_type: EXACT
+ }
+ match_fields {
+ id: 3
+ name: "color"
+ bitwidth: 2
+ match_type: TERNARY
+ }
+ action_refs {
+ id: 32116918
+ }
+ action_refs {
+ id: 28214351
+ }
+ const_default_action_id: 32116918
+ direct_resource_ids: 327743278
+ size: 128
+}
+tables {
+ preamble {
id: 49262446
name: "FabricEgress.egress_next.egress_vlan"
alias: "egress_vlan"
@@ -552,6 +638,32 @@
direct_resource_ids: 318892680
size: 1024
}
+tables {
+ preamble {
+ id: 49970092
+ name: "FabricEgress.dscp_rewriter.rewriter"
+ alias: "rewriter"
+ }
+ match_fields {
+ id: 1
+ name: "eg_port"
+ bitwidth: 9
+ match_type: EXACT
+ }
+ action_refs {
+ id: 27951287
+ }
+ action_refs {
+ id: 24120545
+ }
+ action_refs {
+ id: 28485346
+ annotations: "@defaultonly"
+ scope: DEFAULT_ONLY
+ }
+ const_default_action_id: 28485346
+ size: 512
+}
actions {
preamble {
id: 28485346
@@ -850,6 +962,49 @@
}
actions {
preamble {
+ id: 23786376
+ name: "FabricIngress.slice_tc_classifier.set_slice_id_tc"
+ alias: "set_slice_id_tc"
+ }
+ params {
+ id: 1
+ name: "slice_id"
+ bitwidth: 4
+ }
+ params {
+ id: 2
+ name: "tc"
+ bitwidth: 2
+ }
+}
+actions {
+ preamble {
+ id: 25983516
+ name: "FabricIngress.slice_tc_classifier.trust_dscp"
+ alias: "trust_dscp"
+ }
+}
+actions {
+ preamble {
+ id: 32116918
+ name: "FabricIngress.qos.set_queue"
+ alias: "set_queue"
+ }
+ params {
+ id: 1
+ name: "qid"
+ bitwidth: 5
+ }
+}
+actions {
+ preamble {
+ id: 28214351
+ name: "FabricIngress.qos.meter_drop"
+ alias: "meter_drop"
+ }
+}
+actions {
+ preamble {
id: 20781696
name: "FabricEgress.bng_egress.downstream.encap_v4"
alias: "encap_v4"
@@ -876,6 +1031,20 @@
alias: "egress_next.drop"
}
}
+actions {
+ preamble {
+ id: 27951287
+ name: "FabricEgress.dscp_rewriter.rewrite"
+ alias: "rewrite"
+ }
+}
+actions {
+ preamble {
+ id: 24120545
+ name: "FabricEgress.dscp_rewriter.clear"
+ alias: "clear"
+ }
+}
action_profiles {
preamble {
id: 291115404
@@ -1065,6 +1234,28 @@
}
direct_counters {
preamble {
+ id: 334706097
+ name: "FabricIngress.slice_tc_classifier.classifier_stats"
+ alias: "classifier_stats"
+ }
+ spec {
+ unit: PACKETS
+ }
+ direct_table_id: 34606298
+}
+direct_counters {
+ preamble {
+ id: 327743278
+ name: "FabricIngress.qos.queues_stats"
+ alias: "queues_stats"
+ }
+ spec {
+ unit: PACKETS
+ }
+ direct_table_id: 36435258
+}
+direct_counters {
+ preamble {
id: 318892680
name: "FabricEgress.egress_next.egress_vlan_counter"
alias: "egress_vlan_counter"
@@ -1096,6 +1287,17 @@
}
size: 8192
}
+meters {
+ preamble {
+ id: 348573637
+ name: "FabricIngress.qos.slice_tc_meter"
+ alias: "slice_tc_meter"
+ }
+ spec {
+ unit: BYTES
+ }
+ size: 64
+}
controller_packet_metadata {
preamble {
id: 81826293