[netpfga] re-introduce old parser, rename variables
This commit is contained in:
parent
1be73a0e50
commit
e6951c6210
1 changed files with 46 additions and 36 deletions
|
@ -45,23 +45,24 @@ struct digest_data_t {
|
|||
// out user_metadata_t user_metadata,
|
||||
// out digest_data_t digest_data,
|
||||
// inout sume_metadata_t sume_metadata) {
|
||||
// state start {
|
||||
// b.extract(p.ethernet);
|
||||
// user_metadata.unused = 0;
|
||||
// digest_data.unused = 0;
|
||||
|
||||
// transition accept;
|
||||
// }
|
||||
// }
|
||||
|
||||
@Xilinx_MaxPacketRegion(1024)
|
||||
parser TopParser(packet_in packet,
|
||||
out headers hdr,
|
||||
out metadata meta,
|
||||
// out metadata meta,
|
||||
out user_metadata_t user_metadata,
|
||||
out digest_data_t digest_data,
|
||||
inout sume_metadata_t standard_metadata) {
|
||||
state start {
|
||||
packet.extract(hdr.ethernet);
|
||||
user_metadata.unused = 0;
|
||||
digest_data.unused = 0;
|
||||
|
||||
#include "parsers.p4"
|
||||
transition accept;
|
||||
}
|
||||
|
||||
// #include "parsers.p4"
|
||||
|
||||
}
|
||||
|
||||
|
@ -87,6 +88,8 @@ control TopPipe(inout headers hdr,
|
|||
// #include "actions_arp.p4" // includes v4_arp, v4_egress
|
||||
// #include "actions_delta_checksum.p4" // non payload based checksumming
|
||||
|
||||
|
||||
|
||||
// apply {
|
||||
// if(hdr.ipv6.isValid()) {
|
||||
// if(nat64.apply().hit) { /* generic / static nat64 done */
|
||||
|
@ -168,30 +171,37 @@ control TopPipe(inout headers hdr,
|
|||
// }
|
||||
|
||||
|
||||
action swap_eth_addresses() {
|
||||
EthAddr_t temp = hdr.ethernet.dst_addr;
|
||||
hdr.ethernet.dst_addr = hdr.ethernet.src_addr;
|
||||
hdr.ethernet.src_addr = temp;
|
||||
action swap_eth_addresses() {
|
||||
EthAddr_t temp = hdr.ethernet.dst_addr;
|
||||
hdr.ethernet.dst_addr = hdr.ethernet.src_addr;
|
||||
hdr.ethernet.src_addr = temp;
|
||||
|
||||
/* set egress port */
|
||||
sume_metadata.dst_port = sume_metadata.src_port;
|
||||
}
|
||||
/* set egress port */
|
||||
sume_metadata.dst_port = sume_metadata.src_port;
|
||||
}
|
||||
|
||||
action send_to_port1() {
|
||||
sume_metadata.dst_port = 1;
|
||||
}
|
||||
action send_to_port1() {
|
||||
sume_metadata.dst_port = 1;
|
||||
}
|
||||
|
||||
action send_to_all_ports() {
|
||||
/* Taken from commands.txt of the "int" project:
|
||||
table_cam_add_entry forward set_output_port 0xffffffffffff => 0b01010101
|
||||
// action send_testdata_to_port1() {
|
||||
// // python: MAC2 = "08:22:22:22:22:08"
|
||||
// if(hdr.ethernet.dst_addr == 0x082222222208) {
|
||||
// sume_metadata.dst_port = 1;
|
||||
// }
|
||||
// }
|
||||
|
||||
python convert:
|
||||
>>> 0b01010101
|
||||
85
|
||||
action send_to_all_ports() {
|
||||
/* Taken from commands.txt of the "int" project:
|
||||
table_cam_add_entry forward set_output_port 0xffffffffffff => 0b01010101
|
||||
|
||||
*/
|
||||
sume_metadata.dst_port = 85;
|
||||
}
|
||||
python convert:
|
||||
>>> 0b01010101
|
||||
85
|
||||
|
||||
*/
|
||||
sume_metadata.dst_port = 85;
|
||||
}
|
||||
|
||||
action do_nothing() {
|
||||
EthAddr_t temp = hdr.ethernet.dst_addr;
|
||||
|
@ -239,17 +249,17 @@ control TopDeparser(packet_out packet,
|
|||
|
||||
// @Xilinx_MaxPacketRegion(1024)
|
||||
// control TopDeparser(packet_out b,
|
||||
// in Parsed_packet p,
|
||||
// in user_metadata_t user_metadata,
|
||||
// inout digest_data_t digest_data,
|
||||
// inout sume_metadata_t sume_metadata) {
|
||||
// in Parsed_packet p,
|
||||
// in user_metadata_t user_metadata,
|
||||
// inout digest_data_t digest_data,
|
||||
// inout sume_metadata_t sume_metadata) {
|
||||
|
||||
|
||||
// apply {
|
||||
// packet.emit(hdr.ethernet);
|
||||
// }
|
||||
apply {
|
||||
packet.emit(hdr.ethernet);
|
||||
}
|
||||
|
||||
#include "deparser.p4"
|
||||
// #include "deparser.p4"
|
||||
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue