/* Max adapters that one Tx core can handle */
#define EVENT_MODE_MAX_ADAPTERS_PER_TX_CORE EVENT_MODE_MAX_TX_ADAPTERS
+/* Used to indicate that queue schedule type is not set */
+#define SCHED_TYPE_NOT_SET 3
+
/**
* Packet transfer mode of the application
*/
EH_RX_TYPE_BURST
};
+/**
+ * Event mode packet tx types
+ */
+enum eh_tx_types {
+ EH_TX_TYPE_INTERNAL_PORT = 0,
+ EH_TX_TYPE_NO_INTERNAL_PORT
+};
+
+/**
+ * Event mode ipsec mode types
+ */
+enum eh_ipsec_mode_types {
+ EH_IPSEC_MODE_TYPE_APP = 0,
+ EH_IPSEC_MODE_TYPE_DRIVER
+};
+
/* Event dev params */
struct eventdev_params {
uint8_t eventdev_id;
uint8_t nb_eventqueue;
uint8_t nb_eventport;
uint8_t ev_queue_mode;
+ uint8_t all_internal_ports;
};
/**
*/
void *mode_params;
/**< Mode specific parameters */
+
+ /** Application specific params */
+ enum eh_ipsec_mode_types ipsec_mode;
+ /**< Mode of ipsec run */
};
/* Workers registered by the application */
struct {
uint64_t burst : 1;
/**< Specify status of rx type burst */
+ uint64_t tx_internal_port : 1;
+ /**< Specify whether tx internal port is available */
+ uint64_t ipsec_mode : 1;
+ /**< Specify ipsec processing level */
};
uint64_t u64;
} cap;
/**< Worker thread */
};
+/**
+ * Allocate memory for event helper configuration and initialize
+ * it with default values.
+ *
+ * @return
+ * - pointer to event helper configuration structure on success.
+ * - NULL on failure.
+ */
+struct eh_conf *
+eh_conf_init(void);
+
+/**
+ * Uninitialize event helper configuration and release its memory
+. *
+ * @param conf
+ * Event helper configuration
+ */
+void
+eh_conf_uninit(struct eh_conf *conf);
+
/**
* Initialize event mode devices
*