+#define OFPC_FRAG_NORMAL 0U
+#define OFPC_FRAG_DROP 1U
+#define OFPC_FRAG_REASM 2U
+static const struct tok ofp_config_str[] = {
+ { OFPC_FRAG_NORMAL, "FRAG_NORMAL" },
+ { OFPC_FRAG_DROP, "FRAG_DROP" },
+ { OFPC_FRAG_REASM, "FRAG_REASM" },
+ { 0, NULL }
+};
+
+#define OFPCML_MAX 0xffe5U
+#define OFPCML_NO_BUFFER 0xffffU
+static const struct tok ofpcml_str[] = {
+ { OFPCML_MAX, "MAX" },
+ { OFPCML_NO_BUFFER, "NO_BUFFER" },
+ { 0, NULL }
+};
+
+#define OFPPC_PORT_DOWN (1U <<0)
+#define OFPPC_NO_RECV (1U <<2)
+#define OFPPC_NO_FWD (1U <<5)
+#define OFPPC_NO_PACKET_IN (1U <<6)
+static const struct tok ofppc_bm[] = {
+ { OFPPC_PORT_DOWN, "PORT_DOWN" },
+ { OFPPC_NO_RECV, "NO_RECV" },
+ { OFPPC_NO_FWD, "NO_FWD" },
+ { OFPPC_NO_PACKET_IN, "NO_PACKET_IN" },
+ { 0, NULL }
+};
+#define OFPPC_U (~(OFPPC_PORT_DOWN | OFPPC_NO_RECV | OFPPC_NO_FWD | \
+ OFPPC_NO_PACKET_IN))
+
+#define OFPPF_10MB_HD (1U << 0)
+#define OFPPF_10MB_FD (1U << 1)
+#define OFPPF_100MB_HD (1U << 2)
+#define OFPPF_100MB_FD (1U << 3)
+#define OFPPF_1GB_HD (1U << 4)
+#define OFPPF_1GB_FD (1U << 5)
+#define OFPPF_10GB_FD (1U << 6)
+#define OFPPF_40GB_FD (1U << 7)
+#define OFPPF_100GB_FD (1U << 8)
+#define OFPPF_1TB_FD (1U << 9)
+#define OFPPF_OTHER (1U << 10)
+#define OFPPF_COPPER (1U << 11)
+#define OFPPF_FIBER (1U << 12)
+#define OFPPF_AUTONEG (1U << 13)
+#define OFPPF_PAUSE (1U << 14)
+#define OFPPF_PAUSE_ASYM (1U << 15)
+static const struct tok ofppf_bm[] = {
+ { OFPPF_10MB_HD, "10MB_HD" },
+ { OFPPF_10MB_FD, "10MB_FD" },
+ { OFPPF_100MB_HD, "100MB_HD" },
+ { OFPPF_100MB_FD, "100MB_FD" },
+ { OFPPF_1GB_HD, "1GB_HD" },
+ { OFPPF_1GB_FD, "1GB_FD" },
+ { OFPPF_10GB_FD, "10GB_FD" },
+ { OFPPF_40GB_FD, "40GB_FD" },
+ { OFPPF_100GB_FD, "100GB_FD" },
+ { OFPPF_1TB_FD, "1TB_FD" },
+ { OFPPF_OTHER, "OTHER" },
+ { OFPPF_COPPER, "COPPER" },
+ { OFPPF_FIBER, "FIBER" },
+ { OFPPF_AUTONEG, "AUTONEG" },
+ { OFPPF_PAUSE, "PAUSE" },
+ { OFPPF_PAUSE_ASYM, "PAUSE_ASYM" },
+ { 0, NULL }
+};
+#define OFPPF_U (~(OFPPF_10MB_HD | OFPPF_10MB_FD | OFPPF_100MB_HD | \
+ OFPPF_100MB_FD | OFPPF_1GB_HD | OFPPF_1GB_FD | \
+ OFPPF_10GB_FD | OFPPF_40GB_FD | OFPPF_100GB_FD | \
+ OFPPF_1TB_FD | OFPPF_OTHER | OFPPF_COPPER | OFPPF_FIBER | \
+ OFPPF_AUTONEG | OFPPF_PAUSE | OFPPF_PAUSE_ASYM))
+