dpaa: Disable QMAN_VOLATILE_FLAG_WAIT_INT

This commit is contained in:
Sebastian Huber
2017-05-18 11:53:08 +02:00
parent 96da40c0c4
commit 69a5677c0f
2 changed files with 6 additions and 0 deletions

View File

@@ -2194,10 +2194,12 @@ static int wait_vdqcr_start(struct qman_portal **p, struct qman_fq *fq,
{ {
int ret = 0; int ret = 0;
#ifndef __rtems__
if (flags & QMAN_VOLATILE_FLAG_WAIT_INT) if (flags & QMAN_VOLATILE_FLAG_WAIT_INT)
ret = wait_event_interruptible(affine_queue, ret = wait_event_interruptible(affine_queue,
!set_vdqcr(p, fq, vdqcr)); !set_vdqcr(p, fq, vdqcr));
else else
#endif /* __rtems__ */
wait_event(affine_queue, !set_vdqcr(p, fq, vdqcr)); wait_event(affine_queue, !set_vdqcr(p, fq, vdqcr));
return ret; return ret;
} }
@@ -2223,6 +2225,7 @@ int qman_volatile_dequeue(struct qman_fq *fq, u32 flags, u32 vdqcr)
return ret; return ret;
/* VDQCR is set */ /* VDQCR is set */
if (flags & QMAN_VOLATILE_FLAG_FINISH) { if (flags & QMAN_VOLATILE_FLAG_FINISH) {
#ifndef __rtems__
if (flags & QMAN_VOLATILE_FLAG_WAIT_INT) if (flags & QMAN_VOLATILE_FLAG_WAIT_INT)
/* /*
* NB: don't propagate any error - the caller wouldn't * NB: don't propagate any error - the caller wouldn't
@@ -2233,6 +2236,7 @@ int qman_volatile_dequeue(struct qman_fq *fq, u32 flags, u32 vdqcr)
wait_event_interruptible(affine_queue, wait_event_interruptible(affine_queue,
!fq_isset(fq, QMAN_FQ_STATE_VDQCR)); !fq_isset(fq, QMAN_FQ_STATE_VDQCR));
else else
#endif /* __rtems__ */
wait_event(affine_queue, wait_event(affine_queue,
!fq_isset(fq, QMAN_FQ_STATE_VDQCR)); !fq_isset(fq, QMAN_FQ_STATE_VDQCR));
} }

View File

@@ -811,7 +811,9 @@ struct qman_cgr {
#define QM_VDQCR_NUMFRAMES_TILLEMPTY QM_VDQCR_NUMFRAMES_SET(0) #define QM_VDQCR_NUMFRAMES_TILLEMPTY QM_VDQCR_NUMFRAMES_SET(0)
#define QMAN_VOLATILE_FLAG_WAIT 0x00000001 /* wait if VDQCR is in use */ #define QMAN_VOLATILE_FLAG_WAIT 0x00000001 /* wait if VDQCR is in use */
#ifndef __rtems__
#define QMAN_VOLATILE_FLAG_WAIT_INT 0x00000002 /* if wait, interruptible? */ #define QMAN_VOLATILE_FLAG_WAIT_INT 0x00000002 /* if wait, interruptible? */
#endif /* __rtems__ */
#define QMAN_VOLATILE_FLAG_FINISH 0x00000004 /* wait till VDQCR completes */ #define QMAN_VOLATILE_FLAG_FINISH 0x00000004 /* wait till VDQCR completes */
/* "Query FQ Non-Programmable Fields" */ /* "Query FQ Non-Programmable Fields" */