Lines Matching refs:txq
2878 struct bna_txq *txq; in bna_tx_sm_started_entry() local
2881 list_for_each_entry(txq, &tx->txq_q, qe) { in bna_tx_sm_started_entry()
2882 txq->tcb->priority = txq->priority; in bna_tx_sm_started_entry()
2884 bna_ib_start(tx->bna, &txq->ib, is_regular); in bna_tx_sm_started_entry()
3097 struct bna_txq *txq = NULL; in bna_bfi_tx_enet_start() local
3107 txq = txq ? list_next_entry(txq, qe) in bna_bfi_tx_enet_start()
3109 bfi_enet_datapath_q_init(&cfg_req->q_cfg[i].q.q, &txq->qpt); in bna_bfi_tx_enet_start()
3110 cfg_req->q_cfg[i].q.priority = txq->priority; in bna_bfi_tx_enet_start()
3113 txq->ib.ib_seg_host_addr.lsb; in bna_bfi_tx_enet_start()
3115 txq->ib.ib_seg_host_addr.msb; in bna_bfi_tx_enet_start()
3117 htons((u16)txq->ib.intr_vector); in bna_bfi_tx_enet_start()
3124 cfg_req->ib_cfg.msix = (txq->ib.intr_type == BNA_INTR_T_MSIX) in bna_bfi_tx_enet_start()
3127 htonl((u32)txq->ib.coalescing_timeo); in bna_bfi_tx_enet_start()
3129 htonl((u32)txq->ib.interpkt_timeo); in bna_bfi_tx_enet_start()
3130 cfg_req->ib_cfg.inter_pkt_count = (u8)txq->ib.interpkt_count; in bna_bfi_tx_enet_start()
3159 struct bna_txq *txq; in bna_tx_enet_stop() local
3162 list_for_each_entry(txq, &tx->txq_q, qe) in bna_tx_enet_stop()
3163 bna_ib_stop(tx->bna, &txq->ib); in bna_tx_enet_stop()
3169 bna_txq_qpt_setup(struct bna_txq *txq, int page_count, int page_size, in bna_txq_qpt_setup() argument
3179 txq->qpt.hw_qpt_ptr.lsb = qpt_mem->dma.lsb; in bna_txq_qpt_setup()
3180 txq->qpt.hw_qpt_ptr.msb = qpt_mem->dma.msb; in bna_txq_qpt_setup()
3181 txq->qpt.kv_qpt_ptr = qpt_mem->kva; in bna_txq_qpt_setup()
3182 txq->qpt.page_count = page_count; in bna_txq_qpt_setup()
3183 txq->qpt.page_size = page_size; in bna_txq_qpt_setup()
3185 txq->tcb->sw_qpt = (void **) swqpt_mem->kva; in bna_txq_qpt_setup()
3186 txq->tcb->sw_q = page_mem->kva; in bna_txq_qpt_setup()
3192 txq->tcb->sw_qpt[i] = kva; in bna_txq_qpt_setup()
3196 ((struct bna_dma_addr *)txq->qpt.kv_qpt_ptr)[i].lsb = in bna_txq_qpt_setup()
3198 ((struct bna_dma_addr *)txq->qpt.kv_qpt_ptr)[i].msb = in bna_txq_qpt_setup()
3225 struct bna_txq *txq; in bna_tx_free() local
3229 txq = list_first_entry(&tx->txq_q, struct bna_txq, qe); in bna_tx_free()
3230 txq->tcb = NULL; in bna_tx_free()
3231 txq->tx = NULL; in bna_tx_free()
3232 list_move_tail(&txq->qe, &tx_mod->txq_free_q); in bna_tx_free()
3281 struct bna_txq *txq = NULL; in bna_bfi_tx_enet_start_rsp() local
3289 for (i = 0, txq = list_first_entry(&tx->txq_q, struct bna_txq, qe); in bna_bfi_tx_enet_start_rsp()
3290 i < tx->num_txq; i++, txq = list_next_entry(txq, qe)) { in bna_bfi_tx_enet_start_rsp()
3292 txq->tcb->i_dbell->doorbell_addr = in bna_bfi_tx_enet_start_rsp()
3295 txq->tcb->q_dbell = in bna_bfi_tx_enet_start_rsp()
3298 txq->hw_id = cfg_rsp->q_handles[i].hw_qid; in bna_bfi_tx_enet_start_rsp()
3301 (*txq->tcb->hw_consumer_index) = 0; in bna_bfi_tx_enet_start_rsp()
3302 txq->tcb->producer_index = txq->tcb->consumer_index = 0; in bna_bfi_tx_enet_start_rsp()
3379 struct bna_txq *txq; in bna_tx_create() local
3409 txq = list_first_entry(&tx_mod->txq_free_q, struct bna_txq, qe); in bna_tx_create()
3410 list_move_tail(&txq->qe, &tx->txq_q); in bna_tx_create()
3411 txq->tx = tx; in bna_tx_create()
3449 list_for_each_entry(txq, &tx->txq_q, qe) { in bna_tx_create()
3450 txq->tcb = (struct bna_tcb *) in bna_tx_create()
3452 txq->tx_packets = 0; in bna_tx_create()
3453 txq->tx_bytes = 0; in bna_tx_create()
3456 txq->ib.ib_seg_host_addr.lsb = in bna_tx_create()
3458 txq->ib.ib_seg_host_addr.msb = in bna_tx_create()
3460 txq->ib.ib_seg_host_addr_kva = in bna_tx_create()
3462 txq->ib.intr_type = intr_info->intr_type; in bna_tx_create()
3463 txq->ib.intr_vector = (intr_info->num == 1) ? in bna_tx_create()
3467 txq->ib.intr_vector = BIT(txq->ib.intr_vector); in bna_tx_create()
3468 txq->ib.coalescing_timeo = tx_cfg->coalescing_timeo; in bna_tx_create()
3469 txq->ib.interpkt_timeo = BFI_TX_INTERPKT_TIMEO; in bna_tx_create()
3470 txq->ib.interpkt_count = BFI_TX_INTERPKT_COUNT; in bna_tx_create()
3474 txq->tcb->q_depth = tx_cfg->txq_depth; in bna_tx_create()
3475 txq->tcb->unmap_q = (void *) in bna_tx_create()
3477 txq->tcb->hw_consumer_index = in bna_tx_create()
3478 (u32 *)txq->ib.ib_seg_host_addr_kva; in bna_tx_create()
3479 txq->tcb->i_dbell = &txq->ib.door_bell; in bna_tx_create()
3480 txq->tcb->intr_type = txq->ib.intr_type; in bna_tx_create()
3481 txq->tcb->intr_vector = txq->ib.intr_vector; in bna_tx_create()
3482 txq->tcb->txq = txq; in bna_tx_create()
3483 txq->tcb->bnad = bnad; in bna_tx_create()
3484 txq->tcb->id = i; in bna_tx_create()
3487 bna_txq_qpt_setup(txq, page_count, PAGE_SIZE, in bna_tx_create()
3495 (tx->tcb_setup_cbfn)(bna->bnad, txq->tcb); in bna_tx_create()
3498 txq->priority = txq->tcb->id; in bna_tx_create()
3500 txq->priority = tx_mod->default_prio; in bna_tx_create()
3521 struct bna_txq *txq; in bna_tx_destroy() local
3523 list_for_each_entry(txq, &tx->txq_q, qe) in bna_tx_destroy()
3525 (tx->tcb_destroy_cbfn)(tx->bna->bnad, txq->tcb); in bna_tx_destroy()
3595 tx_mod->txq = (struct bna_txq *) in bna_tx_mod_init()
3606 list_add_tail(&tx_mod->txq[i].qe, &tx_mod->txq_free_q); in bna_tx_mod_init()
3671 struct bna_txq *txq; in bna_tx_coalescing_timeo_set() local
3673 list_for_each_entry(txq, &tx->txq_q, qe) in bna_tx_coalescing_timeo_set()
3674 bna_ib_coalescing_timeo_set(&txq->ib, coalescing_timeo); in bna_tx_coalescing_timeo_set()