Lines Matching refs:iwceq
462 struct irdma_ceq *iwceq = from_tasklet(iwceq, t, dpc_tasklet); in irdma_ceq_dpc() local
463 struct irdma_pci_f *rf = iwceq->rf; in irdma_ceq_dpc()
465 irdma_process_ceq(rf, iwceq); in irdma_ceq_dpc()
466 irdma_ena_intr(&rf->sc_dev, iwceq->msix_idx); in irdma_ceq_dpc()
546 struct irdma_ceq *iwceq = data; in irdma_ceq_handler() local
548 if (iwceq->irq != irq) in irdma_ceq_handler()
549 ibdev_err(to_ibdev(&iwceq->rf->sc_dev), "expected irq = %d received irq = %d\n", in irdma_ceq_handler()
550 iwceq->irq, irq); in irdma_ceq_handler()
551 tasklet_schedule(&iwceq->dpc_tasklet); in irdma_ceq_handler()
575 struct irdma_ceq *iwceq = (struct irdma_ceq *)dev_id; in irdma_destroy_irq() local
577 tasklet_kill(&iwceq->dpc_tasklet); in irdma_destroy_irq()
663 static void irdma_destroy_ceq(struct irdma_pci_f *rf, struct irdma_ceq *iwceq) in irdma_destroy_ceq() argument
671 status = irdma_sc_ceq_destroy(&iwceq->sc_ceq, 0, 1); in irdma_destroy_ceq()
677 status = irdma_sc_cceq_destroy_done(&iwceq->sc_ceq); in irdma_destroy_ceq()
682 dma_free_coherent(dev->hw->device, iwceq->mem.size, iwceq->mem.va, in irdma_destroy_ceq()
683 iwceq->mem.pa); in irdma_destroy_ceq()
684 iwceq->mem.va = NULL; in irdma_destroy_ceq()
695 struct irdma_ceq *iwceq = rf->ceqlist; in irdma_del_ceq_0() local
706 irdma_destroy_irq(rf, msix_vec, iwceq); in irdma_del_ceq_0()
709 irdma_destroy_ceq(rf, iwceq); in irdma_del_ceq_0()
723 struct irdma_ceq *iwceq = &rf->ceqlist[1]; in irdma_del_ceqs() local
732 for (i = 1; i < rf->ceqs_count; i++, msix_vec++, iwceq++) { in irdma_del_ceqs()
735 irdma_destroy_irq(rf, msix_vec, iwceq); in irdma_del_ceqs()
736 irdma_cqp_ceq_cmd(&rf->sc_dev, &iwceq->sc_ceq, in irdma_del_ceqs()
738 dma_free_coherent(rf->sc_dev.hw->device, iwceq->mem.size, in irdma_del_ceqs()
739 iwceq->mem.va, iwceq->mem.pa); in irdma_del_ceqs()
740 iwceq->mem.va = NULL; in irdma_del_ceqs()
1114 static int irdma_cfg_ceq_vector(struct irdma_pci_f *rf, struct irdma_ceq *iwceq, in irdma_cfg_ceq_vector() argument
1129 tasklet_setup(&iwceq->dpc_tasklet, irdma_ceq_dpc); in irdma_cfg_ceq_vector()
1132 msix_vec->name, iwceq); in irdma_cfg_ceq_vector()
1187 static int irdma_create_ceq(struct irdma_pci_f *rf, struct irdma_ceq *iwceq, in irdma_create_ceq() argument
1196 iwceq->rf = rf; in irdma_create_ceq()
1199 iwceq->mem.size = ALIGN(sizeof(struct irdma_ceqe) * ceq_size, in irdma_create_ceq()
1201 iwceq->mem.va = dma_alloc_coherent(dev->hw->device, iwceq->mem.size, in irdma_create_ceq()
1202 &iwceq->mem.pa, GFP_KERNEL); in irdma_create_ceq()
1203 if (!iwceq->mem.va) in irdma_create_ceq()
1207 info.ceqe_base = iwceq->mem.va; in irdma_create_ceq()
1208 info.ceqe_pa = iwceq->mem.pa; in irdma_create_ceq()
1210 iwceq->sc_ceq.ceq_id = ceq_id; in irdma_create_ceq()
1213 status = irdma_sc_ceq_init(&iwceq->sc_ceq, &info); in irdma_create_ceq()
1216 status = irdma_cqp_ceq_cmd(&rf->sc_dev, &iwceq->sc_ceq, in irdma_create_ceq()
1219 status = irdma_sc_cceq_create(&iwceq->sc_ceq, 0); in irdma_create_ceq()
1223 dma_free_coherent(dev->hw->device, iwceq->mem.size, in irdma_create_ceq()
1224 iwceq->mem.va, iwceq->mem.pa); in irdma_create_ceq()
1225 iwceq->mem.va = NULL; in irdma_create_ceq()
1241 struct irdma_ceq *iwceq; in irdma_setup_ceq_0() local
1254 iwceq = &rf->ceqlist[0]; in irdma_setup_ceq_0()
1255 status = irdma_create_ceq(rf, iwceq, 0, &rf->default_vsi); in irdma_setup_ceq_0()
1262 spin_lock_init(&iwceq->ce_lock); in irdma_setup_ceq_0()
1265 iwceq->irq = msix_vec->irq; in irdma_setup_ceq_0()
1266 iwceq->msix_idx = msix_vec->idx; in irdma_setup_ceq_0()
1267 status = irdma_cfg_ceq_vector(rf, iwceq, 0, msix_vec); in irdma_setup_ceq_0()
1269 irdma_destroy_ceq(rf, iwceq); in irdma_setup_ceq_0()
1300 struct irdma_ceq *iwceq; in irdma_setup_ceqs() local
1308 iwceq = &rf->ceqlist[ceq_id]; in irdma_setup_ceqs()
1309 status = irdma_create_ceq(rf, iwceq, ceq_id, vsi); in irdma_setup_ceqs()
1315 spin_lock_init(&iwceq->ce_lock); in irdma_setup_ceqs()
1317 iwceq->irq = msix_vec->irq; in irdma_setup_ceqs()
1318 iwceq->msix_idx = msix_vec->idx; in irdma_setup_ceqs()
1319 status = irdma_cfg_ceq_vector(rf, iwceq, ceq_id, msix_vec); in irdma_setup_ceqs()
1321 irdma_destroy_ceq(rf, iwceq); in irdma_setup_ceqs()