Lines Matching refs:rcd

280 static inline void *qib_get_egrbuf(const struct qib_ctxtdata *rcd, u32 etail)  in qib_get_egrbuf()  argument
282 const u32 chunk = etail >> rcd->rcvegrbufs_perchunk_shift; in qib_get_egrbuf()
283 const u32 idx = etail & ((u32)rcd->rcvegrbufs_perchunk - 1); in qib_get_egrbuf()
285 return rcd->rcvegrbuf[chunk] + (idx << rcd->dd->rcvegrbufsize_shift); in qib_get_egrbuf()
292 static u32 qib_rcv_hdrerr(struct qib_ctxtdata *rcd, struct qib_pportdata *ppd, in qib_rcv_hdrerr() argument
406 &rcd->qp_wait_list); in qib_rcv_hdrerr()
441 u32 qib_kreceive(struct qib_ctxtdata *rcd, u32 *llic, u32 *npkts) in qib_kreceive() argument
443 struct qib_devdata *dd = rcd->dd; in qib_kreceive()
444 struct qib_pportdata *ppd = rcd->ppd; in qib_kreceive()
456 l = rcd->head; in qib_kreceive()
457 rhf_addr = (__le32 *) rcd->rcvhdrq + l + dd->rhf_offset; in qib_kreceive()
461 if (seq != rcd->seq_cnt) in qib_kreceive()
465 hdrqtail = qib_get_rcvhdrtail(rcd); in qib_kreceive()
485 ebuf = qib_get_egrbuf(rcd, etail); in qib_kreceive()
509 crcs += qib_rcv_hdrerr(rcd, ppd, rcd->ctxt, eflags, l, in qib_kreceive()
512 qib_ib_rcv(rcd, hdr, ebuf, tlen); in qib_kreceive()
525 rhf_addr = (__le32 *) rcd->rcvhdrq + l + dd->rhf_offset; in qib_kreceive()
529 if (++rcd->seq_cnt > 13) in qib_kreceive()
530 rcd->seq_cnt = 1; in qib_kreceive()
531 if (seq != rcd->seq_cnt) in qib_kreceive()
543 dd->f_update_usrhead(rcd, lval, updegr, etail, i); in qib_kreceive()
548 rcd->head = l; in qib_kreceive()
554 list_for_each_entry_safe(qp, nqp, &rcd->qp_wait_list, rspwait) { in qib_kreceive()
582 lval = (u64)rcd->head | dd->rhdrhead_intr_off; in qib_kreceive()
583 dd->f_update_usrhead(rcd, lval, updegr, etail, i); in qib_kreceive()
763 if (dd->rcd) in qib_reset_device()
765 if (!dd->rcd[i] || !dd->rcd[i]->cnt) in qib_reset_device()