Lines Matching refs:txq
2870 struct bna_txq *txq; in bna_tx_sm_started_entry() local
2873 list_for_each_entry(txq, &tx->txq_q, qe) { in bna_tx_sm_started_entry()
2874 txq->tcb->priority = txq->priority; in bna_tx_sm_started_entry()
2876 bna_ib_start(tx->bna, &txq->ib, is_regular); in bna_tx_sm_started_entry()
3089 struct bna_txq *txq = NULL; in bna_bfi_tx_enet_start() local
3099 txq = txq ? list_next_entry(txq, qe) in bna_bfi_tx_enet_start()
3101 bfi_enet_datapath_q_init(&cfg_req->q_cfg[i].q.q, &txq->qpt); in bna_bfi_tx_enet_start()
3102 cfg_req->q_cfg[i].q.priority = txq->priority; in bna_bfi_tx_enet_start()
3105 txq->ib.ib_seg_host_addr.lsb; in bna_bfi_tx_enet_start()
3107 txq->ib.ib_seg_host_addr.msb; in bna_bfi_tx_enet_start()
3109 htons((u16)txq->ib.intr_vector); in bna_bfi_tx_enet_start()
3116 cfg_req->ib_cfg.msix = (txq->ib.intr_type == BNA_INTR_T_MSIX) in bna_bfi_tx_enet_start()
3119 htonl((u32)txq->ib.coalescing_timeo); in bna_bfi_tx_enet_start()
3121 htonl((u32)txq->ib.interpkt_timeo); in bna_bfi_tx_enet_start()
3122 cfg_req->ib_cfg.inter_pkt_count = (u8)txq->ib.interpkt_count; in bna_bfi_tx_enet_start()
3151 struct bna_txq *txq; in bna_tx_enet_stop() local
3154 list_for_each_entry(txq, &tx->txq_q, qe) in bna_tx_enet_stop()
3155 bna_ib_stop(tx->bna, &txq->ib); in bna_tx_enet_stop()
3161 bna_txq_qpt_setup(struct bna_txq *txq, int page_count, int page_size, in bna_txq_qpt_setup() argument
3171 txq->qpt.hw_qpt_ptr.lsb = qpt_mem->dma.lsb; in bna_txq_qpt_setup()
3172 txq->qpt.hw_qpt_ptr.msb = qpt_mem->dma.msb; in bna_txq_qpt_setup()
3173 txq->qpt.kv_qpt_ptr = qpt_mem->kva; in bna_txq_qpt_setup()
3174 txq->qpt.page_count = page_count; in bna_txq_qpt_setup()
3175 txq->qpt.page_size = page_size; in bna_txq_qpt_setup()
3177 txq->tcb->sw_qpt = (void **) swqpt_mem->kva; in bna_txq_qpt_setup()
3178 txq->tcb->sw_q = page_mem->kva; in bna_txq_qpt_setup()
3184 txq->tcb->sw_qpt[i] = kva; in bna_txq_qpt_setup()
3188 ((struct bna_dma_addr *)txq->qpt.kv_qpt_ptr)[i].lsb = in bna_txq_qpt_setup()
3190 ((struct bna_dma_addr *)txq->qpt.kv_qpt_ptr)[i].msb = in bna_txq_qpt_setup()
3217 struct bna_txq *txq; in bna_tx_free() local
3221 txq = list_first_entry(&tx->txq_q, struct bna_txq, qe); in bna_tx_free()
3222 txq->tcb = NULL; in bna_tx_free()
3223 txq->tx = NULL; in bna_tx_free()
3224 list_move_tail(&txq->qe, &tx_mod->txq_free_q); in bna_tx_free()
3273 struct bna_txq *txq = NULL; in bna_bfi_tx_enet_start_rsp() local
3281 for (i = 0, txq = list_first_entry(&tx->txq_q, struct bna_txq, qe); in bna_bfi_tx_enet_start_rsp()
3282 i < tx->num_txq; i++, txq = list_next_entry(txq, qe)) { in bna_bfi_tx_enet_start_rsp()
3284 txq->tcb->i_dbell->doorbell_addr = in bna_bfi_tx_enet_start_rsp()
3287 txq->tcb->q_dbell = in bna_bfi_tx_enet_start_rsp()
3290 txq->hw_id = cfg_rsp->q_handles[i].hw_qid; in bna_bfi_tx_enet_start_rsp()
3293 (*txq->tcb->hw_consumer_index) = 0; in bna_bfi_tx_enet_start_rsp()
3294 txq->tcb->producer_index = txq->tcb->consumer_index = 0; in bna_bfi_tx_enet_start_rsp()
3371 struct bna_txq *txq; in bna_tx_create() local
3401 txq = list_first_entry(&tx_mod->txq_free_q, struct bna_txq, qe); in bna_tx_create()
3402 list_move_tail(&txq->qe, &tx->txq_q); in bna_tx_create()
3403 txq->tx = tx; in bna_tx_create()
3441 list_for_each_entry(txq, &tx->txq_q, qe) { in bna_tx_create()
3442 txq->tcb = (struct bna_tcb *) in bna_tx_create()
3444 txq->tx_packets = 0; in bna_tx_create()
3445 txq->tx_bytes = 0; in bna_tx_create()
3448 txq->ib.ib_seg_host_addr.lsb = in bna_tx_create()
3450 txq->ib.ib_seg_host_addr.msb = in bna_tx_create()
3452 txq->ib.ib_seg_host_addr_kva = in bna_tx_create()
3454 txq->ib.intr_type = intr_info->intr_type; in bna_tx_create()
3455 txq->ib.intr_vector = (intr_info->num == 1) ? in bna_tx_create()
3459 txq->ib.intr_vector = BIT(txq->ib.intr_vector); in bna_tx_create()
3460 txq->ib.coalescing_timeo = tx_cfg->coalescing_timeo; in bna_tx_create()
3461 txq->ib.interpkt_timeo = BFI_TX_INTERPKT_TIMEO; in bna_tx_create()
3462 txq->ib.interpkt_count = BFI_TX_INTERPKT_COUNT; in bna_tx_create()
3466 txq->tcb->q_depth = tx_cfg->txq_depth; in bna_tx_create()
3467 txq->tcb->unmap_q = (void *) in bna_tx_create()
3469 txq->tcb->hw_consumer_index = in bna_tx_create()
3470 (u32 *)txq->ib.ib_seg_host_addr_kva; in bna_tx_create()
3471 txq->tcb->i_dbell = &txq->ib.door_bell; in bna_tx_create()
3472 txq->tcb->intr_type = txq->ib.intr_type; in bna_tx_create()
3473 txq->tcb->intr_vector = txq->ib.intr_vector; in bna_tx_create()
3474 txq->tcb->txq = txq; in bna_tx_create()
3475 txq->tcb->bnad = bnad; in bna_tx_create()
3476 txq->tcb->id = i; in bna_tx_create()
3479 bna_txq_qpt_setup(txq, page_count, PAGE_SIZE, in bna_tx_create()
3487 (tx->tcb_setup_cbfn)(bna->bnad, txq->tcb); in bna_tx_create()
3490 txq->priority = txq->tcb->id; in bna_tx_create()
3492 txq->priority = tx_mod->default_prio; in bna_tx_create()
3513 struct bna_txq *txq; in bna_tx_destroy() local
3515 list_for_each_entry(txq, &tx->txq_q, qe) in bna_tx_destroy()
3517 (tx->tcb_destroy_cbfn)(tx->bna->bnad, txq->tcb); in bna_tx_destroy()
3587 tx_mod->txq = (struct bna_txq *) in bna_tx_mod_init()
3598 list_add_tail(&tx_mod->txq[i].qe, &tx_mod->txq_free_q); in bna_tx_mod_init()
3663 struct bna_txq *txq; in bna_tx_coalescing_timeo_set() local
3665 list_for_each_entry(txq, &tx->txq_q, qe) in bna_tx_coalescing_timeo_set()
3666 bna_ib_coalescing_timeo_set(&txq->ib, coalescing_timeo); in bna_tx_coalescing_timeo_set()