bus/pci: use SPDX tags in 6WIND copyrighted files
[dpdk.git] / lib / librte_eventdev / rte_eventdev_pmd.h
index b485a57..31343b5 100644 (file)
@@ -50,6 +50,14 @@ extern "C" {
        } \
 } while (0)
 
+#define RTE_EVENTDEV_VALID_DEVID_OR_ERRNO_RET(dev_id, errno, retval) do { \
+       if (!rte_event_pmd_is_valid_dev((dev_id))) { \
+               RTE_EDEV_LOG_ERR("Invalid dev_id=%d\n", dev_id); \
+               rte_errno = errno; \
+               return retval; \
+       } \
+} while (0)
+
 #define RTE_EVENTDEV_VALID_DEVID_OR_RET(dev_id) do { \
        if (!rte_event_pmd_is_valid_dev((dev_id))) { \
                RTE_EDEV_LOG_ERR("Invalid dev_id=%d\n", dev_id); \
@@ -569,6 +577,13 @@ typedef int (*eventdev_eth_rx_adapter_stats_get)
 typedef int (*eventdev_eth_rx_adapter_stats_reset)
                        (const struct rte_eventdev *dev,
                        const struct rte_eth_dev *eth_dev);
+/**
+ * Start eventdev selftest.
+ *
+ * @return
+ *   Return 0 on success.
+ */
+typedef int (*eventdev_selftest)(void);
 
 /** Event device operations function pointer table */
 struct rte_eventdev_ops {
@@ -624,6 +639,9 @@ struct rte_eventdev_ops {
        /**< Get ethernet Rx stats */
        eventdev_eth_rx_adapter_stats_reset eth_rx_adapter_stats_reset;
        /**< Reset ethernet Rx stats */
+
+       eventdev_selftest dev_selftest;
+       /**< Start eventdev Selftest */
 };
 
 /**