/** * dpaa2_dq_flags() - Get the stat field of dequeue response * @dq: the dequeue result.
*/ staticinline u32 dpaa2_dq_flags(conststruct dpaa2_dq *dq)
{ return dq->dq.stat;
}
/** * dpaa2_dq_is_pull() - Check whether the dq response is from a pull * command. * @dq: the dequeue result * * Return 1 for volatile(pull) dequeue, 0 for static dequeue.
*/ staticinlineint dpaa2_dq_is_pull(conststruct dpaa2_dq *dq)
{ return (int)(dpaa2_dq_flags(dq) & DPAA2_DQ_STAT_VOLATILE);
}
/** * dpaa2_dq_is_pull_complete() - Check whether the pull command is completed. * @dq: the dequeue result * * Return boolean.
*/ staticinlinebool dpaa2_dq_is_pull_complete(conststruct dpaa2_dq *dq)
{ return !!(dpaa2_dq_flags(dq) & DPAA2_DQ_STAT_EXPIRED);
}
/** * dpaa2_dq_seqnum() - Get the seqnum field in dequeue response * @dq: the dequeue result * * seqnum is valid only if VALIDFRAME flag is TRUE * * Return seqnum.
*/ staticinline u16 dpaa2_dq_seqnum(conststruct dpaa2_dq *dq)
{ return le16_to_cpu(dq->dq.seqnum);
}
/** * dpaa2_dq_odpid() - Get the odpid field in dequeue response * @dq: the dequeue result * * odpid is valid only if ODPVALID flag is TRUE. * * Return odpid.
*/ staticinline u16 dpaa2_dq_odpid(conststruct dpaa2_dq *dq)
{ return le16_to_cpu(dq->dq.oprid);
}
/** * dpaa2_dq_fqid() - Get the fqid in dequeue response * @dq: the dequeue result * * Return fqid.
*/ staticinline u32 dpaa2_dq_fqid(conststruct dpaa2_dq *dq)
{ return le32_to_cpu(dq->dq.fqid) & DQ_FQID_MASK;
}
/** * dpaa2_dq_byte_count() - Get the byte count in dequeue response * @dq: the dequeue result * * Return the byte count remaining in the FQ.
*/ staticinline u32 dpaa2_dq_byte_count(conststruct dpaa2_dq *dq)
{ return le32_to_cpu(dq->dq.fq_byte_cnt);
}
/** * dpaa2_dq_frame_count() - Get the frame count in dequeue response * @dq: the dequeue result * * Return the frame count remaining in the FQ.
*/ staticinline u32 dpaa2_dq_frame_count(conststruct dpaa2_dq *dq)
{ return le32_to_cpu(dq->dq.fq_frm_cnt) & DQ_FRAME_COUNT_MASK;
}
/** * dpaa2_dq_fd_ctx() - Get the frame queue context in dequeue response * @dq: the dequeue result * * Return the frame queue context.
*/ staticinline u64 dpaa2_dq_fqd_ctx(conststruct dpaa2_dq *dq)
{ return le64_to_cpu(dq->dq.fqd_ctx);
}
/** * dpaa2_dq_fd() - Get the frame descriptor in dequeue response * @dq: the dequeue result * * Return the frame descriptor.
*/ staticinlineconststruct dpaa2_fd *dpaa2_dq_fd(conststruct dpaa2_dq *dq)
{ return (conststruct dpaa2_fd *)&dq->dq.fd[0];
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.