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 <nipun.gupta@nxp.com>
This commit is contained in:
Nipun Gupta 2017-06-30 14:24:29 +05:30 committed by Jerin Jacob
parent 33ae0a2915
commit 7223bd02ee

View File

@ -34,6 +34,8 @@
#ifndef _DPAA2_HW_PVT_H_
#define _DPAA2_HW_PVT_H_
#include <rte_eventdev.h>
#include <mc/fsl_mc_sys.h>
#include <fsl_qbman_portal.h>
@ -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 {