sched: move grinder configuration
[dpdk.git] / lib / dmadev / rte_dmadev_pmd.h
index 23b07a4..82ab7a8 100644 (file)
@@ -14,6 +14,8 @@
  * by any application.
  */
 
+#include <rte_dev.h>
+
 #include "rte_dmadev.h"
 
 #ifdef __cplusplus
@@ -54,6 +56,10 @@ typedef int (*rte_dma_stats_get_t)(const struct rte_dma_dev *dev,
 /** @internal Used to reset basic statistics. */
 typedef int (*rte_dma_stats_reset_t)(struct rte_dma_dev *dev, uint16_t vchan);
 
+/** @internal Used to check if a virtual channel has finished all jobs. */
+typedef int (*rte_dma_vchan_status_t)(const struct rte_dma_dev *dev, uint16_t vchan,
+               enum rte_dma_vchan_status *status);
+
 /** @internal Used to dump internal information. */
 typedef int (*rte_dma_dump_t)(const struct rte_dma_dev *dev, FILE *f);
 
@@ -74,6 +80,7 @@ struct rte_dma_dev_ops {
        rte_dma_stats_get_t        stats_get;
        rte_dma_stats_reset_t      stats_reset;
 
+       rte_dma_vchan_status_t     vchan_status;
        rte_dma_dump_t             dev_dump;
 };
 
@@ -126,8 +133,6 @@ struct rte_dma_dev {
        uint64_t reserved[2]; /**< Reserved for future fields. */
 } __rte_cache_aligned;
 
-extern struct rte_dma_dev *rte_dma_devices;
-
 /**
  * @internal
  * Allocate a new dmadev slot for an DMA device and return the pointer to that