Searched refs:Q_IDX (Results 1 – 2 of 2) sorted by relevance
/Linux-v5.10/drivers/iommu/arm/arm-smmu-v3/ |
D | arm-smmu-v3.c | 118 prod = Q_IDX(q, q->prod); in queue_has_space() 119 cons = Q_IDX(q, q->cons); in queue_has_space() 131 return Q_IDX(q, q->prod) == Q_IDX(q, q->cons) && in queue_full() 137 return Q_IDX(q, q->prod) == Q_IDX(q, q->cons) && in queue_empty() 144 (Q_IDX(q, q->cons) > Q_IDX(q, prod))) || in queue_consumed() 146 (Q_IDX(q, q->cons) <= Q_IDX(q, prod))); in queue_consumed() 161 u32 cons = (Q_WRP(q, q->cons) | Q_IDX(q, q->cons)) + 1; in queue_inc_cons() 162 q->cons = Q_OVF(q->cons) | Q_WRP(q, cons) | Q_IDX(q, cons); in queue_inc_cons() 186 u32 prod = (Q_WRP(q, q->prod) | Q_IDX(q, q->prod)) + n; in queue_inc_prod_n() 187 return Q_OVF(q->prod) | Q_WRP(q, prod) | Q_IDX(q, prod); in queue_inc_prod_n() [all …]
|
D | arm-smmu-v3.h | 169 #define Q_IDX(llq, p) ((p) & ((1 << (llq)->max_n_shift) - 1)) macro 174 Q_IDX(&((q)->llq), p) * \
|