Lines Matching refs:p_ent

58 			 struct qed_spq_entry *p_ent,  in qed_spq_block()  argument
65 comp_done = (struct qed_spq_comp_done *)p_ent->comp_cb.cookie; in qed_spq_block()
113 struct qed_spq_entry *p_ent) in qed_spq_fill_entry() argument
115 p_ent->flags = 0; in qed_spq_fill_entry()
117 switch (p_ent->comp_mode) { in qed_spq_fill_entry()
120 p_ent->comp_cb.function = qed_spq_blocking_cb; in qed_spq_fill_entry()
126 p_ent->comp_mode); in qed_spq_fill_entry()
132 p_ent->elem.hdr.cid, in qed_spq_fill_entry()
133 p_ent->elem.hdr.cmd_id, in qed_spq_fill_entry()
134 p_ent->elem.hdr.protocol_id, in qed_spq_fill_entry()
135 p_ent->elem.data_ptr.hi, in qed_spq_fill_entry()
136 p_ent->elem.data_ptr.lo, in qed_spq_fill_entry()
137 D_TRINE(p_ent->comp_mode, QED_SPQ_MODE_EBLOCK, in qed_spq_fill_entry()
194 struct qed_spq_entry *p_ent) in qed_spq_hw_post() argument
201 p_ent->elem.hdr.echo = cpu_to_le16(echo); in qed_spq_hw_post()
208 *elem = p_ent->elem; /* struct assignment */ in qed_spq_hw_post()
523 struct qed_spq_entry *p_ent = NULL; in qed_spq_get_entry() local
529 p_ent = kzalloc(sizeof(*p_ent), GFP_ATOMIC); in qed_spq_get_entry()
530 if (!p_ent) { in qed_spq_get_entry()
534 p_ent->queue = &p_spq->unlimited_pending; in qed_spq_get_entry()
536 p_ent = list_first_entry(&p_spq->free_pool, in qed_spq_get_entry()
539 list_del(&p_ent->list); in qed_spq_get_entry()
540 p_ent->queue = &p_spq->pending; in qed_spq_get_entry()
543 *pp_ent = p_ent; in qed_spq_get_entry()
552 struct qed_spq_entry *p_ent) in __qed_spq_return_entry() argument
554 list_add_tail(&p_ent->list, &p_hwfn->p_spq->free_pool); in __qed_spq_return_entry()
558 struct qed_spq_entry *p_ent) in qed_spq_return_entry() argument
561 __qed_spq_return_entry(p_hwfn, p_ent); in qed_spq_return_entry()
581 struct qed_spq_entry *p_ent, in qed_spq_add_entry() argument
586 if (p_ent->queue == &p_spq->unlimited_pending) { in qed_spq_add_entry()
589 list_add_tail(&p_ent->list, &p_spq->unlimited_pending); in qed_spq_add_entry()
605 p_ent->elem.data_ptr = p_en2->elem.data_ptr; in qed_spq_add_entry()
607 *p_en2 = *p_ent; in qed_spq_add_entry()
609 kfree(p_ent); in qed_spq_add_entry()
611 p_ent = p_en2; in qed_spq_add_entry()
618 list_add_tail(&p_ent->list, &p_spq->pending); in qed_spq_add_entry()
622 list_add(&p_ent->list, &p_spq->pending); in qed_spq_add_entry()
654 struct qed_spq_entry *p_ent = in qed_spq_post_list() local
656 list_del(&p_ent->list); in qed_spq_post_list()
657 list_add_tail(&p_ent->list, &p_spq->completion_pending); in qed_spq_post_list()
660 rc = qed_spq_hw_post(p_hwfn, p_spq, p_ent); in qed_spq_post_list()
662 list_del(&p_ent->list); in qed_spq_post_list()
663 __qed_spq_return_entry(p_hwfn, p_ent); in qed_spq_post_list()
674 struct qed_spq_entry *p_ent = NULL; in qed_spq_pend_post() local
680 p_ent = list_first_entry(&p_spq->unlimited_pending, in qed_spq_pend_post()
683 if (!p_ent) in qed_spq_pend_post()
686 list_del(&p_ent->list); in qed_spq_pend_post()
688 qed_spq_add_entry(p_hwfn, p_ent, p_ent->priority); in qed_spq_pend_post()
696 struct qed_spq_entry *p_ent, in qed_spq_post() argument
706 if (!p_ent) { in qed_spq_post()
712 rc = qed_spq_fill_entry(p_hwfn, p_ent); in qed_spq_post()
721 rc = qed_spq_add_entry(p_hwfn, p_ent, p_ent->priority); in qed_spq_post()
737 if (p_ent->comp_mode == QED_SPQ_MODE_EBLOCK) { in qed_spq_post()
743 rc = qed_spq_block(p_hwfn, p_ent, fw_return_code); in qed_spq_post()
748 qed_spq_return_entry(p_hwfn, p_ent); in qed_spq_post()
754 list_del(&p_ent->list); in qed_spq_post()
760 __qed_spq_return_entry(p_hwfn, p_ent); in qed_spq_post()
772 struct qed_spq_entry *p_ent = NULL; in qed_spq_completion() local
785 list_for_each_entry_safe(p_ent, tmp, &p_spq->completion_pending, in qed_spq_completion()
787 if (p_ent->elem.hdr.echo == echo) { in qed_spq_completion()
790 list_del(&p_ent->list); in qed_spq_completion()
809 found = p_ent; in qed_spq_completion()
819 le16_to_cpu(p_ent->elem.hdr.echo)); in qed_spq_completion()
834 p_ent->comp_cb.function, p_ent->comp_cb.cookie); in qed_spq_completion()