blob: dd596bde8dfdafd62eda1aa9ff0328ccbb300c52 [file] [log] [blame]
Rich Lane883919c2013-05-09 17:53:18 -07001// Copyright 2013, Big Switch Networks, Inc.
2//
3// LoxiGen is licensed under the Eclipse Public License, version 1.0 (EPL), with
4// the following special exception:
5//
6// LOXI Exception
7//
8// As a special exception to the terms of the EPL, you may distribute libraries
9// generated by LoxiGen (LoxiGen Libraries) under the terms of your choice, provided
10// that copyright and licensing notices generated by LoxiGen are not altered or removed
11// from the LoxiGen Libraries and the notice provided below is (i) included in
12// the LoxiGen Libraries, if distributed in source code form and (ii) included in any
13// documentation for the LoxiGen Libraries, if distributed in binary form.
14//
15// Notice: "Copyright 2013, Big Switch Networks, Inc. This library was generated by the LoxiGen Compiler."
16//
17// You may not use this file except in compliance with the EPL or LOXI Exception. You may obtain
18// a copy of the EPL at:
19//
20// http://www.eclipse.org/legal/epl-v10.html
21//
22// Unless required by applicable law or agreed to in writing, software
23// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
24// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
25// EPL for the specific language governing permissions and limitations
26// under the EPL.
27//
28// Also derived from the OpenFlow header files which have these copyrights:
29// Copyright (c) 2008 The Board of Trustees of The Leland Stanford Junior University
30// Copyright (c) 2011, 2012 Open Networking Foundation
31
32#version 3
33#version 4
alshabib9f50e482014-08-23 17:10:57 -050034#version 5
Rich Lane883919c2013-05-09 17:53:18 -070035
Rich Lane883919c2013-05-09 17:53:18 -070036struct of_oxm {
Andreas Wundsamc37ba3d2013-08-02 17:51:51 -070037 uint32_t type_len == ?;
Rich Lane883919c2013-05-09 17:53:18 -070038};
39
Rich Lanee9c37db2013-06-21 18:30:24 -070040struct of_oxm_arp_op : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070041 uint32_t type_len == 0x80002a02;
Rich Lane883919c2013-05-09 17:53:18 -070042 uint16_t value;
43};
44
Rich Lanee9c37db2013-06-21 18:30:24 -070045struct of_oxm_arp_op_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070046 uint32_t type_len == 0x80002b04;
Rich Lane883919c2013-05-09 17:53:18 -070047 uint16_t value;
48 uint16_t value_mask;
49};
50
Rich Lanee9c37db2013-06-21 18:30:24 -070051struct of_oxm_arp_sha : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070052 uint32_t type_len == 0x80003006;
Rich Lane883919c2013-05-09 17:53:18 -070053 of_mac_addr_t value;
54};
55
Rich Lanee9c37db2013-06-21 18:30:24 -070056struct of_oxm_arp_sha_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070057 uint32_t type_len == 0x8000310c;
Rich Lane883919c2013-05-09 17:53:18 -070058 of_mac_addr_t value;
59 of_mac_addr_t value_mask;
60};
61
Rich Lanee9c37db2013-06-21 18:30:24 -070062struct of_oxm_arp_spa : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070063 uint32_t type_len == 0x80002c04;
Rich Lane883919c2013-05-09 17:53:18 -070064 uint32_t value;
65};
66
Rich Lanee9c37db2013-06-21 18:30:24 -070067struct of_oxm_arp_spa_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070068 uint32_t type_len == 0x80002d08;
Rich Lane883919c2013-05-09 17:53:18 -070069 uint32_t value;
70 uint32_t value_mask;
71};
72
Rich Lanee9c37db2013-06-21 18:30:24 -070073struct of_oxm_arp_tha : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070074 uint32_t type_len == 0x80003206;
Rich Lane883919c2013-05-09 17:53:18 -070075 of_mac_addr_t value;
76};
77
Rich Lanee9c37db2013-06-21 18:30:24 -070078struct of_oxm_arp_tha_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070079 uint32_t type_len == 0x8000330c;
Rich Lane883919c2013-05-09 17:53:18 -070080 of_mac_addr_t value;
81 of_mac_addr_t value_mask;
82};
83
Rich Lanee9c37db2013-06-21 18:30:24 -070084struct of_oxm_arp_tpa : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070085 uint32_t type_len == 0x80002e04;
Rich Lane883919c2013-05-09 17:53:18 -070086 uint32_t value;
87};
88
Rich Lanee9c37db2013-06-21 18:30:24 -070089struct of_oxm_arp_tpa_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070090 uint32_t type_len == 0x80002f08;
Rich Lane883919c2013-05-09 17:53:18 -070091 uint32_t value;
92 uint32_t value_mask;
93};
94
Rich Lanee9c37db2013-06-21 18:30:24 -070095struct of_oxm_eth_dst : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -070096 uint32_t type_len == 0x80000606;
Rich Lane883919c2013-05-09 17:53:18 -070097 of_mac_addr_t value;
98};
99
Rich Lanee9c37db2013-06-21 18:30:24 -0700100struct of_oxm_eth_dst_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700101 uint32_t type_len == 0x8000070c;
Rich Lane883919c2013-05-09 17:53:18 -0700102 of_mac_addr_t value;
103 of_mac_addr_t value_mask;
104};
105
Rich Lanee9c37db2013-06-21 18:30:24 -0700106struct of_oxm_eth_src : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700107 uint32_t type_len == 0x80000806;
Rich Lane883919c2013-05-09 17:53:18 -0700108 of_mac_addr_t value;
109};
110
Rich Lanee9c37db2013-06-21 18:30:24 -0700111struct of_oxm_eth_src_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700112 uint32_t type_len == 0x8000090c;
Rich Lane883919c2013-05-09 17:53:18 -0700113 of_mac_addr_t value;
114 of_mac_addr_t value_mask;
115};
116
Rich Lanee9c37db2013-06-21 18:30:24 -0700117struct of_oxm_eth_type : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700118 uint32_t type_len == 0x80000a02;
Rich Lane883919c2013-05-09 17:53:18 -0700119 uint16_t value;
120};
121
Rich Lanee9c37db2013-06-21 18:30:24 -0700122struct of_oxm_eth_type_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700123 uint32_t type_len == 0x80000b04;
Rich Lane883919c2013-05-09 17:53:18 -0700124 uint16_t value;
125 uint16_t value_mask;
126};
127
Rich Lanee9c37db2013-06-21 18:30:24 -0700128struct of_oxm_icmpv4_code : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700129 uint32_t type_len == 0x80002801;
Rich Lane883919c2013-05-09 17:53:18 -0700130 uint8_t value;
131};
132
Rich Lanee9c37db2013-06-21 18:30:24 -0700133struct of_oxm_icmpv4_code_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700134 uint32_t type_len == 0x80002902;
Rich Lane883919c2013-05-09 17:53:18 -0700135 uint8_t value;
136 uint8_t value_mask;
137};
138
Rich Lanee9c37db2013-06-21 18:30:24 -0700139struct of_oxm_icmpv4_type : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700140 uint32_t type_len == 0x80002601;
Rich Lane883919c2013-05-09 17:53:18 -0700141 uint8_t value;
142};
143
Rich Lanee9c37db2013-06-21 18:30:24 -0700144struct of_oxm_icmpv4_type_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700145 uint32_t type_len == 0x80002702;
Rich Lane883919c2013-05-09 17:53:18 -0700146 uint8_t value;
147 uint8_t value_mask;
148};
149
Rich Lanee9c37db2013-06-21 18:30:24 -0700150struct of_oxm_icmpv6_code : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700151 uint32_t type_len == 0x80003c01;
Rich Lane883919c2013-05-09 17:53:18 -0700152 uint8_t value;
153};
154
Rich Lanee9c37db2013-06-21 18:30:24 -0700155struct of_oxm_icmpv6_code_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700156 uint32_t type_len == 0x80003d02;
Rich Lane883919c2013-05-09 17:53:18 -0700157 uint8_t value;
158 uint8_t value_mask;
159};
160
Rich Lanee9c37db2013-06-21 18:30:24 -0700161struct of_oxm_icmpv6_type : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700162 uint32_t type_len == 0x80003a01;
Rich Lane883919c2013-05-09 17:53:18 -0700163 uint8_t value;
164};
165
Rich Lanee9c37db2013-06-21 18:30:24 -0700166struct of_oxm_icmpv6_type_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700167 uint32_t type_len == 0x80003b02;
Rich Lane883919c2013-05-09 17:53:18 -0700168 uint8_t value;
169 uint8_t value_mask;
170};
171
Rich Lanee9c37db2013-06-21 18:30:24 -0700172struct of_oxm_in_phy_port : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700173 uint32_t type_len == 0x80000204;
Rich Lane883919c2013-05-09 17:53:18 -0700174 of_port_no_t value;
175};
176
Rich Lanee9c37db2013-06-21 18:30:24 -0700177struct of_oxm_in_phy_port_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700178 uint32_t type_len == 0x80000308;
Rich Lane883919c2013-05-09 17:53:18 -0700179 of_port_no_t value;
180 of_port_no_t value_mask;
181};
182
Rich Lanee9c37db2013-06-21 18:30:24 -0700183struct of_oxm_in_port : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700184 uint32_t type_len == 0x80000004;
Rich Lane883919c2013-05-09 17:53:18 -0700185 of_port_no_t value;
186};
187
Rich Lanee9c37db2013-06-21 18:30:24 -0700188struct of_oxm_in_port_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700189 uint32_t type_len == 0x80000108;
Rich Lane883919c2013-05-09 17:53:18 -0700190 of_port_no_t value;
191 of_port_no_t value_mask;
192};
193
Rich Lanee9c37db2013-06-21 18:30:24 -0700194struct of_oxm_ip_dscp : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700195 uint32_t type_len == 0x80001001;
Rich Lane883919c2013-05-09 17:53:18 -0700196 uint8_t value;
197};
198
Rich Lanee9c37db2013-06-21 18:30:24 -0700199struct of_oxm_ip_dscp_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700200 uint32_t type_len == 0x80001102;
Rich Lane883919c2013-05-09 17:53:18 -0700201 uint8_t value;
202 uint8_t value_mask;
203};
204
Rich Lanee9c37db2013-06-21 18:30:24 -0700205struct of_oxm_ip_ecn : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700206 uint32_t type_len == 0x80001201;
Rich Lane883919c2013-05-09 17:53:18 -0700207 uint8_t value;
208};
209
Rich Lanee9c37db2013-06-21 18:30:24 -0700210struct of_oxm_ip_ecn_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700211 uint32_t type_len == 0x80001302;
Rich Lane883919c2013-05-09 17:53:18 -0700212 uint8_t value;
213 uint8_t value_mask;
214};
215
Rich Lanee9c37db2013-06-21 18:30:24 -0700216struct of_oxm_ip_proto : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700217 uint32_t type_len == 0x80001401;
Rich Lane883919c2013-05-09 17:53:18 -0700218 uint8_t value;
219};
220
Rich Lanee9c37db2013-06-21 18:30:24 -0700221struct of_oxm_ip_proto_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700222 uint32_t type_len == 0x80001502;
Rich Lane883919c2013-05-09 17:53:18 -0700223 uint8_t value;
224 uint8_t value_mask;
225};
226
Rich Lanee9c37db2013-06-21 18:30:24 -0700227struct of_oxm_ipv4_dst : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700228 uint32_t type_len == 0x80001804;
Andreas Wundsamb566a162013-07-18 19:30:23 -0700229 of_ipv4_t value;
Rich Lane883919c2013-05-09 17:53:18 -0700230};
231
Rich Lanee9c37db2013-06-21 18:30:24 -0700232struct of_oxm_ipv4_dst_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700233 uint32_t type_len == 0x80001908;
Andreas Wundsamb566a162013-07-18 19:30:23 -0700234 of_ipv4_t value;
235 of_ipv4_t value_mask;
Rich Lane883919c2013-05-09 17:53:18 -0700236};
237
Rich Lanee9c37db2013-06-21 18:30:24 -0700238struct of_oxm_ipv4_src : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700239 uint32_t type_len == 0x80001604;
Andreas Wundsamb566a162013-07-18 19:30:23 -0700240 of_ipv4_t value;
Rich Lane883919c2013-05-09 17:53:18 -0700241};
242
Rich Lanee9c37db2013-06-21 18:30:24 -0700243struct of_oxm_ipv4_src_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700244 uint32_t type_len == 0x80001708;
Andreas Wundsamb566a162013-07-18 19:30:23 -0700245 of_ipv4_t value;
246 of_ipv4_t value_mask;
Rich Lane883919c2013-05-09 17:53:18 -0700247};
248
Rich Lanee9c37db2013-06-21 18:30:24 -0700249struct of_oxm_ipv6_dst : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700250 uint32_t type_len == 0x80003610;
Rich Lane883919c2013-05-09 17:53:18 -0700251 of_ipv6_t value;
252};
253
Rich Lanee9c37db2013-06-21 18:30:24 -0700254struct of_oxm_ipv6_dst_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700255 uint32_t type_len == 0x80003720;
Rich Lane883919c2013-05-09 17:53:18 -0700256 of_ipv6_t value;
257 of_ipv6_t value_mask;
258};
259
Rich Lanee9c37db2013-06-21 18:30:24 -0700260struct of_oxm_ipv6_flabel : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700261 uint32_t type_len == 0x80003804;
Rich Lane883919c2013-05-09 17:53:18 -0700262 uint32_t value;
263};
264
Rich Lanee9c37db2013-06-21 18:30:24 -0700265struct of_oxm_ipv6_flabel_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700266 uint32_t type_len == 0x80003908;
Rich Lane883919c2013-05-09 17:53:18 -0700267 uint32_t value;
268 uint32_t value_mask;
269};
270
Rich Lanee9c37db2013-06-21 18:30:24 -0700271struct of_oxm_ipv6_nd_sll : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700272 uint32_t type_len == 0x80004006;
Rich Lane883919c2013-05-09 17:53:18 -0700273 of_mac_addr_t value;
274};
275
Rich Lanee9c37db2013-06-21 18:30:24 -0700276struct of_oxm_ipv6_nd_sll_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700277 uint32_t type_len == 0x8000410c;
Rich Lane883919c2013-05-09 17:53:18 -0700278 of_mac_addr_t value;
279 of_mac_addr_t value_mask;
280};
281
Rich Lanee9c37db2013-06-21 18:30:24 -0700282struct of_oxm_ipv6_nd_target : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700283 uint32_t type_len == 0x80003e10;
Rich Lane883919c2013-05-09 17:53:18 -0700284 of_ipv6_t value;
285};
286
Rich Lanee9c37db2013-06-21 18:30:24 -0700287struct of_oxm_ipv6_nd_target_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700288 uint32_t type_len == 0x80003f20;
Rich Lane883919c2013-05-09 17:53:18 -0700289 of_ipv6_t value;
290 of_ipv6_t value_mask;
291};
292
Rich Lanee9c37db2013-06-21 18:30:24 -0700293struct of_oxm_ipv6_nd_tll : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700294 uint32_t type_len == 0x80004206;
Rich Lane883919c2013-05-09 17:53:18 -0700295 of_mac_addr_t value;
296};
297
Rich Lanee9c37db2013-06-21 18:30:24 -0700298struct of_oxm_ipv6_nd_tll_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700299 uint32_t type_len == 0x8000430c;
Rich Lane883919c2013-05-09 17:53:18 -0700300 of_mac_addr_t value;
301 of_mac_addr_t value_mask;
302};
303
Rich Lanee9c37db2013-06-21 18:30:24 -0700304struct of_oxm_ipv6_src : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700305 uint32_t type_len == 0x80003410;
Rich Lane883919c2013-05-09 17:53:18 -0700306 of_ipv6_t value;
307};
308
Rich Lanee9c37db2013-06-21 18:30:24 -0700309struct of_oxm_ipv6_src_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700310 uint32_t type_len == 0x80003520;
Rich Lane883919c2013-05-09 17:53:18 -0700311 of_ipv6_t value;
312 of_ipv6_t value_mask;
313};
314
Rich Lanee9c37db2013-06-21 18:30:24 -0700315struct of_oxm_metadata : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700316 uint32_t type_len == 0x80000408;
Rich Lane883919c2013-05-09 17:53:18 -0700317 uint64_t value;
318};
319
Rich Lanee9c37db2013-06-21 18:30:24 -0700320struct of_oxm_metadata_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700321 uint32_t type_len == 0x80000510;
Rich Lane883919c2013-05-09 17:53:18 -0700322 uint64_t value;
323 uint64_t value_mask;
324};
325
Rich Lanee9c37db2013-06-21 18:30:24 -0700326struct of_oxm_mpls_label : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700327 uint32_t type_len == 0x80004404;
Rich Lane883919c2013-05-09 17:53:18 -0700328 uint32_t value;
329};
330
Rich Lanee9c37db2013-06-21 18:30:24 -0700331struct of_oxm_mpls_label_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700332 uint32_t type_len == 0x80004508;
Rich Lane883919c2013-05-09 17:53:18 -0700333 uint32_t value;
334 uint32_t value_mask;
335};
336
Rich Lanee9c37db2013-06-21 18:30:24 -0700337struct of_oxm_mpls_tc : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700338 uint32_t type_len == 0x80004601;
Rich Lane883919c2013-05-09 17:53:18 -0700339 uint8_t value;
340};
341
Rich Lanee9c37db2013-06-21 18:30:24 -0700342struct of_oxm_mpls_tc_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700343 uint32_t type_len == 0x80004702;
Rich Lane883919c2013-05-09 17:53:18 -0700344 uint8_t value;
345 uint8_t value_mask;
346};
347
Rich Lanee9c37db2013-06-21 18:30:24 -0700348struct of_oxm_sctp_dst : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700349 uint32_t type_len == 0x80002402;
Rich Lane883919c2013-05-09 17:53:18 -0700350 uint16_t value;
351};
352
Rich Lanee9c37db2013-06-21 18:30:24 -0700353struct of_oxm_sctp_dst_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700354 uint32_t type_len == 0x80002504;
Rich Lane883919c2013-05-09 17:53:18 -0700355 uint16_t value;
356 uint16_t value_mask;
357};
358
Rich Lanee9c37db2013-06-21 18:30:24 -0700359struct of_oxm_sctp_src : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700360 uint32_t type_len == 0x80002202;
Rich Lane883919c2013-05-09 17:53:18 -0700361 uint16_t value;
362};
363
Rich Lanee9c37db2013-06-21 18:30:24 -0700364struct of_oxm_sctp_src_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700365 uint32_t type_len == 0x80002304;
Rich Lane883919c2013-05-09 17:53:18 -0700366 uint16_t value;
367 uint16_t value_mask;
368};
369
Rich Lanee9c37db2013-06-21 18:30:24 -0700370struct of_oxm_tcp_dst : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700371 uint32_t type_len == 0x80001c02;
Rich Lane883919c2013-05-09 17:53:18 -0700372 uint16_t value;
373};
374
Rich Lanee9c37db2013-06-21 18:30:24 -0700375struct of_oxm_tcp_dst_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700376 uint32_t type_len == 0x80001d04;
Rich Lane883919c2013-05-09 17:53:18 -0700377 uint16_t value;
378 uint16_t value_mask;
379};
380
Rich Lanee9c37db2013-06-21 18:30:24 -0700381struct of_oxm_tcp_src : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700382 uint32_t type_len == 0x80001a02;
Rich Lane883919c2013-05-09 17:53:18 -0700383 uint16_t value;
384};
385
Rich Lanee9c37db2013-06-21 18:30:24 -0700386struct of_oxm_tcp_src_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700387 uint32_t type_len == 0x80001b04;
Rich Lane883919c2013-05-09 17:53:18 -0700388 uint16_t value;
389 uint16_t value_mask;
390};
391
Rich Lanee9c37db2013-06-21 18:30:24 -0700392struct of_oxm_udp_dst : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700393 uint32_t type_len == 0x80002002;
Rich Lane883919c2013-05-09 17:53:18 -0700394 uint16_t value;
395};
396
Rich Lanee9c37db2013-06-21 18:30:24 -0700397struct of_oxm_udp_dst_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700398 uint32_t type_len == 0x80002104;
Rich Lane883919c2013-05-09 17:53:18 -0700399 uint16_t value;
400 uint16_t value_mask;
401};
402
Rich Lanee9c37db2013-06-21 18:30:24 -0700403struct of_oxm_udp_src : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700404 uint32_t type_len == 0x80001e02;
Rich Lane883919c2013-05-09 17:53:18 -0700405 uint16_t value;
406};
407
Rich Lanee9c37db2013-06-21 18:30:24 -0700408struct of_oxm_udp_src_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700409 uint32_t type_len == 0x80001f04;
Rich Lane883919c2013-05-09 17:53:18 -0700410 uint16_t value;
411 uint16_t value_mask;
412};
413
Rich Lanee9c37db2013-06-21 18:30:24 -0700414struct of_oxm_vlan_pcp : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700415 uint32_t type_len == 0x80000e01;
Rich Lane883919c2013-05-09 17:53:18 -0700416 uint8_t value;
417};
418
Rich Lanee9c37db2013-06-21 18:30:24 -0700419struct of_oxm_vlan_pcp_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700420 uint32_t type_len == 0x80000f02;
Rich Lane883919c2013-05-09 17:53:18 -0700421 uint8_t value;
422 uint8_t value_mask;
423};
424
Rich Lanee9c37db2013-06-21 18:30:24 -0700425struct of_oxm_vlan_vid : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700426 uint32_t type_len == 0x80000c02;
Rich Lane883919c2013-05-09 17:53:18 -0700427 uint16_t value;
428};
429
Rich Lanee9c37db2013-06-21 18:30:24 -0700430struct of_oxm_vlan_vid_masked : of_oxm {
Rich Lane31b87142013-05-09 22:05:42 -0700431 uint32_t type_len == 0x80000d04;
Rich Lane883919c2013-05-09 17:53:18 -0700432 uint16_t value;
433 uint16_t value_mask;
434};