/Linux-v5.15/drivers/crypto/cavium/nitrox/ |
D | nitrox_sriov.c | 15 static inline bool num_vfs_valid(int num_vfs) in num_vfs_valid() argument 19 switch (num_vfs) { in num_vfs_valid() 31 static inline enum vf_mode num_vfs_to_mode(int num_vfs) in num_vfs_to_mode() argument 35 switch (num_vfs) { in num_vfs_to_mode() 153 static int nitrox_sriov_enable(struct pci_dev *pdev, int num_vfs) in nitrox_sriov_enable() argument 158 if (!num_vfs_valid(num_vfs)) { in nitrox_sriov_enable() 159 dev_err(DEV(ndev), "Invalid num_vfs %d\n", num_vfs); in nitrox_sriov_enable() 163 if (pci_num_vf(pdev) == num_vfs) in nitrox_sriov_enable() 164 return num_vfs; in nitrox_sriov_enable() 166 err = pci_enable_sriov(pdev, num_vfs); in nitrox_sriov_enable() [all …]
|
D | nitrox_isr.h | 13 int nitrox_sriov_configure(struct pci_dev *pdev, int num_vfs); 15 static inline int nitrox_sriov_configure(struct pci_dev *pdev, int num_vfs) in nitrox_sriov_configure() argument
|
/Linux-v5.15/drivers/crypto/marvell/octeontx2/ |
D | otx2_cptpf_main.c | 16 int num_vfs) in cptpf_enable_vfpf_mbox_intr() argument 27 ena_bits = ((num_vfs - 1) % 64); in cptpf_enable_vfpf_mbox_intr() 32 if (num_vfs > 64) { in cptpf_enable_vfpf_mbox_intr() 34 ena_bits = num_vfs - 64 - 1; in cptpf_enable_vfpf_mbox_intr() 42 int num_vfs) in cptpf_disable_vfpf_mbox_intr() argument 58 if (num_vfs > 64) { in cptpf_disable_vfpf_mbox_intr() 67 int num_vfs) in cptpf_enable_vf_flr_me_intrs() argument 71 INTR_MASK(num_vfs)); in cptpf_enable_vf_flr_me_intrs() 75 RVU_PF_VFFLR_INT_ENA_W1SX(0), INTR_MASK(num_vfs)); in cptpf_enable_vf_flr_me_intrs() 78 INTR_MASK(num_vfs)); in cptpf_enable_vf_flr_me_intrs() [all …]
|
/Linux-v5.15/drivers/net/ethernet/mellanox/mlx5/core/ |
D | sriov.c | 72 static int mlx5_device_enable_sriov(struct mlx5_core_dev *dev, int num_vfs) in mlx5_device_enable_sriov() argument 80 err = mlx5_eswitch_enable(dev->priv.eswitch, num_vfs); in mlx5_device_enable_sriov() 88 num_msix_count = mlx5_get_default_msix_vec_count(dev, num_vfs); in mlx5_device_enable_sriov() 89 for (vf = 0; vf < num_vfs; vf++) { in mlx5_device_enable_sriov() 121 mlx5_device_disable_sriov(struct mlx5_core_dev *dev, int num_vfs, bool clear_vf) in mlx5_device_disable_sriov() argument 127 for (vf = num_vfs - 1; vf >= 0; vf--) { in mlx5_device_disable_sriov() 145 static int mlx5_sriov_enable(struct pci_dev *pdev, int num_vfs) in mlx5_sriov_enable() argument 150 err = mlx5_device_enable_sriov(dev, num_vfs); in mlx5_sriov_enable() 156 err = pci_enable_sriov(pdev, num_vfs); in mlx5_sriov_enable() 159 mlx5_device_disable_sriov(dev, num_vfs, true); in mlx5_sriov_enable() [all …]
|
D | eswitch.c | 991 mlx5_esw_for_each_vf_vport(esw, i, vport, esw->esw_funcs.num_vfs) { in mlx5_eswitch_clear_vf_vports_info() 1025 void mlx5_eswitch_unload_vf_vports(struct mlx5_eswitch *esw, u16 num_vfs) in mlx5_eswitch_unload_vf_vports() argument 1030 mlx5_esw_for_each_vf_vport(esw, i, vport, num_vfs) { in mlx5_eswitch_unload_vf_vports() 1037 int mlx5_eswitch_load_vf_vports(struct mlx5_eswitch *esw, u16 num_vfs, in mlx5_eswitch_load_vf_vports() argument 1044 mlx5_esw_for_each_vf_vport(esw, i, vport, num_vfs) { in mlx5_eswitch_load_vf_vports() 1053 mlx5_eswitch_unload_vf_vports(esw, num_vfs); in mlx5_eswitch_load_vf_vports() 1104 ret = mlx5_eswitch_load_vf_vports(esw, esw->esw_funcs.num_vfs, in mlx5_eswitch_enable_pf_vf_vports() 1125 mlx5_eswitch_unload_vf_vports(esw, esw->esw_funcs.num_vfs); in mlx5_eswitch_disable_pf_vf_vports() 1154 mlx5_eswitch_update_num_of_vfs(struct mlx5_eswitch *esw, int num_vfs) in mlx5_eswitch_update_num_of_vfs() argument 1160 if (num_vfs < 0) in mlx5_eswitch_update_num_of_vfs() [all …]
|
/Linux-v5.15/drivers/net/ethernet/broadcom/bnxt/ |
D | bnxt_sriov.c | 367 static int bnxt_set_vf_attr(struct bnxt *bp, int num_vfs) in bnxt_set_vf_attr() argument 372 for (i = 0; i < num_vfs; i++) { in bnxt_set_vf_attr() 379 static int bnxt_hwrm_func_vf_resource_free(struct bnxt *bp, int num_vfs) in bnxt_hwrm_func_vf_resource_free() argument 390 for (i = pf->first_vf_id; i < pf->first_vf_id + num_vfs; i++) { in bnxt_hwrm_func_vf_resource_free() 422 static int bnxt_alloc_vf_resources(struct bnxt *bp, int num_vfs) in bnxt_alloc_vf_resources() argument 427 bp->pf.vf = kcalloc(num_vfs, sizeof(struct bnxt_vf_info), GFP_KERNEL); in bnxt_alloc_vf_resources() 431 bnxt_set_vf_attr(bp, num_vfs); in bnxt_alloc_vf_resources() 433 size = num_vfs * BNXT_HWRM_REQ_MAX_SIZE; in bnxt_alloc_vf_resources() 447 for (j = 0; j < BNXT_HWRM_REQS_PER_PAGE && k < num_vfs; j++) { in bnxt_alloc_vf_resources() 524 static int bnxt_hwrm_func_vf_resc_cfg(struct bnxt *bp, int num_vfs, bool reset) in bnxt_hwrm_func_vf_resc_cfg() argument [all …]
|
D | bnxt_vfr.c | 266 u16 num_vfs, i; in bnxt_vf_reps_close() local 271 num_vfs = pci_num_vf(bp->pdev); in bnxt_vf_reps_close() 272 for (i = 0; i < num_vfs; i++) { in bnxt_vf_reps_close() 315 u16 num_vfs = pci_num_vf(bp->pdev); in __bnxt_vf_reps_destroy() local 319 for (i = 0; i < num_vfs; i++) { in __bnxt_vf_reps_destroy() 378 u16 num_vfs = pci_num_vf(bp->pdev); in bnxt_vf_reps_free() local 384 for (i = 0; i < num_vfs; i++) in bnxt_vf_reps_free() 415 u16 *cfa_code_map = bp->cfa_code_map, num_vfs = pci_num_vf(bp->pdev); in bnxt_vf_reps_alloc() local 428 for (i = 0; i < num_vfs; i++) { in bnxt_vf_reps_alloc() 487 u16 *cfa_code_map = NULL, num_vfs = pci_num_vf(bp->pdev); in bnxt_vf_reps_create() local [all …]
|
D | bnxt_sriov.h | 39 int bnxt_sriov_configure(struct pci_dev *pdev, int num_vfs); 40 int bnxt_cfg_hw_sriov(struct bnxt *bp, int *num_vfs, bool reset);
|
/Linux-v5.15/drivers/net/ethernet/intel/fm10k/ |
D | fm10k_iov.c | 179 i = iov_data->num_vfs; in fm10k_iov_event() 226 for (i = iov_data->next_vf_mbx ? : iov_data->num_vfs; i--;) { in fm10k_iov_mbx() 287 int num_vfs, i; in fm10k_iov_suspend() local 290 num_vfs = iov_data ? iov_data->num_vfs : 0; in fm10k_iov_suspend() 297 for (i = 0; i < num_vfs; i++) { in fm10k_iov_suspend() 332 int num_vfs, i; in fm10k_iov_resume() local 335 num_vfs = iov_data ? iov_data->num_vfs : 0; in fm10k_iov_resume() 348 hw->iov.ops.assign_resources(hw, num_vfs, num_vfs); in fm10k_iov_resume() 362 for (i = 0; i < num_vfs; i++) { in fm10k_iov_resume() 395 if (vf_idx >= iov_data->num_vfs) in fm10k_iov_update_pvid() [all …]
|
D | fm10k_pf.c | 443 if (!hw->iov.num_vfs) in fm10k_update_int_moderator_pf() 585 u16 num_vfs = hw->iov.num_vfs; in fm10k_vf_queue_index() local 588 vf_q_idx -= fm10k_queues_per_pool(hw) * (num_vfs - vf_idx); in fm10k_vf_queue_index() 619 static s32 fm10k_iov_assign_resources_pf(struct fm10k_hw *hw, u16 num_vfs, in fm10k_iov_assign_resources_pf() argument 631 if ((num_vfs > num_pools) || (num_vfs > hw->iov.total_vfs)) in fm10k_iov_assign_resources_pf() 635 hw->iov.num_vfs = num_vfs; in fm10k_iov_assign_resources_pf() 639 qmap_stride = (num_vfs > 8) ? 32 : 256; in fm10k_iov_assign_resources_pf() 648 for (i = 0; i < num_vfs; i++) { in fm10k_iov_assign_resources_pf() 656 for (i = FM10K_VFMBMEM_LEN * num_vfs; i--;) in fm10k_iov_assign_resources_pf() 683 fm10k_vf_vector_index(hw, num_vfs - 1)); in fm10k_iov_assign_resources_pf() [all …]
|
/Linux-v5.15/arch/powerpc/platforms/powernv/ |
D | pci-sriov.c | 290 static int pnv_pci_vf_release_m64(struct pci_dev *pdev, u16 num_vfs) in pnv_pci_vf_release_m64() argument 421 static int pnv_pci_vf_assign_m64(struct pci_dev *pdev, u16 num_vfs) in pnv_pci_vf_assign_m64() argument 460 for (j = 0; j < num_vfs; j++) { in pnv_pci_vf_assign_m64() 477 pnv_pci_vf_release_m64(pdev, num_vfs); in pnv_pci_vf_assign_m64() 514 u16 num_vfs; in pnv_pci_vf_resource_shift() local 529 num_vfs = iov->num_vfs; in pnv_pci_vf_resource_shift() 546 res2.end = res2.start + (size * num_vfs) - 1; in pnv_pci_vf_resource_shift() 550 i, &res2, res, num_vfs, offset); in pnv_pci_vf_resource_shift() 576 num_vfs, offset); in pnv_pci_vf_resource_shift() 599 u16 num_vfs, base_pe; in pnv_pci_sriov_disable() local [all …]
|
/Linux-v5.15/arch/powerpc/platforms/pseries/ |
D | pci.c | 58 static int pseries_send_map_pe(struct pci_dev *pdev, u16 num_vfs, in pseries_send_map_pe() argument 78 num_vfs * sizeof(struct pe_map_bar_entry)); in pseries_send_map_pe() 104 static int pseries_associate_pes(struct pci_dev *pdev, u16 num_vfs) in pseries_associate_pes() argument 118 for (vf_index = 0; vf_index < num_vfs; vf_index++) { in pseries_associate_pes() 137 rc = pseries_send_map_pe(pdev, num_vfs, vf_pe_array); in pseries_associate_pes() 140 for (vf_index = 0; vf_index < num_vfs; vf_index++) in pseries_associate_pes() 148 static int pseries_pci_sriov_enable(struct pci_dev *pdev, u16 num_vfs) in pseries_pci_sriov_enable() argument 163 if (max_config_vfs < num_vfs && num_vfs > MAX_VFS_FOR_MAP_PE) { in pseries_pci_sriov_enable() 166 num_vfs, (num_vfs > MAX_VFS_FOR_MAP_PE) ? in pseries_pci_sriov_enable() 172 pdn->pe_num_map = kmalloc_array(num_vfs, in pseries_pci_sriov_enable() [all …]
|
/Linux-v5.15/drivers/net/ethernet/pensando/ionic/ |
D | ionic_bus_pci.c | 119 for (i = ionic->num_vfs - 1; i >= 0; i--) { in ionic_vf_dealloc_locked() 134 ionic->num_vfs = 0; in ionic_vf_dealloc_locked() 144 static int ionic_vf_alloc(struct ionic *ionic, int num_vfs) in ionic_vf_alloc() argument 152 ionic->vfs = kcalloc(num_vfs, sizeof(struct ionic_vf), GFP_KERNEL); in ionic_vf_alloc() 158 for (i = 0; i < num_vfs; i++) { in ionic_vf_alloc() 168 ionic->num_vfs++; in ionic_vf_alloc() 181 static int ionic_sriov_configure(struct pci_dev *pdev, int num_vfs) in ionic_sriov_configure() argument 191 if (num_vfs > 0) { in ionic_sriov_configure() 192 ret = pci_enable_sriov(pdev, num_vfs); in ionic_sriov_configure() 198 ret = ionic_vf_alloc(ionic, num_vfs); in ionic_sriov_configure() [all …]
|
/Linux-v5.15/drivers/net/netdevsim/ |
D | bus.c | 28 unsigned int num_vfs) in nsim_bus_dev_vfs_enable() argument 33 if (nsim_bus_dev->max_vfs < num_vfs) in nsim_bus_dev_vfs_enable() 38 nsim_bus_dev->num_vfs = num_vfs; in nsim_bus_dev_vfs_enable() 44 nsim_bus_dev->num_vfs = 0; in nsim_bus_dev_vfs_enable() 54 nsim_bus_dev->num_vfs = 0; in nsim_bus_dev_vfs_disable() 65 unsigned int num_vfs; in nsim_bus_dev_numvfs_store() local 68 ret = kstrtouint(buf, 0, &num_vfs); in nsim_bus_dev_numvfs_store() 73 if (nsim_bus_dev->num_vfs == num_vfs) in nsim_bus_dev_numvfs_store() 75 if (nsim_bus_dev->num_vfs && num_vfs) { in nsim_bus_dev_numvfs_store() 80 if (num_vfs) { in nsim_bus_dev_numvfs_store() [all …]
|
D | netdev.c | 88 if (vf >= nsim_bus_dev->num_vfs || is_multicast_ether_addr(mac)) in nsim_set_vf_mac() 101 if (vf >= nsim_bus_dev->num_vfs || vlan > 4095 || qos > 7) in nsim_set_vf_vlan() 121 if (vf >= nsim_bus_dev->num_vfs) in nsim_set_vf_rate() 135 if (vf >= nsim_bus_dev->num_vfs) in nsim_set_vf_spoofchk() 147 if (vf >= nsim_bus_dev->num_vfs) in nsim_set_vf_rss_query_en() 159 if (vf >= nsim_bus_dev->num_vfs) in nsim_set_vf_trust() 172 if (vf >= nsim_bus_dev->num_vfs) in nsim_get_vf_config() 195 if (vf >= nsim_bus_dev->num_vfs) in nsim_set_vf_link_state()
|
/Linux-v5.15/drivers/net/ethernet/intel/ixgbe/ |
D | ixgbe_sriov.c | 25 unsigned int num_vfs) in ixgbe_alloc_vf_macvlans() argument 32 (IXGBE_MAX_PF_MACVLANS + 1 + num_vfs); in ixgbe_alloc_vf_macvlans() 51 unsigned int num_vfs) in __ixgbe_enable_sriov() argument 66 adapter->vfinfo = kcalloc(num_vfs, sizeof(struct vf_data_storage), in __ixgbe_enable_sriov() 71 adapter->num_vfs = num_vfs; in __ixgbe_enable_sriov() 73 ixgbe_alloc_vf_macvlans(adapter, num_vfs); in __ixgbe_enable_sriov() 74 adapter->ring_feature[RING_F_VMDQ].offset = num_vfs; in __ixgbe_enable_sriov() 81 if ((adapter->hw.mac.type == ixgbe_mac_82599EB) && (num_vfs < 16)) { in __ixgbe_enable_sriov() 84 } else if (num_vfs < 32) { in __ixgbe_enable_sriov() 96 for (i = 0; i < num_vfs; i++) { in __ixgbe_enable_sriov() [all …]
|
/Linux-v5.15/drivers/net/ethernet/netronome/nfp/ |
D | nfp_main.c | 221 static int nfp_pcie_sriov_enable(struct pci_dev *pdev, int num_vfs) in nfp_pcie_sriov_enable() argument 227 if (num_vfs > pf->limit_vfs) { in nfp_pcie_sriov_enable() 233 err = pci_enable_sriov(pdev, num_vfs); in nfp_pcie_sriov_enable() 241 err = nfp_app_sriov_enable(pf->app, num_vfs); in nfp_pcie_sriov_enable() 249 pf->num_vfs = num_vfs; in nfp_pcie_sriov_enable() 251 dev_dbg(&pdev->dev, "Created %d VFs.\n", pf->num_vfs); in nfp_pcie_sriov_enable() 254 return num_vfs; in nfp_pcie_sriov_enable() 283 pf->num_vfs = 0; in nfp_pcie_sriov_disable() 293 static int nfp_pcie_sriov_configure(struct pci_dev *pdev, int num_vfs) in nfp_pcie_sriov_configure() argument 298 if (num_vfs == 0) in nfp_pcie_sriov_configure() [all …]
|
/Linux-v5.15/drivers/net/ethernet/qlogic/qlcnic/ |
D | qlcnic_sriov_pf.c | 75 u32 num_vfs, max, temp; in qlcnic_sriov_pf_cal_res_limit() local 81 num_vfs = sriov->num_vfs; in qlcnic_sriov_pf_cal_res_limit() 82 max = num_vfs + 1; in qlcnic_sriov_pf_cal_res_limit() 95 temp = res->num_rx_ucast_mac_filters - num_macs * num_vfs; in qlcnic_sriov_pf_cal_res_limit() 97 temp = res->num_tx_mac_filters - num_macs * num_vfs; in qlcnic_sriov_pf_cal_res_limit() 99 temp = num_macs * num_vfs * QLCNIC_SRIOV_VF_MAX_MAC; in qlcnic_sriov_pf_cal_res_limit() 103 info->max_tx_ques = res->num_tx_queues - sriov->num_vfs; in qlcnic_sriov_pf_cal_res_limit() 162 total_fn = sriov->num_vfs + 1; in qlcnic_sriov_set_vf_max_vlan() 412 for (i = 0; i < sriov->num_vfs; i++) in qlcnic_sriov_pf_del_flr_queue() 566 static int qlcnic_sriov_pf_enable(struct qlcnic_adapter *adapter, int num_vfs) in qlcnic_sriov_pf_enable() argument [all …]
|
/Linux-v5.15/drivers/crypto/cavium/cpt/ |
D | cptpf_main.c | 19 static u32 num_vfs = 4; /* Default 4 VF enabled */ variable 20 module_param(num_vfs, uint, 0444); 21 MODULE_PARM_DESC(num_vfs, "Number of VFs to enable(1-16)"); 500 static int cpt_sriov_init(struct cpt_device *cpt, int num_vfs) in cpt_sriov_init() argument 513 cpt->num_vf_en = num_vfs; /* User requested VFs */ in cpt_sriov_init() 546 if (num_vfs > 16 || num_vfs < 4) { in cpt_probe() 548 num_vfs); in cpt_probe() 549 num_vfs = 4; in cpt_probe() 598 err = cpt_sriov_init(cpt, num_vfs); in cpt_probe()
|
/Linux-v5.15/drivers/net/ethernet/huawei/hinic/ |
D | hinic_sriov.h | 30 unsigned int num_vfs; member 101 int hinic_pci_sriov_enable(struct pci_dev *dev, int num_vfs); 107 int hinic_pci_sriov_configure(struct pci_dev *dev, int num_vfs);
|
D | hinic_sriov.c | 584 if (vf >= sriov_info->num_vfs) in hinic_ndo_get_vf_config() 629 if (!is_valid_ether_addr(mac) || vf >= sriov_info->num_vfs) in hinic_ndo_set_vf_mac() 776 if (vf >= sriov_info->num_vfs || vlan > 4095 || qos > 7) in hinic_ndo_set_vf_vlan() 817 if (vf >= sriov_info->num_vfs) in hinic_ndo_set_vf_trust() 848 if (vf >= nic_dev->sriov_info.num_vfs) { in hinic_ndo_set_vf_bw() 850 nic_dev->sriov_info.num_vfs); in hinic_ndo_set_vf_bw() 942 if (vf >= sriov_info->num_vfs) in hinic_ndo_set_vf_spoofchk() 1006 if (vf_id >= sriov_info->num_vfs) { in hinic_ndo_set_vf_link_state() 1291 tmp_vfs = (u16)sriov_info->num_vfs; in hinic_pci_sriov_disable() 1292 sriov_info->num_vfs = 0; in hinic_pci_sriov_disable() [all …]
|
/Linux-v5.15/drivers/pci/ |
D | iov.c | 357 u16 num_vfs; in sriov_numvfs_show() local 361 num_vfs = pdev->sriov->num_VFs; in sriov_numvfs_show() 364 return sysfs_emit(buf, "%u\n", num_vfs); in sriov_numvfs_show() 380 u16 num_vfs; in sriov_numvfs_store() local 382 ret = kstrtou16(buf, 0, &num_vfs); in sriov_numvfs_store() 386 if (num_vfs > pci_sriov_get_totalvfs(pdev)) in sriov_numvfs_store() 391 if (num_vfs == pdev->sriov->num_VFs) in sriov_numvfs_store() 408 if (num_vfs == 0) { in sriov_numvfs_store() 417 pdev->sriov->num_VFs, num_vfs); in sriov_numvfs_store() 422 ret = pdev->driver->sriov_configure(pdev, num_vfs); in sriov_numvfs_store() [all …]
|
/Linux-v5.15/drivers/net/ethernet/cavium/liquidio/ |
D | lio_vf_rep.c | 494 int i, num_vfs; in lio_vf_rep_create() local 502 num_vfs = oct->sriov_info.num_vfs_alloced; in lio_vf_rep_create() 504 oct->vf_rep_list.num_vfs = 0; in lio_vf_rep_create() 505 for (i = 0; i < num_vfs; i++) { in lio_vf_rep_create() 543 oct->vf_rep_list.num_vfs++; in lio_vf_rep_create() 558 for (i = 0; i < oct->vf_rep_list.num_vfs; i++) { in lio_vf_rep_create() 570 oct->vf_rep_list.num_vfs = 0; in lio_vf_rep_create() 588 for (i = 0; i < oct->vf_rep_list.num_vfs; i++) { in lio_vf_rep_destroy() 603 oct->vf_rep_list.num_vfs = 0; in lio_vf_rep_destroy()
|
/Linux-v5.15/drivers/fpga/ |
D | dfl-pci.c | 388 static int cci_pci_sriov_configure(struct pci_dev *pcidev, int num_vfs) in cci_pci_sriov_configure() argument 393 if (!num_vfs) { in cci_pci_sriov_configure() 409 ret = dfl_fpga_cdev_config_ports_vf(cdev, num_vfs); in cci_pci_sriov_configure() 413 ret = pci_enable_sriov(pcidev, num_vfs); in cci_pci_sriov_configure() 420 return num_vfs; in cci_pci_sriov_configure()
|
/Linux-v5.15/drivers/net/ethernet/freescale/enetc/ |
D | enetc_msg.c | 47 for (i = 0; i < pf->num_vfs; i++) { in enetc_msg_task() 129 for (i = 0; i < pf->num_vfs; i++) { in enetc_msg_psi_init() 159 for (i = 0; i < pf->num_vfs; i++) in enetc_msg_psi_free()
|