• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/net/ehea/

Lines Matching refs:cqe

519 static inline int ehea_check_cqe(struct ehea_cqe *cqe, int *rq_num)
521 *rq_num = (cqe->type & EHEA_CQE_TYPE_RQ) >> 5;
522 if ((cqe->status & EHEA_CQE_STAT_ERR_MASK) == 0)
524 if (((cqe->status & EHEA_CQE_STAT_ERR_TCP) != 0) &&
525 (cqe->header_length == 0))
531 struct sk_buff *skb, struct ehea_cqe *cqe)
533 int length = cqe->num_bytes_transfered - 4; /*remove CRC */
540 if (cqe->status & EHEA_CQE_BLIND_CKSUM) {
542 skb->csum = csum_unfold(~cqe->inet_checksum_value);
549 struct ehea_cqe *cqe)
551 int skb_index = EHEA_BMASK_GET(EHEA_WR_ID_INDEX, cqe->wr_id);
602 struct ehea_cqe *cqe, int *processed_rq2,
607 if (cqe->status & EHEA_CQE_STAT_ERR_TCP)
609 if (cqe->status & EHEA_CQE_STAT_ERR_IP)
611 if (cqe->status & EHEA_CQE_STAT_ERR_CRC)
616 skb = get_skb_by_index(pr->rq2_skba.arr, pr->rq2_skba.len, cqe);
620 skb = get_skb_by_index(pr->rq3_skba.arr, pr->rq3_skba.len, cqe);
624 if (cqe->status & EHEA_CQE_STAT_FAT_ERR_MASK) {
628 ehea_dump(cqe, sizeof(*cqe), "CQE");
640 struct ehea_cqe *cqe = priv;
645 if (!cqe->header_length)
668 static void ehea_proc_skb(struct ehea_port_res *pr, struct ehea_cqe *cqe,
671 int vlan_extracted = ((cqe->status & EHEA_CQE_VLAN_TAG_XTRACT) &&
678 cqe->vlan_tag,
679 cqe);
681 lro_receive_skb(&pr->lro_mgr, skb, cqe);
685 cqe->vlan_tag);
697 struct ehea_cqe *cqe;
711 cqe = ehea_poll_rq1(qp, &wqe_index);
712 while ((processed < budget) && cqe) {
717 ehea_dump(cqe, sizeof(*cqe), "CQE");
721 if (!ehea_check_cqe(cqe, &rq)) {
736 skb_copy_to_linear_data(skb, ((char *)cqe) + 64,
737 cqe->num_bytes_transfered - 4);
738 ehea_fill_skb(dev, skb, cqe);
742 skb_arr_rq2_len, cqe);
748 ehea_fill_skb(dev, skb, cqe);
753 skb_arr_rq3_len, cqe);
759 ehea_fill_skb(dev, skb, cqe);
763 ehea_proc_skb(pr, cqe, skb);
766 port_reset = ehea_treat_poll_error(pr, rq, cqe,
772 cqe = ehea_poll_rq1(qp, &wqe_index);
837 struct ehea_cqe *cqe;
844 cqe = ehea_poll_cq(send_cq);
845 while (cqe && (quota > 0)) {
851 if (cqe->wr_id == SWQE_RESTART_CHECK) {
857 if (cqe->status & EHEA_CQE_STAT_ERR_MASK) {
859 cqe->status);
862 ehea_dump(cqe, sizeof(*cqe), "Send CQE");
864 if (cqe->status & EHEA_CQE_STAT_RESET_MASK) {
872 ehea_dump(cqe, sizeof(*cqe), "CQE");
874 if (likely(EHEA_BMASK_GET(EHEA_WR_ID_TYPE, cqe->wr_id)
877 index = EHEA_BMASK_GET(EHEA_WR_ID_INDEX, cqe->wr_id);
883 swqe_av += EHEA_BMASK_GET(EHEA_WR_ID_REFILL, cqe->wr_id);
886 cqe = ehea_poll_cq(send_cq);
901 return cqe;
912 struct ehea_cqe *cqe;
932 cqe = ehea_poll_rq1(pr->qp, &wqe_index);
935 if (!cqe && !cqe_skb)