Lines Matching refs:p_tx

302 	struct qed_ll2_tx_queue *p_tx;  in qed_ll2_txq_flush()  local
310 p_tx = &p_ll2_conn->tx_queue; in qed_ll2_txq_flush()
312 spin_lock_irqsave(&p_tx->lock, flags); in qed_ll2_txq_flush()
313 while (!list_empty(&p_tx->active_descq)) { in qed_ll2_txq_flush()
314 p_pkt = list_first_entry(&p_tx->active_descq, in qed_ll2_txq_flush()
320 b_last_packet = list_empty(&p_tx->active_descq); in qed_ll2_txq_flush()
321 list_add_tail(&p_pkt->list_entry, &p_tx->free_descq); in qed_ll2_txq_flush()
322 spin_unlock_irqrestore(&p_tx->lock, flags); in qed_ll2_txq_flush()
330 p_tx->cur_completing_packet = *p_pkt; in qed_ll2_txq_flush()
331 p_tx->cur_completing_bd_idx = 1; in qed_ll2_txq_flush()
333 p_tx->cur_completing_bd_idx == p_pkt->bd_used; in qed_ll2_txq_flush()
342 spin_lock_irqsave(&p_tx->lock, flags); in qed_ll2_txq_flush()
344 spin_unlock_irqrestore(&p_tx->lock, flags); in qed_ll2_txq_flush()
350 struct qed_ll2_tx_queue *p_tx = &p_ll2_conn->tx_queue; in qed_ll2_txq_completion() local
357 spin_lock_irqsave(&p_tx->lock, flags); in qed_ll2_txq_completion()
358 if (p_tx->b_completing_packet) { in qed_ll2_txq_completion()
363 new_idx = le16_to_cpu(*p_tx->p_fw_cons); in qed_ll2_txq_completion()
364 num_bds = ((s16)new_idx - (s16)p_tx->bds_idx); in qed_ll2_txq_completion()
366 if (list_empty(&p_tx->active_descq)) in qed_ll2_txq_completion()
369 p_pkt = list_first_entry(&p_tx->active_descq, in qed_ll2_txq_completion()
374 p_tx->b_completing_packet = true; in qed_ll2_txq_completion()
375 p_tx->cur_completing_packet = *p_pkt; in qed_ll2_txq_completion()
386 p_tx->bds_idx += num_bds_in_packet; in qed_ll2_txq_completion()
388 qed_chain_consume(&p_tx->txq_chain); in qed_ll2_txq_completion()
390 p_tx->cur_completing_bd_idx = 1; in qed_ll2_txq_completion()
391 b_last_frag = p_tx->cur_completing_bd_idx == p_pkt->bd_used; in qed_ll2_txq_completion()
392 list_add_tail(&p_pkt->list_entry, &p_tx->free_descq); in qed_ll2_txq_completion()
394 spin_unlock_irqrestore(&p_tx->lock, flags); in qed_ll2_txq_completion()
402 spin_lock_irqsave(&p_tx->lock, flags); in qed_ll2_txq_completion()
405 p_tx->b_completing_packet = false; in qed_ll2_txq_completion()
408 spin_unlock_irqrestore(&p_tx->lock, flags); in qed_ll2_txq_completion()
856 struct qed_ll2_tx_queue *p_tx = &p_ll2_conn->tx_queue; in qed_ll2_lb_txq_completion() local
866 new_idx = le16_to_cpu(*p_tx->p_fw_cons); in qed_ll2_lb_txq_completion()
867 num_bds = ((s16)new_idx - (s16)p_tx->bds_idx); in qed_ll2_lb_txq_completion()
873 if (list_empty(&p_tx->active_descq)) in qed_ll2_lb_txq_completion()
876 p_pkt = list_first_entry(&p_tx->active_descq, in qed_ll2_lb_txq_completion()
891 p_tx->bds_idx++; in qed_ll2_lb_txq_completion()
892 qed_chain_consume(&p_tx->txq_chain); in qed_ll2_lb_txq_completion()
895 list_add_tail(&p_pkt->list_entry, &p_tx->free_descq); in qed_ll2_lb_txq_completion()
997 struct qed_ll2_tx_queue *p_tx = &p_ll2_conn->tx_queue; in qed_sp_ll2_tx_queue_start() local
1027 p_ramrod->sb_index = p_tx->tx_sb_index; in qed_sp_ll2_tx_queue_start()
1033 qed_chain_get_pbl_phys(&p_tx->txq_chain)); in qed_sp_ll2_tx_queue_start()
1034 pbl_size = qed_chain_get_page_cnt(&p_tx->txq_chain); in qed_sp_ll2_tx_queue_start()
1466 struct qed_ll2_tx_queue *p_tx; in qed_ll2_establish_connection() local
1484 p_tx = &p_ll2_conn->tx_queue; in qed_ll2_establish_connection()
1498 qed_chain_reset(&p_tx->txq_chain); in qed_ll2_establish_connection()
1499 INIT_LIST_HEAD(&p_tx->active_descq); in qed_ll2_establish_connection()
1500 INIT_LIST_HEAD(&p_tx->free_descq); in qed_ll2_establish_connection()
1501 INIT_LIST_HEAD(&p_tx->sending_descq); in qed_ll2_establish_connection()
1502 spin_lock_init(&p_tx->lock); in qed_ll2_establish_connection()
1503 capacity = qed_chain_get_capacity(&p_tx->txq_chain); in qed_ll2_establish_connection()
1510 p_pkt = p_tx->descq_mem + desc_size * i; in qed_ll2_establish_connection()
1511 list_add_tail(&p_pkt->list_entry, &p_tx->free_descq); in qed_ll2_establish_connection()
1513 p_tx->cur_completing_bd_idx = 0; in qed_ll2_establish_connection()
1514 p_tx->bds_idx = 0; in qed_ll2_establish_connection()
1515 p_tx->b_completing_packet = false; in qed_ll2_establish_connection()
1516 p_tx->cur_send_packet = NULL; in qed_ll2_establish_connection()
1517 p_tx->cur_send_frag_num = 0; in qed_ll2_establish_connection()
1518 p_tx->cur_completing_frag_num = 0; in qed_ll2_establish_connection()
1519 *p_tx->p_fw_cons = 0; in qed_ll2_establish_connection()
1531 p_tx->doorbell_addr = (u8 __iomem *)p_hwfn->doorbells + in qed_ll2_establish_connection()
1660 struct qed_ll2_tx_queue *p_tx, in qed_ll2_prepare_tx_packet_set() argument
1669 p_tx->cur_send_packet = p_curp; in qed_ll2_prepare_tx_packet_set()
1670 p_tx->cur_send_frag_num = 0; in qed_ll2_prepare_tx_packet_set()
1672 p_curp->bds_set[p_tx->cur_send_frag_num].tx_frag = pkt->first_frag; in qed_ll2_prepare_tx_packet_set()
1673 p_curp->bds_set[p_tx->cur_send_frag_num].frag_len = pkt->first_frag_len; in qed_ll2_prepare_tx_packet_set()
1674 p_tx->cur_send_frag_num++; in qed_ll2_prepare_tx_packet_set()
1770 struct qed_ll2_tx_queue *p_tx = &p_ll2_conn->tx_queue; in qed_ll2_tx_packet_notify() local
1792 while (!list_empty(&p_tx->sending_descq)) { in qed_ll2_tx_packet_notify()
1793 p_pkt = list_first_entry(&p_tx->sending_descq, in qed_ll2_tx_packet_notify()
1798 list_move_tail(&p_pkt->list_entry, &p_tx->active_descq); in qed_ll2_tx_packet_notify()
1811 DIRECT_REG_WR(p_tx->doorbell_addr, *((u32 *)&db_msg)); in qed_ll2_tx_packet_notify()
1829 struct qed_ll2_tx_queue *p_tx; in qed_ll2_prepare_tx_packet() local
1837 p_tx = &p_ll2_conn->tx_queue; in qed_ll2_prepare_tx_packet()
1838 p_tx_chain = &p_tx->txq_chain; in qed_ll2_prepare_tx_packet()
1843 spin_lock_irqsave(&p_tx->lock, flags); in qed_ll2_prepare_tx_packet()
1844 if (p_tx->cur_send_packet) { in qed_ll2_prepare_tx_packet()
1850 if (!list_empty(&p_tx->free_descq)) in qed_ll2_prepare_tx_packet()
1851 p_curp = list_first_entry(&p_tx->free_descq, in qed_ll2_prepare_tx_packet()
1862 qed_ll2_prepare_tx_packet_set(p_hwfn, p_tx, p_curp, pkt, notify_fw); in qed_ll2_prepare_tx_packet()
1869 spin_unlock_irqrestore(&p_tx->lock, flags); in qed_ll2_prepare_tx_packet()