Searched refs:int_params (Results 1 - 3 of 3) sorted by relevance

/linux-4.4.14/drivers/net/ethernet/qlogic/qed/
H A Dqed_main.c302 if (cdev->int_params.out.int_mode == QED_INT_MODE_MSIX) { qed_disable_msix()
304 kfree(cdev->int_params.msix_table); qed_disable_msix()
305 } else if (cdev->int_params.out.int_mode == QED_INT_MODE_MSI) { qed_disable_msix()
309 memset(&cdev->int_params.out, 0, sizeof(struct qed_int_param)); qed_disable_msix()
313 struct qed_int_params *int_params) qed_enable_msix()
317 cnt = int_params->in.num_vectors; qed_enable_msix()
320 int_params->msix_table[i].entry = i; qed_enable_msix()
322 rc = pci_enable_msix_range(cdev->pdev, int_params->msix_table, qed_enable_msix()
323 int_params->in.min_msix_cnt, cnt); qed_enable_msix()
324 if (rc < cnt && rc >= int_params->in.min_msix_cnt && qed_enable_msix()
335 cnt, int_params->in.num_vectors); qed_enable_msix()
337 int_params->msix_table, cnt); qed_enable_msix()
344 int_params->out.int_mode = QED_INT_MODE_MSIX; qed_enable_msix()
345 int_params->out.num_vectors = rc; qed_enable_msix()
359 struct qed_int_params *int_params = &cdev->int_params; qed_set_int_mode() local
363 switch (int_params->in.int_mode) { qed_set_int_mode()
366 cnt = int_params->in.num_vectors; qed_set_int_mode()
367 int_params->msix_table = kcalloc(cnt, sizeof(*tbl), GFP_KERNEL); qed_set_int_mode()
368 if (!int_params->msix_table) { qed_set_int_mode()
374 rc = qed_enable_msix(cdev, int_params); qed_set_int_mode()
379 kfree(int_params->msix_table); qed_set_int_mode()
387 int_params->out.int_mode = QED_INT_MODE_MSI; qed_set_int_mode()
397 int_params->out.int_mode = QED_INT_MODE_INTA; qed_set_int_mode()
402 int_params->in.int_mode); qed_set_int_mode()
485 if (cdev->int_params.out.int_mode == QED_INT_MODE_MSIX) { qed_slowpath_irq_req()
490 rc = request_irq(cdev->int_params.msix_table[id].vector, qed_slowpath_irq_req()
502 if (cdev->int_params.out.int_mode == QED_INT_MODE_INTA) qed_slowpath_irq_req()
516 if (cdev->int_params.out.int_mode == QED_INT_MODE_MSIX) { for_each_hwfn()
520 synchronize_irq(cdev->int_params.msix_table[i].vector); for_each_hwfn()
521 free_irq(cdev->int_params.msix_table[i].vector, for_each_hwfn()
585 cdev->int_params.fp_initialized = cnt ? true : false; qed_set_int_fp()
587 if (cdev->int_params.out.int_mode != QED_INT_MODE_MSIX) qed_set_int_fp()
589 else if (cdev->int_params.fp_msix_cnt) qed_set_int_fp()
590 limit = cdev->int_params.fp_msix_cnt; qed_set_int_fp()
602 if (!cdev->int_params.fp_initialized) { qed_get_int_fp()
611 if (cdev->int_params.out.int_mode == QED_INT_MODE_MSIX) { qed_get_int_fp()
612 int msix_base = cdev->int_params.fp_msix_base; qed_get_int_fp()
614 info->msix_cnt = cdev->int_params.fp_msix_cnt; qed_get_int_fp()
615 info->msix = &cdev->int_params.msix_table[msix_base]; qed_get_int_fp()
627 memset(&cdev->int_params, 0, sizeof(struct qed_int_params)); qed_slowpath_setup_int()
629 cdev->int_params.in.int_mode = int_mode; qed_slowpath_setup_int()
632 cdev->int_params.in.num_vectors = num_vectors; qed_slowpath_setup_int()
635 cdev->int_params.in.min_msix_cnt = cdev->num_hwfns * 2; qed_slowpath_setup_int()
643 cdev->int_params.fp_msix_base = cdev->num_hwfns; qed_slowpath_setup_int()
644 cdev->int_params.fp_msix_cnt = cdev->int_params.out.num_vectors - qed_slowpath_setup_int()
763 rc = qed_hw_init(cdev, true, cdev->int_params.out.int_mode, qed_slowpath_start()
312 qed_enable_msix(struct qed_dev *cdev, struct qed_int_params *int_params) qed_enable_msix() argument
H A Dqed.h429 struct qed_int_params int_params; member in struct:qed_dev
H A Dqed_l2.c1242 if (cdev->int_params.out.int_mode == QED_INT_MODE_MSIX) { qed_fill_eth_dev_info()
1246 if (cdev->int_params.fp_msix_cnt) qed_fill_eth_dev_info()
1248 cdev->int_params.fp_msix_cnt); qed_fill_eth_dev_info()

Completed in 143 milliseconds