From 7223bd02ee589af06da4938254b7f54014b95a68 Mon Sep 17 00:00:00 2001 From: Nipun Gupta Date: Fri, 30 Jun 2017 14:24:29 +0530 Subject: [PATCH] bus/fslmc: add callback per queue to enable Dequeue from event device needs to process the event on the basis of the hardware queue from which it is dequeued. A callback is added into dpaa2_queue structure, to enable event dequeue functionality to call that processing routine. Signed-off-by: Nipun Gupta --- drivers/bus/fslmc/portal/dpaa2_hw_pvt.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_pvt.h b/drivers/bus/fslmc/portal/dpaa2_hw_pvt.h index aee9592ab7..c03e681e0e 100644 --- a/drivers/bus/fslmc/portal/dpaa2_hw_pvt.h +++ b/drivers/bus/fslmc/portal/dpaa2_hw_pvt.h @@ -34,6 +34,8 @@ #ifndef _DPAA2_HW_PVT_H_ #define _DPAA2_HW_PVT_H_ +#include + #include #include @@ -101,6 +103,8 @@ struct dpaa2_dpio_dev { uintptr_t ci_size; /**< Size of the CI region */ int32_t vfio_fd; /**< File descriptor received via VFIO */ int32_t hw_id; /**< An unique ID of this DPIO device instance */ + uint64_t dqrr_held; + uint8_t dqrr_size; }; struct dpaa2_dpbp_dev { @@ -119,6 +123,11 @@ struct queue_storage_info_t { int toggle; }; +typedef void (dpaa2_queue_cb_dqrr_t)(struct qbman_swp *swp, + const struct qbman_fd *fd, + const struct qbman_result *dq, + struct rte_event *ev); + struct dpaa2_queue { struct rte_mempool *mb_pool; /**< mbuf pool to populate RX ring. */ void *dev; @@ -133,6 +142,7 @@ struct dpaa2_queue { struct queue_storage_info_t *q_storage; struct qbman_result *cscn; }; + dpaa2_queue_cb_dqrr_t *cb; }; struct swp_active_dqs { -- 2.20.1