NMX selection method Signed-off-by: Simon Horman <simon.hor...@netronome.com> --- include/openflow/automake.mk | 1 + include/openflow/netronome-ext.h | 51 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 include/openflow/netronome-ext.h
diff --git a/include/openflow/automake.mk b/include/openflow/automake.mk index 512991e..2fe08a0 100644 --- a/include/openflow/automake.mk +++ b/include/openflow/automake.mk @@ -1,5 +1,6 @@ openflowincludedir = $(includedir)/openflow openflowinclude_HEADERS = \ + include/openflow/netronome-ext.h \ include/openflow/nicira-ext.h \ include/openflow/openflow-1.0.h \ include/openflow/openflow-1.1.h \ diff --git a/include/openflow/netronome-ext.h b/include/openflow/netronome-ext.h new file mode 100644 index 0000000..638f209 --- /dev/null +++ b/include/openflow/netronome-ext.h @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2014 Netronome. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef OPENFLOW_NETRONOME_EXT_H +#define OPENFLOW_NETRONOME_EXT_H 1 + +#include "openflow/openflow.h" +#include "openvswitch/types.h" + +/* The following vendor extension, proposed by Netronome, is not yet + * standardized, so they are not included in openflow.h. It may + * be suitable for standardization */ + + +/* Netronome enhanced select group */ + +enum nmx_group_mod_subtype { + NMXT_SELECTION_METHOD = 1, +}; + +#define NMX_MAX_SELECTION_METHOD_LEN 16 + +struct nmx_group_prop_selection_method { + ovs_be16 type; /* OFPGPT15_EXPERIMENTER. */ + ovs_be16 length; /* Length in bytes of this property. */ + ovs_be32 experimenter; /* NMX_VENDOR_ID. */ + ovs_be32 exp_type; /* NMXT_SELECTION_METHOD. */ + ovs_be32 pad; + char selection_method[NMX_MAX_SELECTION_METHOD_LEN]; + /* Null-terminated */ + ovs_be64 selection_method_param; /* Non-Field parameter for + * bucket selection. */ + /* struct ofp11_match fields; * Fields used for bucket selection. + * Variable size. */ +}; +OFP_ASSERT(sizeof(struct nmx_group_prop_selection_method) == 40); + +#endif /* openflow/netronome-ext.h */ -- 2.1.1 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev