Lines Matching defs:qinfo
75 static u32 msgq_inc(const struct bcm_vk_sync_qinfo *qinfo, u32 idx, u32 inc)
77 return ((idx + inc) & qinfo->q_mask);
81 struct vk_msg_blk __iomem *msgq_blk_addr(const struct bcm_vk_sync_qinfo *qinfo,
84 return qinfo->q_start + (VK_MSGQ_BLK_SIZE * idx);
88 const struct bcm_vk_sync_qinfo *qinfo)
95 return ((wr_idx - rd_idx) & qinfo->q_mask);
100 const struct bcm_vk_sync_qinfo *qinfo)
102 return (qinfo->q_size - msgq_occupied(msgq, qinfo) - 1);
462 struct bcm_vk_sync_qinfo *qinfo;
492 qinfo = &chan->sync_qinfo[j];
494 qinfo->q_start = vk->bar[BAR_1] + msgq_start;
495 qinfo->q_size = msgq_size;
497 qinfo->q_low = qinfo->q_size >> 1;
498 qinfo->q_mask = qinfo->q_size - 1;
499 qinfo->q_db_offset = msgq_db_offset;
547 struct bcm_vk_sync_qinfo *qinfo;
556 qinfo = &chan->sync_qinfo[q_num];
557 avail = msgq_avail_space(msgq, qinfo);
558 if (avail < qinfo->q_low) {
560 avail, qinfo->q_size);
587 struct bcm_vk_sync_qinfo *qinfo = &chan->sync_qinfo[q_num];
589 vkwrite32(vk, db_val, BAR_0, qinfo->q_db_offset);
601 struct bcm_vk_sync_qinfo *qinfo;
619 qinfo = &chan->sync_qinfo[q_num];
623 avail = msgq_avail_space(msgq, qinfo);
633 avail = msgq_avail_space(msgq, qinfo);
644 if (wr_idx >= qinfo->q_size) {
646 wr_idx, qinfo->q_size);
652 dst = msgq_blk_addr(qinfo, wr_idx);
657 wr_idx = msgq_inc(qinfo, wr_idx, 1);
658 dst = msgq_blk_addr(qinfo, wr_idx);
671 msgq_occupied(msgq, qinfo),
672 msgq_avail_space(msgq, qinfo),
783 struct bcm_vk_sync_qinfo *qinfo;
804 qinfo = &chan->sync_qinfo[q_num];
805 max_msg_to_process = BCM_VK_MSG_PROC_MAX_LOOP * qinfo->q_size;
822 src = msgq_blk_addr(qinfo, rd_idx & qinfo->q_mask);
825 if ((rd_idx >= qinfo->q_size) ||
826 (src_size > (qinfo->q_size - 1))) {
829 rd_idx, src_size, qinfo->q_size);
845 rd_idx = msgq_inc(qinfo, rd_idx, 1);
846 src = msgq_blk_addr(qinfo, rd_idx);
869 msgq_occupied(msgq, qinfo),
870 msgq_avail_space(msgq, qinfo),