vf 522 arch/ia64/kernel/palinfo.c const char *const *vf, *const *v; vf 525 arch/ia64/kernel/palinfo.c vf = v = proc_features[set]; vf 532 arch/ia64/kernel/palinfo.c if (vf) vf 533 arch/ia64/kernel/palinfo.c v = vf + i; vf 8 drivers/crypto/cavium/cpt/cptpf_mbox.c static void cpt_send_msg_to_vf(struct cpt_device *cpt, int vf, vf 12 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_write_csr64(cpt->reg_base, CPTX_PF_VFX_MBOXX(0, vf, 1), vf 14 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_write_csr64(cpt->reg_base, CPTX_PF_VFX_MBOXX(0, vf, 0), mbx->msg); vf 20 drivers/crypto/cavium/cpt/cptpf_mbox.c static void cpt_mbox_send_ack(struct cpt_device *cpt, int vf, vf 25 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_send_msg_to_vf(cpt, vf, mbx); vf 28 drivers/crypto/cavium/cpt/cptpf_mbox.c static void cpt_clear_mbox_intr(struct cpt_device *cpt, u32 vf) vf 31 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_write_csr64(cpt->reg_base, CPTX_PF_MBOX_INTX(0, 0), (1 << vf)); vf 37 drivers/crypto/cavium/cpt/cptpf_mbox.c static void cpt_cfg_qlen_for_vf(struct cpt_device *cpt, int vf, u32 size) vf 41 drivers/crypto/cavium/cpt/cptpf_mbox.c pf_qx_ctl.u = cpt_read_csr64(cpt->reg_base, CPTX_PF_QX_CTL(0, vf)); vf 44 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_write_csr64(cpt->reg_base, CPTX_PF_QX_CTL(0, vf), pf_qx_ctl.u); vf 50 drivers/crypto/cavium/cpt/cptpf_mbox.c static void cpt_cfg_vq_priority(struct cpt_device *cpt, int vf, u32 pri) vf 54 drivers/crypto/cavium/cpt/cptpf_mbox.c pf_qx_ctl.u = cpt_read_csr64(cpt->reg_base, CPTX_PF_QX_CTL(0, vf)); vf 56 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_write_csr64(cpt->reg_base, CPTX_PF_QX_CTL(0, vf), pf_qx_ctl.u); vf 86 drivers/crypto/cavium/cpt/cptpf_mbox.c static void cpt_handle_mbox_intr(struct cpt_device *cpt, int vf) vf 88 drivers/crypto/cavium/cpt/cptpf_mbox.c struct cpt_vf_info *vfx = &cpt->vfinfo[vf]; vf 96 drivers/crypto/cavium/cpt/cptpf_mbox.c mbx.msg = cpt_read_csr64(cpt->reg_base, CPTX_PF_VFX_MBOXX(0, vf, 0)); vf 97 drivers/crypto/cavium/cpt/cptpf_mbox.c mbx.data = cpt_read_csr64(cpt->reg_base, CPTX_PF_VFX_MBOXX(0, vf, 1)); vf 98 drivers/crypto/cavium/cpt/cptpf_mbox.c dev_dbg(dev, "%s: Mailbox msg 0x%llx from VF%d", __func__, mbx.msg, vf); vf 103 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_mbox_send_ack(cpt, vf, &mbx); vf 107 drivers/crypto/cavium/cpt/cptpf_mbox.c mbx.data = vf; vf 108 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_send_msg_to_vf(cpt, vf, &mbx); vf 114 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_mbox_send_ack(cpt, vf, &mbx); vf 118 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_cfg_qlen_for_vf(cpt, vf, vfx->qlen); vf 119 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_mbox_send_ack(cpt, vf, &mbx); vf 122 drivers/crypto/cavium/cpt/cptpf_mbox.c vftype = cpt_bind_vq_to_grp(cpt, vf, (u8)mbx.data); vf 125 drivers/crypto/cavium/cpt/cptpf_mbox.c vf, mbx.data); vf 128 drivers/crypto/cavium/cpt/cptpf_mbox.c vf, mbx.data); vf 131 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_send_msg_to_vf(cpt, vf, &mbx); vf 136 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_cfg_vq_priority(cpt, vf, vfx->priority); vf 137 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_mbox_send_ack(cpt, vf, &mbx); vf 141 drivers/crypto/cavium/cpt/cptpf_mbox.c vf, mbx.msg); vf 149 drivers/crypto/cavium/cpt/cptpf_mbox.c u8 vf; vf 153 drivers/crypto/cavium/cpt/cptpf_mbox.c for (vf = 0; vf < CPT_MAX_VF_NUM; vf++) { vf 154 drivers/crypto/cavium/cpt/cptpf_mbox.c if (intr & (1ULL << vf)) { vf 155 drivers/crypto/cavium/cpt/cptpf_mbox.c dev_dbg(&cpt->pdev->dev, "Intr from VF %d\n", vf); vf 156 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_handle_mbox_intr(cpt, vf); vf 157 drivers/crypto/cavium/cpt/cptpf_mbox.c cpt_clear_mbox_intr(cpt, vf); vf 230 drivers/crypto/qat/qat_c3xxxvf/adf_drv.c init_completion(&accel_dev->vf.iov_msg_completion); vf 230 drivers/crypto/qat/qat_c62xvf/adf_drv.c init_completion(&accel_dev->vf.iov_msg_completion); vf 253 drivers/crypto/qat/qat_common/adf_accel_devices.h } vf; vf 66 drivers/crypto/qat/qat_common/adf_dev_mgr.c static int adf_get_vf_id(struct adf_accel_dev *vf) vf 68 drivers/crypto/qat/qat_common/adf_dev_mgr.c return ((7 * (PCI_SLOT(accel_to_pci_dev(vf)->devfn) - 1)) + vf 69 drivers/crypto/qat/qat_common/adf_dev_mgr.c PCI_FUNC(accel_to_pci_dev(vf)->devfn) + vf 70 drivers/crypto/qat/qat_common/adf_dev_mgr.c (PCI_SLOT(accel_to_pci_dev(vf)->devfn) - 1)); vf 73 drivers/crypto/qat/qat_common/adf_dev_mgr.c static int adf_get_vf_num(struct adf_accel_dev *vf) vf 75 drivers/crypto/qat/qat_common/adf_dev_mgr.c return (accel_to_pci_dev(vf)->bus->number << 8) | adf_get_vf_id(vf); vf 112 drivers/crypto/qat/qat_common/adf_dev_mgr.c void adf_clean_vf_map(bool vf) vf 125 drivers/crypto/qat/qat_common/adf_dev_mgr.c if (vf && map->bdf == -1) vf 141 drivers/crypto/qat/qat_common/adf_pf2vf_msg.c lock = &accel_dev->vf.vf2pf_lock; vf 340 drivers/crypto/qat/qat_common/adf_pf2vf_msg.c struct adf_accel_vf_info *vf; vf 345 drivers/crypto/qat/qat_common/adf_pf2vf_msg.c for (i = 0, vf = accel_dev->pf.vf_info; i < num_vfs; i++, vf++) { vf 346 drivers/crypto/qat/qat_common/adf_pf2vf_msg.c if (vf->init && adf_iov_putmsg(accel_dev, msg, i)) vf 373 drivers/crypto/qat/qat_common/adf_pf2vf_msg.c if (!wait_for_completion_timeout(&accel_dev->vf.iov_msg_completion, vf 381 drivers/crypto/qat/qat_common/adf_pf2vf_msg.c switch (accel_dev->vf.compatible) { vf 386 drivers/crypto/qat/qat_common/adf_pf2vf_msg.c if (accel_dev->vf.pf_version >= hw_data->min_iov_compat_ver) vf 392 drivers/crypto/qat/qat_common/adf_pf2vf_msg.c accel_dev->vf.pf_version, vf 178 drivers/crypto/qat/qat_common/adf_sriov.c struct adf_accel_vf_info *vf; vf 206 drivers/crypto/qat/qat_common/adf_sriov.c for (i = 0, vf = accel_dev->pf.vf_info; i < totalvfs; i++, vf++) { vf 207 drivers/crypto/qat/qat_common/adf_sriov.c tasklet_disable(&vf->vf2pf_bh_tasklet); vf 208 drivers/crypto/qat/qat_common/adf_sriov.c tasklet_kill(&vf->vf2pf_bh_tasklet); vf 209 drivers/crypto/qat/qat_common/adf_sriov.c mutex_destroy(&vf->pf2vf_lock); vf 86 drivers/crypto/qat/qat_common/adf_vf_isr.c accel_dev->vf.irq_name = kzalloc(ADF_MAX_MSIX_VECTOR_NAME, GFP_KERNEL); vf 87 drivers/crypto/qat/qat_common/adf_vf_isr.c if (!accel_dev->vf.irq_name) vf 97 drivers/crypto/qat/qat_common/adf_vf_isr.c kfree(accel_dev->vf.irq_name); vf 158 drivers/crypto/qat/qat_common/adf_vf_isr.c accel_dev->vf.pf_version = vf 161 drivers/crypto/qat/qat_common/adf_vf_isr.c accel_dev->vf.compatible = vf 164 drivers/crypto/qat/qat_common/adf_vf_isr.c complete(&accel_dev->vf.iov_msg_completion); vf 185 drivers/crypto/qat/qat_common/adf_vf_isr.c tasklet_init(&accel_dev->vf.pf2vf_bh_tasklet, vf 188 drivers/crypto/qat/qat_common/adf_vf_isr.c mutex_init(&accel_dev->vf.vf2pf_lock); vf 194 drivers/crypto/qat/qat_common/adf_vf_isr.c tasklet_disable(&accel_dev->vf.pf2vf_bh_tasklet); vf 195 drivers/crypto/qat/qat_common/adf_vf_isr.c tasklet_kill(&accel_dev->vf.pf2vf_bh_tasklet); vf 196 drivers/crypto/qat/qat_common/adf_vf_isr.c mutex_destroy(&accel_dev->vf.vf2pf_lock); vf 217 drivers/crypto/qat/qat_common/adf_vf_isr.c tasklet_hi_schedule(&accel_dev->vf.pf2vf_bh_tasklet); vf 242 drivers/crypto/qat/qat_common/adf_vf_isr.c snprintf(accel_dev->vf.irq_name, ADF_MAX_MSIX_VECTOR_NAME, vf 245 drivers/crypto/qat/qat_common/adf_vf_isr.c ret = request_irq(pdev->irq, adf_isr, 0, accel_dev->vf.irq_name, vf 249 drivers/crypto/qat/qat_common/adf_vf_isr.c accel_dev->vf.irq_name); vf 230 drivers/crypto/qat/qat_dh895xccvf/adf_drv.c init_completion(&accel_dev->vf.iov_msg_completion); vf 2247 drivers/gpu/drm/omapdrm/dss/dispc.c unsigned int hf, vf; vf 2263 drivers/gpu/drm/omapdrm/dss/dispc.c vf = 2; vf 2265 drivers/gpu/drm/omapdrm/dss/dispc.c vf = 1; vf 2267 drivers/gpu/drm/omapdrm/dss/dispc.c return pclk * vf * hf; vf 204 drivers/gpu/ipu-v3/ipu-common.c u32 r90, vf, hf; vf 208 drivers/gpu/ipu-v3/ipu-common.c vf = hf = r90 = 0; vf 211 drivers/gpu/ipu-v3/ipu-common.c vf = hf = 0; vf 215 drivers/gpu/ipu-v3/ipu-common.c vf = hf = 1; vf 219 drivers/gpu/ipu-v3/ipu-common.c vf = hf = r90 = 1; vf 226 drivers/gpu/ipu-v3/ipu-common.c vf ^= (u32)vflip; vf 228 drivers/gpu/ipu-v3/ipu-common.c *mode = (enum ipu_rotate_mode)((r90 << 2) | (hf << 1) | vf); vf 236 drivers/gpu/ipu-v3/ipu-common.c u32 r90, vf, hf; vf 240 drivers/gpu/ipu-v3/ipu-common.c vf = ((u32)mode >> 0) & 0x1; vf 242 drivers/gpu/ipu-v3/ipu-common.c vf ^= (u32)vflip; vf 244 drivers/gpu/ipu-v3/ipu-common.c switch ((enum ipu_rotate_mode)((r90 << 2) | (hf << 1) | vf)) { vf 2412 drivers/infiniband/core/verbs.c int ib_set_vf_link_state(struct ib_device *device, int vf, u8 port, vf 2418 drivers/infiniband/core/verbs.c return device->ops.set_vf_link_state(device, vf, port, state); vf 2422 drivers/infiniband/core/verbs.c int ib_get_vf_config(struct ib_device *device, int vf, u8 port, vf 2428 drivers/infiniband/core/verbs.c return device->ops.get_vf_config(device, vf, port, info); vf 2432 drivers/infiniband/core/verbs.c int ib_get_vf_stats(struct ib_device *device, int vf, u8 port, vf 2438 drivers/infiniband/core/verbs.c return device->ops.get_vf_stats(device, vf, port, stats); vf 2442 drivers/infiniband/core/verbs.c int ib_set_vf_guid(struct ib_device *device, int vf, u8 port, u64 guid, vf 2448 drivers/infiniband/core/verbs.c return device->ops.set_vf_guid(device, vf, port, guid, type); vf 78 drivers/infiniband/hw/bnxt_re/qplib_sp.c struct bnxt_qplib_dev_attr *attr, bool vf) vf 108 drivers/infiniband/hw/bnxt_re/qplib_sp.c if (!vf) vf 245 drivers/infiniband/hw/bnxt_re/qplib_sp.h struct bnxt_qplib_dev_attr *attr, bool vf); vf 1163 drivers/infiniband/hw/mlx4/mcg.c static void clear_pending_reqs(struct mcast_group *group, int vf) vf 1172 drivers/infiniband/hw/mlx4/mcg.c list_for_each_entry_safe(req, tmp, &group->func[vf].pending, func_list) { vf 1182 drivers/infiniband/hw/mlx4/mcg.c --group->func[vf].num_pend_reqs; vf 1190 drivers/infiniband/hw/mlx4/mcg.c if (!pend && (!list_empty(&group->func[vf].pending) || group->func[vf].num_pend_reqs)) { vf 1192 drivers/infiniband/hw/mlx4/mcg.c list_empty(&group->func[vf].pending), group->func[vf].num_pend_reqs); vf 51 drivers/infiniband/hw/mlx5/ib_virt.c int mlx5_ib_get_vf_config(struct ib_device *device, int vf, u8 port, vf 63 drivers/infiniband/hw/mlx5/ib_virt.c err = mlx5_query_hca_vport_context(mdev, 1, 1, vf + 1, rep); vf 66 drivers/infiniband/hw/mlx5/ib_virt.c vf, err); vf 93 drivers/infiniband/hw/mlx5/ib_virt.c int mlx5_ib_set_vf_link_state(struct ib_device *device, int vf, vf 112 drivers/infiniband/hw/mlx5/ib_virt.c err = mlx5_core_modify_hca_vport_context(mdev, 1, 1, vf + 1, in); vf 114 drivers/infiniband/hw/mlx5/ib_virt.c vfs_ctx[vf].policy = in->policy; vf 121 drivers/infiniband/hw/mlx5/ib_virt.c int mlx5_ib_get_vf_stats(struct ib_device *device, int vf, vf 137 drivers/infiniband/hw/mlx5/ib_virt.c err = mlx5_core_query_vport_counter(mdev, true, vf, port, out, out_sz); vf 152 drivers/infiniband/hw/mlx5/ib_virt.c static int set_vf_node_guid(struct ib_device *device, int vf, u8 port, u64 guid) vf 166 drivers/infiniband/hw/mlx5/ib_virt.c err = mlx5_core_modify_hca_vport_context(mdev, 1, 1, vf + 1, in); vf 168 drivers/infiniband/hw/mlx5/ib_virt.c vfs_ctx[vf].node_guid = guid; vf 173 drivers/infiniband/hw/mlx5/ib_virt.c static int set_vf_port_guid(struct ib_device *device, int vf, u8 port, u64 guid) vf 187 drivers/infiniband/hw/mlx5/ib_virt.c err = mlx5_core_modify_hca_vport_context(mdev, 1, 1, vf + 1, in); vf 189 drivers/infiniband/hw/mlx5/ib_virt.c vfs_ctx[vf].port_guid = guid; vf 194 drivers/infiniband/hw/mlx5/ib_virt.c int mlx5_ib_set_vf_guid(struct ib_device *device, int vf, u8 port, vf 198 drivers/infiniband/hw/mlx5/ib_virt.c return set_vf_node_guid(device, vf, port, guid); vf 200 drivers/infiniband/hw/mlx5/ib_virt.c return set_vf_port_guid(device, vf, port, guid); vf 1298 drivers/infiniband/hw/mlx5/mlx5_ib.h int mlx5_ib_get_vf_config(struct ib_device *device, int vf, vf 1300 drivers/infiniband/hw/mlx5/mlx5_ib.h int mlx5_ib_set_vf_link_state(struct ib_device *device, int vf, vf 1302 drivers/infiniband/hw/mlx5/mlx5_ib.h int mlx5_ib_get_vf_stats(struct ib_device *device, int vf, vf 1304 drivers/infiniband/hw/mlx5/mlx5_ib.h int mlx5_ib_set_vf_guid(struct ib_device *device, int vf, u8 port, vf 129 drivers/infiniband/hw/usnic/usnic_ib.h void usnic_ib_log_vf(struct usnic_ib_vf *vf); vf 78 drivers/infiniband/hw/usnic/usnic_ib_main.c struct usnic_ib_vf *vf = obj; vf 79 drivers/infiniband/hw/usnic/usnic_ib_main.c return scnprintf(buf, buf_sz, "PF: %s ", dev_name(&vf->pf->ib_dev.dev)); vf 83 drivers/infiniband/hw/usnic/usnic_ib_main.c static void usnic_ib_dump_vf(struct usnic_ib_vf *vf, char *buf, int buf_sz) vf 85 drivers/infiniband/hw/usnic/usnic_ib_main.c usnic_vnic_dump(vf->vnic, buf, buf_sz, vf, vf 90 drivers/infiniband/hw/usnic/usnic_ib_main.c void usnic_ib_log_vf(struct usnic_ib_vf *vf) vf 97 drivers/infiniband/hw/usnic/usnic_ib_main.c usnic_ib_dump_vf(vf, buf, 1000); vf 554 drivers/infiniband/hw/usnic/usnic_ib_main.c struct usnic_ib_vf *vf; vf 557 drivers/infiniband/hw/usnic/usnic_ib_main.c vf = kzalloc(sizeof(*vf), GFP_KERNEL); vf 558 drivers/infiniband/hw/usnic/usnic_ib_main.c if (!vf) vf 576 drivers/infiniband/hw/usnic/usnic_ib_main.c pci_set_drvdata(pdev, vf); vf 578 drivers/infiniband/hw/usnic/usnic_ib_main.c vf->vnic = usnic_vnic_alloc(pdev); vf 579 drivers/infiniband/hw/usnic/usnic_ib_main.c if (IS_ERR_OR_NULL(vf->vnic)) { vf 580 drivers/infiniband/hw/usnic/usnic_ib_main.c err = vf->vnic ? PTR_ERR(vf->vnic) : -ENOMEM; vf 586 drivers/infiniband/hw/usnic/usnic_ib_main.c pf = usnic_ib_discover_pf(vf->vnic); vf 594 drivers/infiniband/hw/usnic/usnic_ib_main.c vf->pf = pf; vf 595 drivers/infiniband/hw/usnic/usnic_ib_main.c spin_lock_init(&vf->lock); vf 597 drivers/infiniband/hw/usnic/usnic_ib_main.c list_add_tail(&vf->link, &pf->vf_dev_list); vf 605 drivers/infiniband/hw/usnic/usnic_ib_main.c pf->vf_res_cnt[res_type] = usnic_vnic_res_cnt(vf->vnic, vf 613 drivers/infiniband/hw/usnic/usnic_ib_main.c usnic_ib_log_vf(vf); vf 617 drivers/infiniband/hw/usnic/usnic_ib_main.c usnic_vnic_free(vf->vnic); vf 625 drivers/infiniband/hw/usnic/usnic_ib_main.c kfree(vf); vf 631 drivers/infiniband/hw/usnic/usnic_ib_main.c struct usnic_ib_vf *vf = pci_get_drvdata(pdev); vf 632 drivers/infiniband/hw/usnic/usnic_ib_main.c struct usnic_ib_dev *pf = vf->pf; vf 635 drivers/infiniband/hw/usnic/usnic_ib_main.c list_del(&vf->link); vf 639 drivers/infiniband/hw/usnic/usnic_ib_main.c usnic_vnic_free(vf->vnic); vf 644 drivers/infiniband/hw/usnic/usnic_ib_main.c kfree(vf); vf 89 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c usnic_vnic_get_index(qp_grp->vf->vnic), vf 117 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic); vf 158 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic); vf 196 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c uaction->vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic); vf 486 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c ib_event.device = &qp_grp->vf->pf->ib_dev; vf 586 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c static int qp_grp_and_vf_bind(struct usnic_ib_vf *vf, vf 593 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c lockdep_assert_held(&vf->lock); vf 595 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c pdev = usnic_vnic_get_pdev(vf->vnic); vf 596 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c if (vf->qp_grp_ref_cnt == 0) { vf 603 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c vf->pd = pd; vf 605 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c vf->qp_grp_ref_cnt++; vf 607 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c WARN_ON(vf->pd != pd); vf 608 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c qp_grp->vf = vf; vf 618 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c lockdep_assert_held(&qp_grp->vf->lock); vf 620 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c pd = qp_grp->vf->pd; vf 621 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c pdev = usnic_vnic_get_pdev(qp_grp->vf->vnic); vf 622 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c if (--qp_grp->vf->qp_grp_ref_cnt == 0) { vf 623 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c qp_grp->vf->pd = NULL; vf 626 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c qp_grp->vf = NULL; vf 669 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c usnic_ib_qp_grp_create(struct usnic_fwd_dev *ufdev, struct usnic_ib_vf *vf, vf 679 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c lockdep_assert_held(&vf->lock); vf 694 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c qp_grp->res_chunk_list = alloc_res_chunk_list(vf->vnic, res_spec, vf 702 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c err = qp_grp_and_vf_bind(vf, pd, qp_grp); vf 745 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c lockdep_assert_held(&qp_grp->vf->lock); vf 60 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.h struct usnic_ib_vf *vf; vf 93 drivers/infiniband/hw/usnic/usnic_ib_qp_grp.h usnic_ib_qp_grp_create(struct usnic_fwd_dev *ufdev, struct usnic_ib_vf *vf, vf 239 drivers/infiniband/hw/usnic/usnic_ib_sysfs.c usnic_vnic_get_index(qp_grp->vf->vnic)); vf 297 drivers/infiniband/hw/usnic/usnic_ib_sysfs.c us_ibdev = qp_grp->vf->pf; vf 312 drivers/infiniband/hw/usnic/usnic_ib_sysfs.c us_ibdev = qp_grp->vf->pf; vf 96 drivers/infiniband/hw/usnic/usnic_ib_verbs.c us_ibdev = qp_grp->vf->pf; vf 97 drivers/infiniband/hw/usnic/usnic_ib_verbs.c pdev = usnic_vnic_get_pdev(qp_grp->vf->vnic); vf 104 drivers/infiniband/hw/usnic/usnic_ib_verbs.c bar = usnic_vnic_get_bar(qp_grp->vf->vnic, 0); vf 111 drivers/infiniband/hw/usnic/usnic_ib_verbs.c resp.vfid = usnic_vnic_get_index(qp_grp->vf->vnic); vf 177 drivers/infiniband/hw/usnic/usnic_ib_verbs.c struct usnic_ib_vf *vf; vf 197 drivers/infiniband/hw/usnic/usnic_ib_verbs.c vf = dev_get_drvdata(dev); vf 198 drivers/infiniband/hw/usnic/usnic_ib_verbs.c spin_lock(&vf->lock); vf 199 drivers/infiniband/hw/usnic/usnic_ib_verbs.c vnic = vf->vnic; vf 206 drivers/infiniband/hw/usnic/usnic_ib_verbs.c vf, pd, vf 210 drivers/infiniband/hw/usnic/usnic_ib_verbs.c spin_unlock(&vf->lock); vf 213 drivers/infiniband/hw/usnic/usnic_ib_verbs.c spin_unlock(&vf->lock); vf 220 drivers/infiniband/hw/usnic/usnic_ib_verbs.c list_for_each_entry(vf, &us_ibdev->vf_dev_list, link) { vf 221 drivers/infiniband/hw/usnic/usnic_ib_verbs.c spin_lock(&vf->lock); vf 222 drivers/infiniband/hw/usnic/usnic_ib_verbs.c vnic = vf->vnic; vf 223 drivers/infiniband/hw/usnic/usnic_ib_verbs.c if (vf->qp_grp_ref_cnt == 0 && vf 225 drivers/infiniband/hw/usnic/usnic_ib_verbs.c qp_grp = usnic_ib_qp_grp_create(us_ibdev->ufdev, vf, vf 229 drivers/infiniband/hw/usnic/usnic_ib_verbs.c spin_unlock(&vf->lock); vf 232 drivers/infiniband/hw/usnic/usnic_ib_verbs.c spin_unlock(&vf->lock); vf 249 drivers/infiniband/hw/usnic/usnic_ib_verbs.c struct usnic_ib_vf *vf = qp_grp->vf; vf 253 drivers/infiniband/hw/usnic/usnic_ib_verbs.c spin_lock(&vf->lock); vf 255 drivers/infiniband/hw/usnic/usnic_ib_verbs.c spin_unlock(&vf->lock); vf 389 drivers/infiniband/hw/usnic/usnic_ib_verbs.c struct usnic_ib_vf *vf; vf 398 drivers/infiniband/hw/usnic/usnic_ib_verbs.c vf = qp_grp->vf; vf 399 drivers/infiniband/hw/usnic/usnic_ib_verbs.c mutex_lock(&vf->pf->usdev_lock); vf 414 drivers/infiniband/hw/usnic/usnic_ib_verbs.c mutex_unlock(&vf->pf->usdev_lock); vf 418 drivers/infiniband/hw/usnic/usnic_ib_verbs.c mutex_unlock(&vf->pf->usdev_lock); vf 531 drivers/infiniband/hw/usnic/usnic_ib_verbs.c usnic_ib_log_vf(qp_grp->vf); vf 545 drivers/infiniband/hw/usnic/usnic_ib_verbs.c struct usnic_ib_vf *vf; vf 550 drivers/infiniband/hw/usnic/usnic_ib_verbs.c vf = qp_grp->vf; vf 551 drivers/infiniband/hw/usnic/usnic_ib_verbs.c mutex_lock(&vf->pf->usdev_lock); vf 559 drivers/infiniband/hw/usnic/usnic_ib_verbs.c mutex_unlock(&vf->pf->usdev_lock); vf 573 drivers/infiniband/hw/usnic/usnic_ib_verbs.c mutex_lock(&qp_grp->vf->pf->usdev_lock); vf 587 drivers/infiniband/hw/usnic/usnic_ib_verbs.c mutex_unlock(&qp_grp->vf->pf->usdev_lock); vf 678 drivers/infiniband/hw/usnic/usnic_ib_verbs.c struct usnic_ib_vf *vf; vf 695 drivers/infiniband/hw/usnic/usnic_ib_verbs.c vf = qp_grp->vf; vf 696 drivers/infiniband/hw/usnic/usnic_ib_verbs.c if (usnic_vnic_get_index(vf->vnic) == vfid) { vf 697 drivers/infiniband/hw/usnic/usnic_ib_verbs.c bar = usnic_vnic_get_bar(vf->vnic, 0); vf 1991 drivers/infiniband/ulp/ipoib/ipoib_main.c static int ipoib_set_vf_link_state(struct net_device *dev, int vf, int link_state) vf 1995 drivers/infiniband/ulp/ipoib/ipoib_main.c return ib_set_vf_link_state(priv->ca, vf, priv->port, link_state); vf 1998 drivers/infiniband/ulp/ipoib/ipoib_main.c static int ipoib_get_vf_config(struct net_device *dev, int vf, vf 2004 drivers/infiniband/ulp/ipoib/ipoib_main.c err = ib_get_vf_config(priv->ca, vf, priv->port, ivf); vf 2008 drivers/infiniband/ulp/ipoib/ipoib_main.c ivf->vf = vf; vf 2014 drivers/infiniband/ulp/ipoib/ipoib_main.c static int ipoib_set_vf_guid(struct net_device *dev, int vf, u64 guid, int type) vf 2021 drivers/infiniband/ulp/ipoib/ipoib_main.c return ib_set_vf_guid(priv->ca, vf, priv->port, guid, type); vf 2024 drivers/infiniband/ulp/ipoib/ipoib_main.c static int ipoib_get_vf_stats(struct net_device *dev, int vf, vf 2029 drivers/infiniband/ulp/ipoib/ipoib_main.c return ib_get_vf_stats(priv->ca, vf, priv->port, vf_stats); vf 135 drivers/leds/leds-as3645a.c struct v4l2_flash *vf; vf 656 drivers/leds/leds-as3645a.c flash->vf = v4l2_flash_init( vf 659 drivers/leds/leds-as3645a.c if (IS_ERR(flash->vf)) vf 660 drivers/leds/leds-as3645a.c return PTR_ERR(flash->vf); vf 666 drivers/leds/leds-as3645a.c v4l2_flash_release(flash->vf); vf 731 drivers/leds/leds-as3645a.c v4l2_flash_release(flash->vf); vf 1095 drivers/media/i2c/max2175.c const struct v4l2_frequency *vf) vf 1102 drivers/media/i2c/max2175.c vf->frequency, ctx->freq, ctx->mode_resolved); vf 1104 drivers/media/i2c/max2175.c if (vf->tuner != 0) vf 1107 drivers/media/i2c/max2175.c freq = clamp(vf->frequency, ctx->bands_rf->rangelow, vf 1125 drivers/media/i2c/max2175.c struct v4l2_frequency *vf) vf 1130 drivers/media/i2c/max2175.c if (vf->tuner != 0) vf 1134 drivers/media/i2c/max2175.c vf->type = V4L2_TUNER_RF; vf 1135 drivers/media/i2c/max2175.c vf->frequency = ctx->freq; vf 1139 drivers/media/pci/cx18/cx18-driver.c struct v4l2_frequency vf; vf 1211 drivers/media/pci/cx18/cx18-driver.c vf.tuner = 0; vf 1212 drivers/media/pci/cx18/cx18-driver.c vf.type = V4L2_TUNER_ANALOG_TV; vf 1213 drivers/media/pci/cx18/cx18-driver.c vf.frequency = 6400; /* the tuner 'baseline' frequency */ vf 1218 drivers/media/pci/cx18/cx18-driver.c vf.frequency = 1460; /* ch. 1 91250*16/1000 */ vf 1220 drivers/media/pci/cx18/cx18-driver.c vf.frequency = 1076; /* ch. 4 67250*16/1000 */ vf 1231 drivers/media/pci/cx18/cx18-driver.c cx18_s_frequency(NULL, &fh, &vf); vf 532 drivers/media/pci/cx18/cx18-ioctl.c struct v4l2_frequency *vf) vf 536 drivers/media/pci/cx18/cx18-ioctl.c if (vf->tuner != 0) vf 539 drivers/media/pci/cx18/cx18-ioctl.c cx18_call_all(cx, tuner, g_frequency, vf); vf 543 drivers/media/pci/cx18/cx18-ioctl.c int cx18_s_frequency(struct file *file, void *fh, const struct v4l2_frequency *vf) vf 548 drivers/media/pci/cx18/cx18-ioctl.c if (vf->tuner != 0) vf 552 drivers/media/pci/cx18/cx18-ioctl.c CX18_DEBUG_INFO("v4l2 ioctl: set frequency %d\n", vf->frequency); vf 553 drivers/media/pci/cx18/cx18-ioctl.c cx18_call_all(cx, tuner, s_frequency, vf); vf 16 drivers/media/pci/cx18/cx18-ioctl.h int cx18_s_frequency(struct file *file, void *fh, const struct v4l2_frequency *vf); vf 1302 drivers/media/pci/ivtv/ivtv-driver.c struct v4l2_frequency vf; vf 1337 drivers/media/pci/ivtv/ivtv-driver.c vf.tuner = 0; vf 1338 drivers/media/pci/ivtv/ivtv-driver.c vf.type = V4L2_TUNER_ANALOG_TV; vf 1339 drivers/media/pci/ivtv/ivtv-driver.c vf.frequency = 6400; /* the tuner 'baseline' frequency */ vf 1344 drivers/media/pci/ivtv/ivtv-driver.c vf.frequency = 1460; /* ch. 1 91250*16/1000 */ vf 1347 drivers/media/pci/ivtv/ivtv-driver.c vf.frequency = 1076; /* ch. 4 67250*16/1000 */ vf 1358 drivers/media/pci/ivtv/ivtv-driver.c ivtv_s_frequency(NULL, &fh, &vf); vf 1058 drivers/media/pci/ivtv/ivtv-ioctl.c static int ivtv_g_frequency(struct file *file, void *fh, struct v4l2_frequency *vf) vf 1065 drivers/media/pci/ivtv/ivtv-ioctl.c if (vf->tuner != 0) vf 1068 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_all(itv, tuner, g_frequency, vf); vf 1072 drivers/media/pci/ivtv/ivtv-ioctl.c int ivtv_s_frequency(struct file *file, void *fh, const struct v4l2_frequency *vf) vf 1079 drivers/media/pci/ivtv/ivtv-ioctl.c if (vf->tuner != 0) vf 1083 drivers/media/pci/ivtv/ivtv-ioctl.c IVTV_DEBUG_INFO("v4l2 ioctl: set frequency %d\n", vf->frequency); vf 1084 drivers/media/pci/ivtv/ivtv-ioctl.c ivtv_call_all(itv, tuner, s_frequency, vf); vf 20 drivers/media/pci/ivtv/ivtv-ioctl.h int ivtv_s_frequency(struct file *file, void *fh, const struct v4l2_frequency *vf); vf 254 drivers/media/platform/vivid/vivid-core.c static int vidioc_g_frequency(struct file *file, void *fh, struct v4l2_frequency *vf) vf 262 drivers/media/platform/vivid/vivid-core.c &dev->radio_rx_freq : &dev->radio_tx_freq, vf); vf 264 drivers/media/platform/vivid/vivid-core.c return vivid_sdr_g_frequency(file, fh, vf); vf 265 drivers/media/platform/vivid/vivid-core.c return vivid_video_g_frequency(file, fh, vf); vf 268 drivers/media/platform/vivid/vivid-core.c static int vidioc_s_frequency(struct file *file, void *fh, const struct v4l2_frequency *vf) vf 276 drivers/media/platform/vivid/vivid-core.c &dev->radio_rx_freq : &dev->radio_tx_freq, vf); vf 278 drivers/media/platform/vivid/vivid-core.c return vivid_sdr_s_frequency(file, fh, vf); vf 279 drivers/media/platform/vivid/vivid-core.c return vivid_video_s_frequency(file, fh, vf); vf 141 drivers/media/platform/vivid/vivid-radio-common.c int vivid_radio_g_frequency(struct file *file, const unsigned *pfreq, struct v4l2_frequency *vf) vf 143 drivers/media/platform/vivid/vivid-radio-common.c if (vf->tuner != 0) vf 145 drivers/media/platform/vivid/vivid-radio-common.c vf->frequency = *pfreq; vf 149 drivers/media/platform/vivid/vivid-radio-common.c int vivid_radio_s_frequency(struct file *file, unsigned *pfreq, const struct v4l2_frequency *vf) vf 155 drivers/media/platform/vivid/vivid-radio-common.c if (vf->tuner != 0) vf 158 drivers/media/platform/vivid/vivid-radio-common.c if (vf->frequency >= (FM_FREQ_RANGE_LOW + SW_FREQ_RANGE_HIGH) / 2) vf 160 drivers/media/platform/vivid/vivid-radio-common.c else if (vf->frequency <= (AM_FREQ_RANGE_HIGH + SW_FREQ_RANGE_LOW) / 2) vf 165 drivers/media/platform/vivid/vivid-radio-common.c freq = clamp_t(u32, vf->frequency, vivid_radio_bands[band].rangelow, vf 23 drivers/media/platform/vivid/vivid-radio-common.h int vivid_radio_g_frequency(struct file *file, const unsigned *freq, struct v4l2_frequency *vf); vf 24 drivers/media/platform/vivid/vivid-radio-common.h int vivid_radio_s_frequency(struct file *file, unsigned *freq, const struct v4l2_frequency *vf); vf 352 drivers/media/platform/vivid/vivid-sdr-cap.c struct v4l2_frequency *vf) vf 356 drivers/media/platform/vivid/vivid-sdr-cap.c switch (vf->tuner) { vf 358 drivers/media/platform/vivid/vivid-sdr-cap.c vf->frequency = dev->sdr_adc_freq; vf 359 drivers/media/platform/vivid/vivid-sdr-cap.c vf->type = V4L2_TUNER_ADC; vf 362 drivers/media/platform/vivid/vivid-sdr-cap.c vf->frequency = dev->sdr_fm_freq; vf 363 drivers/media/platform/vivid/vivid-sdr-cap.c vf->type = V4L2_TUNER_RF; vf 371 drivers/media/platform/vivid/vivid-sdr-cap.c const struct v4l2_frequency *vf) vf 374 drivers/media/platform/vivid/vivid-sdr-cap.c unsigned freq = vf->frequency; vf 377 drivers/media/platform/vivid/vivid-sdr-cap.c switch (vf->tuner) { vf 379 drivers/media/platform/vivid/vivid-sdr-cap.c if (vf->type != V4L2_TUNER_ADC) vf 400 drivers/media/platform/vivid/vivid-sdr-cap.c if (vf->type != V4L2_TUNER_RF) vf 12 drivers/media/platform/vivid/vivid-sdr-cap.h int vivid_sdr_g_frequency(struct file *file, void *fh, struct v4l2_frequency *vf); vf 13 drivers/media/platform/vivid/vivid-sdr-cap.h int vivid_sdr_s_frequency(struct file *file, void *fh, const struct v4l2_frequency *vf); vf 1460 drivers/media/platform/vivid/vivid-vid-cap.c int vivid_video_g_frequency(struct file *file, void *fh, struct v4l2_frequency *vf) vf 1464 drivers/media/platform/vivid/vivid-vid-cap.c if (vf->tuner != 0) vf 1466 drivers/media/platform/vivid/vivid-vid-cap.c vf->frequency = dev->tv_freq; vf 1470 drivers/media/platform/vivid/vivid-vid-cap.c int vivid_video_s_frequency(struct file *file, void *fh, const struct v4l2_frequency *vf) vf 1474 drivers/media/platform/vivid/vivid-vid-cap.c if (vf->tuner != 0) vf 1476 drivers/media/platform/vivid/vivid-vid-cap.c dev->tv_freq = clamp_t(unsigned, vf->frequency, MIN_TV_FREQ, MAX_TV_FREQ); vf 45 drivers/media/platform/vivid/vivid-vid-cap.h int vivid_video_g_frequency(struct file *file, void *fh, struct v4l2_frequency *vf); vf 46 drivers/media/platform/vivid/vivid-vid-cap.h int vivid_video_s_frequency(struct file *file, void *fh, const struct v4l2_frequency *vf); vf 93 drivers/media/radio/si4713/radio-platform-si4713.c struct v4l2_frequency *vf) vf 96 drivers/media/radio/si4713/radio-platform-si4713.c g_frequency, vf); vf 100 drivers/media/radio/si4713/radio-platform-si4713.c const struct v4l2_frequency *vf) vf 103 drivers/media/radio/si4713/radio-platform-si4713.c s_frequency, vf); vf 93 drivers/media/radio/si4713/radio-usb-si4713.c const struct v4l2_frequency *vf) vf 97 drivers/media/radio/si4713/radio-usb-si4713.c return v4l2_subdev_call(radio->v4l2_subdev, tuner, s_frequency, vf); vf 101 drivers/media/radio/si4713/radio-usb-si4713.c struct v4l2_frequency *vf) vf 105 drivers/media/radio/si4713/radio-usb-si4713.c return v4l2_subdev_call(radio->v4l2_subdev, tuner, g_frequency, vf); vf 315 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c static int pvr2_s_frequency(struct file *file, void *priv, const struct v4l2_frequency *vf) vf 332 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c if (vf->type == V4L2_TUNER_RADIO) { vf 339 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c fv = vf->frequency; vf 350 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c static int pvr2_g_frequency(struct file *file, void *priv, struct v4l2_frequency *vf) vf 371 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c vf->type = V4L2_TUNER_RADIO; vf 373 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c vf->type = V4L2_TUNER_ANALOG_TV; vf 378 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c vf->frequency = val; vf 392 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c static int pvr2_g_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *vf) vf 398 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c memcpy(vf, &pvr_format[PVR_FORMAT_PIX], sizeof(struct v4l2_format)); vf 403 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c vf->fmt.pix.width = val; vf 408 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c vf->fmt.pix.height = val; vf 412 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c static int pvr2_try_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *vf) vf 418 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c int h = vf->fmt.pix.height; vf 419 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c int w = vf->fmt.pix.width; vf 443 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c memcpy(vf, &pvr_format[PVR_FORMAT_PIX], vf 445 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c vf->fmt.pix.width = w; vf 446 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c vf->fmt.pix.height = h; vf 450 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c static int pvr2_s_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *vf) vf 455 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c int ret = pvr2_try_fmt_vid_cap(file, fh, vf); vf 461 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c pvr2_ctrl_set_value(hcp, vf->fmt.pix.width); vf 462 drivers/media/usb/pvrusb2/pvrusb2-v4l2.c pvr2_ctrl_set_value(vcp, vf->fmt.pix.height); vf 813 drivers/media/usb/usbvision/usbvision-video.c struct v4l2_format *vf) vf 816 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.width = usbvision->curwidth; vf 817 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.height = usbvision->curheight; vf 818 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.pixelformat = usbvision->palette.format; vf 819 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.bytesperline = vf 821 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.sizeimage = vf->fmt.pix.bytesperline * usbvision->curheight; vf 822 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.colorspace = V4L2_COLORSPACE_SMPTE170M; vf 823 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.field = V4L2_FIELD_NONE; /* Always progressive image */ vf 829 drivers/media/usb/usbvision/usbvision-video.c struct v4l2_format *vf) vf 836 drivers/media/usb/usbvision/usbvision-video.c if (vf->fmt.pix.pixelformat == vf 845 drivers/media/usb/usbvision/usbvision-video.c RESTRICT_TO_RANGE(vf->fmt.pix.width, MIN_FRAME_WIDTH, MAX_FRAME_WIDTH); vf 846 drivers/media/usb/usbvision/usbvision-video.c RESTRICT_TO_RANGE(vf->fmt.pix.height, MIN_FRAME_HEIGHT, MAX_FRAME_HEIGHT); vf 848 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.bytesperline = vf->fmt.pix.width* vf 850 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.sizeimage = vf->fmt.pix.bytesperline*vf->fmt.pix.height; vf 851 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.colorspace = V4L2_COLORSPACE_SMPTE170M; vf 852 drivers/media/usb/usbvision/usbvision-video.c vf->fmt.pix.field = V4L2_FIELD_NONE; /* Always progressive image */ vf 858 drivers/media/usb/usbvision/usbvision-video.c struct v4l2_format *vf) vf 863 drivers/media/usb/usbvision/usbvision-video.c ret = vidioc_try_fmt_vid_cap(file, priv, vf); vf 879 drivers/media/usb/usbvision/usbvision-video.c usbvision_set_output(usbvision, vf->fmt.pix.width, vf->fmt.pix.height); vf 336 drivers/misc/genwqe/card_base.c unsigned int vf; vf 345 drivers/misc/genwqe/card_base.c for (vf = 0; vf < totalvfs; vf++) { vf 347 drivers/misc/genwqe/card_base.c if (cd->vf_jobtimeout_msec[vf] == 0) vf 350 drivers/misc/genwqe/card_base.c x = ilog2(cd->vf_jobtimeout_msec[vf] * vf 354 drivers/misc/genwqe/card_base.c 0xff00 | (x & 0xff), vf + 1); vf 494 drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h int bnx2x_get_vf_config(struct net_device *dev, int vf, vf 497 drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h int bnx2x_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, u8 qos, vf 9985 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c struct bnx2x_virtf *vf = BP_VF(bp, vf_idx); vf 9987 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c if (vf) vf 9988 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c vf->state = VF_LOST; vf 30 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf **vf, vf 78 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vf_igu_ack_sb(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 86 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c u32 func_encode = vf->abs_vfid; vf 112 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf, vf 115 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!bnx2x_leading_vfq(vf, sp_initialized)) { vf 126 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c void bnx2x_vfop_qctor_dump_tx(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 133 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, vf 142 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c void bnx2x_vfop_qctor_dump_rx(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 151 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, vf 167 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf, vf 185 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c init_p->rx.fw_sb_id = vf_igu_sb(vf, q->sb_idx); vf 186 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c init_p->tx.fw_sb_id = vf_igu_sb(vf, q->sb_idx); vf 194 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c setup_p->gen_params.spcl_id = vf->sp_cl_id; vf 195 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c setup_p->gen_params.stat_id = vfq_stat_id(vf, q); vf 196 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c setup_p->gen_params.fp_hsi = vf->fp_hsi; vf 210 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->spoofchk) vf 219 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rxq_p->cl_qzone_id = vfq_qzone_id(vf, q); vf 220 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rxq_p->fw_sb_id = vf_igu_sb(vf, q->sb_idx); vf 221 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rxq_p->rss_engine_id = FW_VF_HANDLE(vf->abs_vfid); vf 229 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c setup_p->txq_params.tss_leading_cl_id = vf->leading_rss; vf 230 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c setup_p->txq_params.fw_sb_id = vf_igu_sb(vf, q->sb_idx); vf 235 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf, int qid, vf 241 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d:%d]\n", vf->abs_vfid, qid); vf 245 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c q_params->q_obj = &bnx2x_vfq(vf, qid, sp_obj); vf 268 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_igu_ack_sb(bp, vf, vf_igu_sb(vf, bnx2x_vfq(vf, qid, sb_idx)), vf 274 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static int bnx2x_vf_queue_destroy(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 283 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d]\n", vf->abs_vfid); vf 287 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c q_params.q_obj = &bnx2x_vfq(vf, qid, sp_obj); vf 307 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (bnx2x_vfq(vf, qid, cxt)) { vf 308 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vfq(vf, qid, cxt)->ustorm_ag_context.cdu_usage = 0; vf 309 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vfq(vf, qid, cxt)->xstorm_ag_context.cdu_reserved = 0; vf 318 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = bnx2x_vf_by_abs_fid(bp, abs_vfid); vf 319 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf) { vf 325 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!vf_sb_count(vf)) vf 326 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->igu_base_id = igu_sb_id; vf 328 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ++vf_sb_count(vf); vf 329 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ++vf->sb_count; vf 355 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static int bnx2x_vf_vlan_mac_clear(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 361 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d] - deleting all %s\n", vf->abs_vfid, vf 369 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod.vlan_mac_obj = &bnx2x_vfq(vf, qid, vlan_mac_obj); vf 372 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod.vlan_mac_obj = &bnx2x_vfq(vf, qid, mac_obj); vf 374 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod.vlan_mac_obj = &bnx2x_vfq(vf, qid, vlan_obj); vf 400 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf, int qid, vf 408 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, filter->add ? "Adding" : "Deleting", vf 415 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod.vlan_mac_obj = &bnx2x_vfq(vf, qid, vlan_mac_obj); vf 420 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod.vlan_mac_obj = &bnx2x_vfq(vf, qid, vlan_obj); vf 424 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod.vlan_mac_obj = &bnx2x_vfq(vf, qid, mac_obj); vf 455 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_mac_vlan_config_list(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 461 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d]\n", vf->abs_vfid); vf 463 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!bnx2x_validate_vf_sp_objs(bp, vf, true)) vf 468 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_mac_vlan_config(bp, vf, qid, vf 482 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_mac_vlan_config(bp, vf, qid, vf 494 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_queue_setup(struct bnx2x *bp, struct bnx2x_virtf *vf, int qid, vf 499 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d:%d]\n", vf->abs_vfid, qid); vf 501 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_queue_create(bp, vf, qid, qctor); vf 510 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c BNX2X_ERR("QSETUP[%d:%d] error: rc %d\n", vf->abs_vfid, qid, rc); vf 514 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static int bnx2x_vf_queue_flr(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 519 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d:%d]\n", vf->abs_vfid, qid); vf 523 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_validate_vf_sp_objs(bp, vf, false)) { vf 524 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_vlan_mac_clear(bp, vf, qid, true, vf 528 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_vlan_mac_clear(bp, vf, qid, true, vf 532 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_vlan_mac_clear(bp, vf, qid, true, vf 539 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (bnx2x_vfq(vf, qid, sp_obj).state != BNX2X_Q_STATE_RESET) { vf 543 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c qstate.q_obj = &bnx2x_vfq(vf, qid, sp_obj); vf 554 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c BNX2X_ERR("vf[%d:%d] error: rc %d\n", vf->abs_vfid, qid, rc); vf 558 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_mcast(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 565 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d]\n", vf->abs_vfid); vf 569 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c mcast.mcast_obj = &vf->mcast_obj; vf 610 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf, vf 613 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_vf_queue *vfq = vfq_get(vf, qid); vf 617 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod->cl_id = vfq_cl_id(vf, vfq); vf 619 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod->func_id = FW_VF_HANDLE(vf->abs_vfid); vf 622 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod->pstate = &vf->filter_state; vf 625 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c set_bit(BNX2X_FILTER_RX_MODE_PENDING, &vf->filter_state); vf 629 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod->rdata = bnx2x_vf_sp(bp, vf, rx_mode_rdata.e2); vf 630 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod->rdata_mapping = bnx2x_vf_sp_map(bp, vf, rx_mode_rdata.e2); vf 633 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_rxmode(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 638 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d]\n", vf->abs_vfid); vf 640 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_prep_rx_mode(bp, qid, &ramrod, vf, accept_flags); vf 642 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vfq_get(vf, qid)->accept_flags = ramrod.rx_accept_flags; vf 646 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_queue_teardown(struct bnx2x *bp, struct bnx2x_virtf *vf, int qid) vf 650 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d:%d]\n", vf->abs_vfid, qid); vf 654 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_rxmode(bp, vf, qid, 0); vf 659 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (bnx2x_validate_vf_sp_objs(bp, vf, true)) { vf 660 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_vlan_mac_clear(bp, vf, qid, vf 665 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_vlan_mac_clear(bp, vf, qid, vf 670 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_vlan_mac_clear(bp, vf, qid, vf 675 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_mcast(bp, vf, NULL, 0, false); vf 682 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_queue_destroy(bp, vf, qid); vf 688 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, qid, rc); vf 736 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vf_igu_reset(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 742 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_pretend_func(bp, HW_VF_HANDLE(bp, vf->abs_vfid)); vf 759 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, val); vf 764 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for (i = 0; i < vf_sb_count(vf); i++) { vf 765 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c u8 igu_sb_id = vf_igu_sb(vf, i); vf 771 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_igu_clear_sb_gen(bp, vf->abs_vfid, igu_sb_id, vf 775 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_igu_ack_sb(bp, vf, igu_sb_id, USTORM_ID, 0, vf 797 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vf_enable_traffic(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 800 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_igu_reset(bp, vf); vf 803 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_pretend_func(bp, HW_VF_HANDLE(bp, vf->abs_vfid)); vf 811 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = bnx2x_vf_by_abs_fid(bp, abs_vfid); vf 813 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!vf) vf 816 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c dev = pci_get_domain_bus_and_slot(vf->domain, vf->bus, vf->devfn); vf 835 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_iov_static_resc(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 837 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct vf_pf_resc_request *resc = &vf->alloc_resc; vf 850 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c resc->num_sbs = vf->sb_count; vf 854 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vf_free_resc(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 857 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_iov_static_resc(bp, vf); vf 858 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->state = VF_FREE; vf 861 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vf_flr_clnup_hw(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 866 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_pretend_func(bp, HW_VF_HANDLE(bp, vf->abs_vfid)); vf 873 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (bnx2x_send_final_clnup(bp, (u8)FW_VF_HANDLE(vf->abs_vfid), vf 875 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c BNX2X_ERR("VF[%d] Final cleanup timed-out\n", vf->abs_vfid); vf 881 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vf_flr(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 885 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d]\n", vf->abs_vfid); vf 890 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for (i = 0; i < vf_rxq_count(vf); i++) { vf 891 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_queue_flr(bp, vf, i); vf 897 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_mcast(bp, vf, NULL, 0, true); vf 900 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_flr_clnup_hw(bp, vf); vf 903 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_free_resc(bp, vf); vf 905 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->malicious = false; vf 908 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_enable_mbx(bp, vf->abs_vfid); vf 912 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, i, rc); vf 917 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf; vf 929 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf = BP_VF(bp, i); vf 932 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_lock_vf_pf_channel(bp, vf, CHANNEL_TLV_FLR); vf 935 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_flr(bp, vf); vf 938 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->flr_clnup_stage = false; vf 939 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_unlock_vf_pf_channel(bp, vf, CHANNEL_TLV_FLR); vf 977 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = BP_VF(bp, i); vf 980 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->abs_vfid < 32) vf 981 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c reset = bp->vfdb->flrd_vfs[0] & (1 << vf->abs_vfid); vf 984 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c (1 << (vf->abs_vfid - 32)); vf 988 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->state = VF_RESET; vf 989 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->flr_clnup_stage = true; vf 993 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid); vf 1069 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vf_set_bars(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 1080 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->bars[n].bar = start + size * vf->abs_vfid; vf 1081 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->bars[n].size = size; vf 1421 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vfq_init(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 1424 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c u8 cl_id = vfq_cl_id(vf, q); vf 1425 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c u8 func_id = FW_VF_HANDLE(vf->abs_vfid); vf 1434 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_sp(bp, vf, q_data), vf 1435 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_sp_map(bp, vf, q_data), vf 1443 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, q->sp_obj.func_id, q->cid); vf 1461 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf; vf 1466 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_op_prep(bp, idx, &vf, &bulletin, false); vf 1472 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->link_cfg == IFLA_VF_LINK_STATE_AUTO) { vf 1489 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c } else if (vf->link_cfg == IFLA_VF_LINK_STATE_DISABLE && vf 1493 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c } else if (vf->link_cfg == IFLA_VF_LINK_STATE_ENABLE && vf 1505 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->link_cfg, bulletin->link_speed, bulletin->link_flags); vf 1523 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = BP_VF(bp, idx); vf 1525 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!vf) vf 1528 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->link_cfg == link_state) vf 1531 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->link_cfg = link_state; vf 1564 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = BP_VF(bp, vfid); vf 1575 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, vf_sb_count(vf), base_vf_cid, vf 1579 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_iov_static_resc(bp, vf); vf 1582 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->filter_state = 0; vf 1583 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->sp_cl_id = bnx2x_fp(bp, 0, cl_id); vf 1585 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_init_credit_pool(&vf->vf_vlans_pool, 0, vf 1586 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf_vlan_rules_cnt(vf)); vf 1587 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_init_credit_pool(&vf->vf_macs_pool, 0, vf 1588 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf_mac_rules_cnt(vf)); vf 1595 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_init_mcast_obj(bp, &vf->mcast_obj, 0xFF, vf 1597 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_sp(bp, vf, mcast_rdata), vf 1598 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_sp_map(bp, vf, mcast_rdata), vf 1600 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c &vf->filter_state, vf 1612 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_enable_mbx(bp, vf->abs_vfid); vf 1617 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = BP_VF(bp, vfid); vf 1620 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->domain = bnx2x_vf_domain(bp, vfid); vf 1621 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->bus = bnx2x_vf_bus(bp, vfid); vf 1622 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->devfn = bnx2x_vf_devfn(bp, vfid); vf 1623 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_set_bars(bp, vf); vf 1627 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, vf->bus, vf->devfn, vf 1628 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c (unsigned)vf->bars[0].bar, vf->bars[0].size, vf 1629 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c (unsigned)vf->bars[1].bar, vf->bars[1].size, vf 1630 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c (unsigned)vf->bars[2].bar, vf->bars[2].size); vf 1710 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf) vf 1715 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rparam.mcast_obj = &vf->mcast_obj; vf 1716 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->mcast_obj.raw.clear_pending(&vf->mcast_obj.raw); vf 1719 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->mcast_obj.check_pending(&vf->mcast_obj)) { vf 1729 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf) vf 1732 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c clear_bit(BNX2X_FILTER_RX_MODE_PENDING, &vf->filter_state); vf 1737 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf) vf 1739 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->rss_conf_obj.raw.clear_pending(&vf->rss_conf_obj.raw); vf 1744 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf; vf 1797 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf = bnx2x_vf_by_abs_fid(bp, abs_vfid); vf 1799 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!vf) { vf 1808 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, qidx); vf 1809 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vfq_get(vf, qidx)->sp_obj.complete_cmd(bp, vf 1810 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c &vfq_get(vf, vf 1816 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, qidx); vf 1817 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_handle_classification_eqe(bp, vfq_get(vf, qidx), elem); vf 1821 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, qidx); vf 1822 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_handle_mcast_eqe(bp, vf); vf 1826 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, qidx); vf 1827 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_handle_filters_eqe(bp, vf); vf 1831 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, qidx); vf 1832 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_handle_rss_update_eqe(bp, vf); vf 1838 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->malicious = true; vf 1858 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf; vf 1863 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf = bnx2x_vf_by_cid(bp, vf_cid); vf 1865 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf) { vf 1871 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c *q_obj = &bnx2x_vfq(vf, q_index, sp_obj); vf 1911 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = BP_VF(bp, i); vf 1913 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->state != VF_ENABLED) { vf 1916 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid); vf 1920 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->malicious) { vf 1923 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid); vf 1928 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c "add addresses for vf %d\n", vf->abs_vfid); vf 1929 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for_each_vfq(vf, j) { vf 1930 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_vf_queue *rxq = vfq_get(vf, j); vf 1933 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->fw_stat_map + j * vf->stats_stride; vf 1942 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c cur_query_entry->index = vfq_stat_id(vf, rxq); vf 1944 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c cpu_to_le16(FW_VF_HANDLE(vf->abs_vfid)); vf 1960 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->cfg_flags & VF_CFG_STATS_COALESCE) vf 1977 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vf_clr_qtbl(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 1981 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for_each_vfq(vf, i) vf 1982 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_qtbl_set_q(bp, vf->abs_vfid, vf 1983 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vfq_qzone_id(vf, vfq_get(vf, i)), false); vf 1986 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static void bnx2x_vf_igu_disable(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 1991 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_pretend_func(bp, HW_VF_HANDLE(bp, vf->abs_vfid)); vf 1999 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c u8 bnx2x_vf_max_queue_cnt(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 2001 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c return min_t(u8, min_t(u8, vf_sb_count(vf), BNX2X_CIDS_PER_VF), vf 2006 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_chk_avail_resc(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 2009 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c u8 rxq_cnt = vf_rxq_count(vf) ? : bnx2x_vf_max_queue_cnt(bp, vf); vf 2010 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c u8 txq_cnt = vf_txq_count(vf) ? : bnx2x_vf_max_queue_cnt(bp, vf); vf 2014 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c (req_resc->num_sbs <= vf_sb_count(vf)) && vf 2015 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c (req_resc->num_mac_filters <= vf_mac_rules_cnt(vf)) && vf 2016 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c (req_resc->num_vlan_filters <= vf_vlan_rules_cnt(vf))); vf 2020 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_acquire(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 2023 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int base_vf_cid = (BP_VFDB(bp)->sriov.first_vf_in_pf + vf->index) * vf 2036 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->state == VF_ACQUIRED) { vf 2038 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid); vf 2040 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!bnx2x_vf_chk_avail_resc(bp, vf, resc)) { vf 2042 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid); vf 2049 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->state != VF_FREE && vf->state != VF_RESET) { vf 2051 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, vf->state); vf 2059 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!bnx2x_vf_chk_avail_resc(bp, vf, resc)) { vf 2067 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf_sb_count(vf) = resc->num_sbs; vf 2068 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf_rxq_count(vf) = resc->num_rxqs ? : bnx2x_vf_max_queue_cnt(bp, vf); vf 2069 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf_txq_count(vf) = resc->num_txqs ? : bnx2x_vf_max_queue_cnt(bp, vf); vf 2073 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf_sb_count(vf), vf_rxq_count(vf), vf 2074 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf_txq_count(vf), vf_mac_rules_cnt(vf), vf 2075 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf_vlan_rules_cnt(vf)); vf 2078 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!vf->vfqs) { vf 2083 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for_each_vfq(vf, i) { vf 2084 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_vf_queue *q = vfq_get(vf, i); vf 2096 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, i, q->index, q->cid, q->cxt); vf 2099 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vfq_init(bp, vf, q); vf 2101 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->state = VF_ACQUIRED; vf 2105 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_init(struct bnx2x *bp, struct bnx2x_virtf *vf, dma_addr_t *sb_map) vf 2113 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for_each_vf_sb(vf, i) vf 2114 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_init_sb(bp, (dma_addr_t)sb_map[i], vf->abs_vfid, true, vf 2115 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf_igu_sb(vf, i), vf_igu_sb(vf, i)); vf 2118 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->state != VF_ACQUIRED) { vf 2120 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, vf->state); vf 2128 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (bnx2x_vf_flr_clnup_epilog(bp, vf->abs_vfid)) vf 2132 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c REG_WR(bp, IGU_REG_STATISTIC_NUM_MESSAGE_SENT + vf->abs_vfid * 4 , 0); vf 2136 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c func_init.func_id = FW_VF_HANDLE(vf->abs_vfid); vf 2140 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_enable_access(bp, vf->abs_vfid); vf 2141 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_enable_traffic(bp, vf); vf 2144 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for_each_vfq(vf, i) vf 2145 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_qtbl_set_q(bp, vf->abs_vfid, vf 2146 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vfq_qzone_id(vf, vfq_get(vf, i)), true); vf 2148 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->state = VF_ENABLED; vf 2151 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_post_vf_bulletin(bp, vf->index); vf 2157 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf; vf 2165 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c p->vf->state = p->state; vf 2168 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_close(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 2172 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d]\n", vf->abs_vfid); vf 2175 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for (i = 0; i < vf_rxq_count(vf); i++) { vf 2176 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_queue_teardown(bp, vf, i); vf 2183 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_igu_disable(bp, vf); vf 2187 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_clr_qtbl(bp, vf); vf 2196 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c cookie.vf = vf; vf 2207 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c BNX2X_ERR("vf[%d] CLOSE error: rc %d\n", vf->abs_vfid, rc); vf 2215 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_free(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 2219 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "VF[%d] STATE: %s\n", vf->abs_vfid, vf 2220 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->state == VF_FREE ? "Free" : vf 2221 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->state == VF_ACQUIRED ? "Acquired" : vf 2222 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->state == VF_ENABLED ? "Enabled" : vf 2223 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->state == VF_RESET ? "Reset" : vf 2226 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c switch (vf->state) { vf 2228 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_close(bp, vf); vf 2234 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_free_resc(bp, vf); vf 2244 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c BNX2X_ERR("VF[%d] RELEASE error: rc %d\n", vf->abs_vfid, rc); vf 2248 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_rss_update(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 2251 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d]\n", vf->abs_vfid); vf 2256 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_tpa_update(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 2264 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "vf[%d]\n", vf->abs_vfid); vf 2273 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for (qid = 0; qid < vf_rxq_count(vf); qid++) { vf 2274 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c qstate.q_obj = &bnx2x_vfq(vf, qid, sp_obj); vf 2277 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, qid, U64_HI(sge_addr[qid]), vf 2283 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, qid); vf 2295 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c int bnx2x_vf_release(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 2299 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c DP(BNX2X_MSG_IOV, "PF releasing vf %d\n", vf->abs_vfid); vf 2300 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_lock_vf_pf_channel(bp, vf, CHANNEL_TLV_PF_RELEASE_VF); vf 2302 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_free(bp, vf); vf 2306 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, rc); vf 2307 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_unlock_vf_pf_channel(bp, vf, CHANNEL_TLV_PF_RELEASE_VF); vf 2311 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c void bnx2x_lock_vf_pf_channel(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 2321 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c mutex_lock(&vf->op_mutex); vf 2324 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->op_current = tlv; vf 2328 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, tlv); vf 2331 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c void bnx2x_unlock_vf_pf_channel(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 2336 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!vf) { vf 2337 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c BNX2X_ERR("VF was %p\n", vf); vf 2341 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c current_tlv = vf->op_current; vf 2347 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c WARN(expected_tlv != vf->op_current, vf 2349 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->op_current); vf 2352 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->op_current = CHANNEL_TLV_NONE; vf 2355 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c mutex_unlock(&vf->op_mutex); vf 2359 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->abs_vfid, current_tlv); vf 2477 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = BP_VF(bp, vf_idx); vf 2479 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->sb_count = 0; vf 2508 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = BP_VF(bp, vf_idx); vf 2511 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->vfqs = &bp->vfdb->vfqs[qcount]; vf 2512 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c qcount += vf_sb_count(vf); vf 2513 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_iov_static_resc(bp, vf); vf 2574 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf **vf, vf 2595 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c *vf = BP_VF(bp, vfidx); vf 2598 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!*vf) { vf 2603 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (test_queue && !(*vf)->vfqs) { vf 2622 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = NULL; vf 2629 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_op_prep(bp, vfidx, &vf, &bulletin, true); vf 2633 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c mac_obj = &bnx2x_leading_vfq(vf, mac_obj); vf 2634 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vlan_obj = &bnx2x_leading_vfq(vf, vlan_obj); vf 2640 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ivi->vf = vfidx; vf 2644 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ivi->spoofchk = vf->spoofchk ? 1 : 0; vf 2645 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ivi->linkstate = vf->link_cfg; vf 2646 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->state == VF_ENABLED) { vf 2648 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (bnx2x_validate_vf_sp_objs(bp, vf, false)) { vf 2700 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = NULL; vf 2709 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_op_prep(bp, vfidx, &vf, &bulletin, true); vf 2733 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_get_q_logical_state(bp, &bnx2x_leading_vfq(vf, sp_obj)); vf 2734 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->state == VF_ENABLED && vf 2741 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!bnx2x_validate_vf_sp_objs(bp, vf, true)) vf 2745 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_lock_vf_pf_channel(bp, vf, CHANNEL_TLV_PF_SET_MAC); vf 2748 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c mac_obj = &bnx2x_leading_vfq(vf, mac_obj); vf 2770 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_unlock_vf_pf_channel(bp, vf, CHANNEL_TLV_PF_SET_MAC); vf 2777 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf, bool accept) vf 2783 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c accept_flags = bnx2x_leading_vfq(vf, accept_flags); vf 2789 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_vf_prep_rx_mode(bp, LEADING_IDX, &rx_ramrod, vf, vf 2791 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_leading_vfq(vf, accept_flags) = accept_flags; vf 2795 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c static int bnx2x_set_vf_vlan_filter(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 2805 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c ramrod_param.vlan_mac_obj = &bnx2x_leading_vfq(vf, vlan_obj); vf 2827 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf = NULL; vf 2842 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_vf_op_prep(bp, vfidx, &vf, &bulletin, true); vf 2867 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->state != VF_ENABLED || vf 2868 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_get_q_logical_state(bp, &bnx2x_leading_vfq(vf, sp_obj)) != vf 2873 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!bnx2x_validate_vf_sp_objs(bp, vf, true)) vf 2877 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_lock_vf_pf_channel(bp, vf, CHANNEL_TLV_PF_SET_VLAN); vf 2881 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vlan_obj = &bnx2x_leading_vfq(vf, vlan_obj); vf 2893 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vlan || !(vf->cfg_flags & VF_CFG_VLAN_FILTER)) vf 2894 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_set_vf_vlan_acceptance(bp, vf, !vlan); vf 2896 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c rc = bnx2x_set_vf_vlan_filter(bp, vf, vlan, true); vf 2903 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for_each_vfq(vf, i) { vf 2907 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c q_params.q_obj = &bnx2x_vfq(vf, i, sp_obj); vf 2953 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_unlock_vf_pf_channel(bp, vf, CHANNEL_TLV_PF_SET_VLAN); vf 2966 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c struct bnx2x_virtf *vf; vf 2969 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf = BP_VF(bp, idx); vf 2970 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!vf) vf 2974 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->spoofchk == val) vf 2977 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c vf->spoofchk = val ? 1 : 0; vf 2983 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (vf->state != VF_ENABLED || vf 2984 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c bnx2x_get_q_logical_state(bp, &bnx2x_leading_vfq(vf, sp_obj)) != vf 2989 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c if (!bnx2x_validate_vf_sp_objs(bp, vf, true)) vf 2993 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c for_each_vfq(vf, i) { vf 2997 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c q_params.q_obj = &bnx2x_vfq(vf, i, sp_obj); vf 166 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define vf_rxq_count(vf) ((vf)->alloc_resc.num_rxqs) vf 167 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define vf_txq_count(vf) ((vf)->alloc_resc.num_txqs) vf 168 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define vf_sb_count(vf) ((vf)->alloc_resc.num_sbs) vf 169 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define vf_mac_rules_cnt(vf) ((vf)->alloc_resc.num_mac_filters) vf 170 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define vf_vlan_rules_cnt(vf) ((vf)->alloc_resc.num_vlan_filters) vf 171 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define vf_mc_rules_cnt(vf) ((vf)->alloc_resc.num_mc_filters) vf 179 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define bnx2x_vfq(vf, nr, var) ((vf)->vfqs[(nr)].var) vf 180 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define bnx2x_leading_vfq(vf, var) ((vf)->vfqs[LEADING_IDX].var) vf 224 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define for_each_vfq(vf, var) \ vf 225 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h for ((var) = 0; (var) < vf_rxq_count(vf); (var)++) vf 227 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define for_each_vf_sb(vf, var) \ vf 228 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h for ((var) = 0; (var) < vf_sb_count(vf); (var)++) vf 230 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define is_vf_multi(vf) (vf_rxq_count(vf) > 1) vf 247 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h void bnx2x_lock_vf_pf_channel(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 250 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h void bnx2x_unlock_vf_pf_channel(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 341 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define BP_VF_BULLETIN(bp, vf) \ vf 343 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h + (vf)) vf 346 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define bnx2x_vf_sp(bp, vf, field) ((bp)->vfdb->sp_dma.addr + \ vf 347 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h (vf)->index * sizeof(struct bnx2x_vf_sp) + \ vf 349 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h #define bnx2x_vf_sp_map(bp, vf, field) ((bp)->vfdb->sp_dma.mapping + \ vf 350 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h (vf)->index * sizeof(struct bnx2x_vf_sp) + \ vf 369 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h static inline struct bnx2x_vf_queue *vfq_get(struct bnx2x_virtf *vf, u8 index) vf 371 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h return &(vf->vfqs[index]); vf 375 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h static inline u8 vf_igu_sb(struct bnx2x_virtf *vf, u16 sb_idx) vf 377 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h return vf->igu_base_id + sb_idx; vf 380 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h static inline u8 vf_hc_qzone(struct bnx2x_virtf *vf, u16 sb_idx) vf 382 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h return vf_igu_sb(vf, sb_idx); vf 385 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h static u8 vfq_cl_id(struct bnx2x_virtf *vf, struct bnx2x_vf_queue *q) vf 387 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h return vf->igu_base_id + q->index; vf 390 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h static inline u8 vfq_stat_id(struct bnx2x_virtf *vf, struct bnx2x_vf_queue *q) vf 392 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h if (vf->cfg_flags & VF_CFG_STATS_COALESCE) vf 393 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h return vf->leading_rss; vf 395 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h return vfq_cl_id(vf, q); vf 398 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h static inline u8 vfq_qzone_id(struct bnx2x_virtf *vf, struct bnx2x_vf_queue *q) vf 400 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h return vfq_cl_id(vf, q); vf 428 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_acquire(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 431 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_init(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 435 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h void bnx2x_vfop_qctor_dump_tx(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 440 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h void bnx2x_vfop_qctor_dump_rx(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 446 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h struct bnx2x_virtf *vf, vf 451 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_mac_vlan_config_list(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 455 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_queue_setup(struct bnx2x *bp, struct bnx2x_virtf *vf, int qid, vf 458 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_queue_teardown(struct bnx2x *bp, struct bnx2x_virtf *vf, int qid); vf 460 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_mcast(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 463 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_rxmode(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 466 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_close(struct bnx2x *bp, struct bnx2x_virtf *vf); vf 468 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_free(struct bnx2x *bp, struct bnx2x_virtf *vf); vf 470 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_rss_update(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 473 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_tpa_update(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 482 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_vf_release(struct bnx2x *bp, struct bnx2x_virtf *vf); vf 484 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h u8 bnx2x_vf_max_queue_cnt(struct bnx2x *bp, struct bnx2x_virtf *vf); vf 498 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_post_vf_bulletin(struct bnx2x *bp, int vf); vf 554 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h int bnx2x_set_vf_link_state(struct net_device *dev, int vf, int link_state); vf 624 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.h static inline int bnx2x_set_vf_link_state(struct net_device *dev, int vf, vf 542 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_leading_vfq_init(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 545 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c u8 cl_id = vfq_cl_id(vf, q); vf 546 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c u8 func_id = FW_VF_HANDLE(vf->abs_vfid); vf 551 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp(bp, vf, mac_rdata), vf 552 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp_map(bp, vf, mac_rdata), vf 554 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &vf->filter_state, vf 556 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &vf->vf_macs_pool); vf 560 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp(bp, vf, vlan_rdata), vf 561 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp_map(bp, vf, vlan_rdata), vf 563 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &vf->filter_state, vf 565 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &vf->vf_vlans_pool); vf 569 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp(bp, vf, vlan_mac_rdata), vf 570 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp_map(bp, vf, vlan_mac_rdata), vf 572 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &vf->filter_state, vf 574 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &vf->vf_macs_pool, vf 575 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &vf->vf_vlans_pool); vf 577 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_init_mcast_obj(bp, &vf->mcast_obj, cl_id, vf 579 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp(bp, vf, mcast_rdata), vf 580 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp_map(bp, vf, mcast_rdata), vf 582 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &vf->filter_state, vf 586 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_init_rss_config_obj(bp, &vf->rss_conf_obj, cl_id, q->cid, vf 588 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp(bp, vf, rss_rdata), vf 589 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_sp_map(bp, vf, rss_rdata), vf 591 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &vf->filter_state, vf 594 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->leading_rss = cl_id; vf 1124 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf) vf 1126 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_vf_mbx *mbx = BP_VF_MBX(bp, vf->index); vf 1140 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf, vf 1143 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_vf_mbx *mbx = BP_VF_MBX(bp, vf->index); vf 1166 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_copy32_vf_dmae(bp, false, pf_addr, vf->abs_vfid, vf 1172 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid); vf 1179 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c storm_memset_vf_mbx_ack(bp, vf->abs_vfid); vf 1184 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_copy32_vf_dmae(bp, false, pf_addr, vf->abs_vfid, vf 1190 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_unlock_vf_pf_channel(bp, vf, mbx->first_tlv.tl.type); vf 1194 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid); vf 1200 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_release(bp, vf); vf 1204 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf, vf 1207 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp_single_tlv(bp, vf); vf 1208 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp_send_msg(bp, vf, rc); vf 1212 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf, vf 1235 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf, vf 1246 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c fp_hsi->is_supported = (vf->fp_hsi > ETH_FP_HSI_VERSION) ? 0 : 1; vf 1254 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_acquire_resp(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 1281 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c resc->num_rxqs = vf_rxq_count(vf) ? : vf 1282 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_max_queue_cnt(bp, vf); vf 1283 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c resc->num_txqs = vf_txq_count(vf) ? : vf 1284 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_max_queue_cnt(bp, vf); vf 1285 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c resc->num_sbs = vf_sb_count(vf); vf 1286 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c resc->num_mac_filters = vf_mac_rules_cnt(vf); vf 1287 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c resc->num_vlan_filters = vf_vlan_rules_cnt(vf); vf 1293 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c BP_VF_BULLETIN(bp, vf->index); vf 1295 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c for_each_vfq(vf, i) vf 1297 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vfq_qzone_id(vf, vfq_get(vf, i)); vf 1299 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c for_each_vf_sb(vf, i) { vf 1300 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c resc->hw_sbs[i].hw_sb_id = vf_igu_sb(vf, i); vf 1301 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c resc->hw_sbs[i].sb_qid = vf_hc_qzone(vf, i); vf 1314 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid, vf 1328 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c for (i = 0; i < vf_rxq_count(vf); i++) vf 1331 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c for (i = 0; i < vf_sb_count(vf); i++) vf 1347 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp_phys_port(bp, vf, &mbx->msg->resp, &length); vf 1353 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp_fp_hsi_ver(bp, vf, &mbx->msg->resp, &length); vf 1359 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp_send_msg(bp, vf, vfop_status); vf 1380 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf, vf 1397 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_acquire(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 1406 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid, acquire->vfdev_info.vf_id, acquire->vfdev_info.vf_os, vf 1416 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_mbx_acquire_chk_dorq(bp, vf, mbx); vf 1420 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid); vf 1428 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->fp_hsi = acquire->vfdev_info.fp_hsi_ver; vf 1430 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->fp_hsi = max_t(u8, acquire->vfdev_info.fp_hsi_ver, vf 1432 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c if (vf->fp_hsi > ETH_FP_HSI_VERSION) { vf 1435 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid, acquire->vfdev_info.fp_hsi_ver, vf 1442 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_acquire(bp, vf, &acquire->resc_request); vf 1445 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->bulletin_map = acquire->bulletin_addr; vf 1448 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid); vf 1449 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->cfg_flags |= VF_CFG_EXT_BULLETIN; vf 1451 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->cfg_flags &= ~VF_CFG_EXT_BULLETIN; vf 1456 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid); vf 1457 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->cfg_flags |= VF_CFG_VLAN_FILTER; vf 1459 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->cfg_flags &= ~VF_CFG_VLAN_FILTER; vf 1464 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_acquire_resp(bp, vf, mbx, rc); vf 1467 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_init_vf(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 1474 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->fw_stat_map = init->stats_addr; vf 1475 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->stats_stride = init->stats_stride; vf 1476 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_init(bp, vf, (dma_addr_t *)init->sb_addr); vf 1480 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->cfg_flags |= VF_CFG_STATS_COALESCE; vf 1483 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c if (vf->cfg_flags & VF_CFG_EXT_BULLETIN) vf 1484 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_iov_link_update_vf(bp, vf->index); vf 1487 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp(bp, vf, rc); vf 1518 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_setup_q(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 1526 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c if (setup_q->vf_qid >= vf_rxq_count(vf)) { vf 1528 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c setup_q->vf_qid, vf_rxq_count(vf)); vf 1537 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_vf_queue *q = vfq_get(vf, setup_q->vf_qid); vf 1544 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_leading_vfq_init(bp, vf, q); vf 1582 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vfop_qctor_dump_tx(bp, vf, init_p, setup_p, vf 1626 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c u8 mcast_id = FW_VF_HANDLE(vf->abs_vfid); vf 1632 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vfop_qctor_dump_rx(bp, vf, init_p, setup_p, vf 1636 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vfop_qctor_prep(bp, vf, q, &qctor, q_type); vf 1638 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_queue_setup(bp, vf, q->index, &qctor); vf 1643 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp(bp, vf, rc); vf 1647 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf, vf 1731 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static int bnx2x_vf_mbx_qfilters(struct bnx2x *bp, struct bnx2x_virtf *vf) vf 1736 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c &BP_VF_MBX(bp, vf->index)->msg->req.set_q_filters; vf 1743 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_mbx_macvlan_list(bp, vf, msg, &fl, vf 1751 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_mac_vlan_config_list(bp, vf, fl, vf 1761 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_mbx_macvlan_list(bp, vf, msg, &fl, vf 1768 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_mac_vlan_config_list(bp, vf, fl, vf 1778 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_mbx_macvlan_list(bp, vf, msg, &fl, vf 1785 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_mac_vlan_config_list(bp, vf, fl, vf 1797 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c BP_VF_BULLETIN(bp, vf->index); vf 1813 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c (!(vf->cfg_flags & VF_CFG_VLAN_FILTER) || vf 1818 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_rxmode(bp, vf, msg->vf_qid, accept); vf 1825 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_mcast(bp, vf, msg->multicast, vf 1833 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid, msg->vf_qid, rc); vf 1838 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf, vf 1841 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct pf_vf_bulletin_content *bulletin = BP_VF_BULLETIN(bp, vf->index); vf 1863 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid, vf 1876 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid); vf 1888 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf, vf 1891 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct pf_vf_bulletin_content *bulletin = BP_VF_BULLETIN(bp, vf->index); vf 1901 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid); vf 1908 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c if (filters->vf_qid > vf_rxq_count(vf)) { vf 1918 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf, vf 1924 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_filters_validate_mac(bp, vf, filters); vf 1928 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_filters_validate_vlan(bp, vf, filters); vf 1933 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid, vf 1939 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_mbx_qfilters(bp, vf); vf 1941 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp(bp, vf, rc); vf 1944 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_teardown_q(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 1951 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid, qid); vf 1953 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_queue_teardown(bp, vf, qid); vf 1954 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp(bp, vf, rc); vf 1957 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_close_vf(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 1962 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c DP(BNX2X_MSG_IOV, "VF[%d] VF_CLOSE\n", vf->abs_vfid); vf 1964 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_close(bp, vf); vf 1965 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp(bp, vf, rc); vf 1968 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_release_vf(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 1973 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c DP(BNX2X_MSG_IOV, "VF[%d] VF_RELEASE\n", vf->abs_vfid); vf 1975 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_free(bp, vf); vf 1976 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp(bp, vf, rc); vf 1979 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_update_rss(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 1989 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->index); vf 2000 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rss.rss_obj = &vf->rss_conf_obj; vf 2035 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_rss_update(bp, vf, &rss); vf 2037 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp(bp, vf, rc); vf 2063 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_update_tpa(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 2098 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c rc = bnx2x_vf_tpa_update(bp, vf, tpa_tlv, &vf_op_params); vf 2101 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp(bp, vf, rc); vf 2105 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c static void bnx2x_vf_mbx_request(struct bnx2x *bp, struct bnx2x_virtf *vf, vf 2110 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c if (vf->state == VF_LOST) { vf 2116 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c "VF 0x%x lost, not handling the request\n", vf->abs_vfid); vf 2118 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c storm_memset_vf_mbx_ack(bp, vf->abs_vfid); vf 2127 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_lock_vf_pf_channel(bp, vf, mbx->first_tlv.tl.type); vf 2132 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_acquire(bp, vf, mbx); vf 2135 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_init_vf(bp, vf, mbx); vf 2138 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_setup_q(bp, vf, mbx); vf 2141 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_set_q_filters(bp, vf, mbx); vf 2144 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_teardown_q(bp, vf, mbx); vf 2147 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_close_vf(bp, vf, mbx); vf 2150 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_release_vf(bp, vf, mbx); vf 2153 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_update_rss(bp, vf, mbx); vf 2156 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_update_tpa(bp, vf, mbx); vf 2169 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->state); vf 2176 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c if (vf->state == VF_ACQUIRED || vf->state == VF_ENABLED) { vf 2178 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_resp(bp, vf, PFVF_STATUS_NOT_SUPPORTED); vf 2184 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c storm_memset_vf_mbx_ack(bp, vf->abs_vfid); vf 2186 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_unlock_vf_pf_channel(bp, vf, mbx->first_tlv.tl.type); vf 2240 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct bnx2x_virtf *vf = BP_VF(bp, vf_idx); vf 2253 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid, mbx->vf_addr_hi, vf 2258 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf->abs_vfid); vf 2259 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_release(bp, vf); vf 2272 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf_mbx_request(bp, vf, mbx); vf 2288 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c int bnx2x_post_vf_bulletin(struct bnx2x *bp, int vf) vf 2290 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c struct pf_vf_bulletin_content *bulletin = BP_VF_BULLETIN(bp, vf); vf 2292 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c vf * BULLETIN_CONTENT_SIZE; vf 2293 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c dma_addr_t vf_addr = bnx2x_vf(bp, vf, bulletin_map); vf 2297 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c if (bnx2x_vf(bp, vf, state) != VF_ENABLED && vf 2298 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf(bp, vf, state) != VF_ACQUIRED) vf 2304 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c (bnx2x_vf(bp, vf, cfg_flags) & vf 2309 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c bnx2x_vf(bp, vf, abs_vfid), U64_HI(vf_addr), vf 5050 drivers/net/ethernet/broadcom/bnxt/bnxt.c def_vlan = bp->vf.vlan; vf 6387 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_vf_info *vf = &bp->vf; vf 6389 drivers/net/ethernet/broadcom/bnxt/bnxt.c vf->vlan = le16_to_cpu(resp->vlan) & VLAN_VID_MASK; vf 6997 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_vf_info *vf = &bp->vf; vf 6999 drivers/net/ethernet/broadcom/bnxt/bnxt.c vf->fw_fid = le16_to_cpu(resp->fid); vf 7000 drivers/net/ethernet/broadcom/bnxt/bnxt.c memcpy(vf->mac_addr, resp->mac_address, ETH_ALEN); vf 7676 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (BNXT_VF(bp) && !bp->vf.vlan) vf 9788 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (bp->vf.vlan) { vf 11677 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_vf_info *vf = &bp->vf; vf 11680 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (is_valid_ether_addr(vf->mac_addr)) { vf 11682 drivers/net/ethernet/broadcom/bnxt/bnxt.c memcpy(bp->dev->dev_addr, vf->mac_addr, ETH_ALEN); vf 1092 drivers/net/ethernet/broadcom/bnxt/bnxt.h struct bnxt_vf_info *vf; vf 1766 drivers/net/ethernet/broadcom/bnxt/bnxt.h struct bnxt_vf_info vf; vf 26 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf, u16 event_id) vf 33 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vf) vf 34 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.encap_async_event_target_id = cpu_to_le16(vf->fw_fid); vf 70 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf; vf 82 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf = &bp->pf.vf[vf_id]; vf 83 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vf->flags & BNXT_VF_SPOOFCHK) vf 96 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.fid = cpu_to_le16(vf->fw_fid); vf 101 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->flags |= BNXT_VF_SPOOFCHK; vf 103 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->flags &= ~BNXT_VF_SPOOFCHK; vf 108 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static int bnxt_hwrm_func_qcfg_flags(struct bnxt *bp, struct bnxt_vf_info *vf) vf 115 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.fid = cpu_to_le16(vf->fw_fid); vf 122 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->func_qcfg_flags = le16_to_cpu(resp->flags); vf 127 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static bool bnxt_is_trusted_vf(struct bnxt *bp, struct bnxt_vf_info *vf) vf 130 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c return !!(vf->flags & BNXT_VF_TRUST); vf 132 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c bnxt_hwrm_func_qcfg_flags(bp, vf); vf 133 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c return !!(vf->func_qcfg_flags & FUNC_QCFG_RESP_FLAGS_TRUSTED_VF); vf 136 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static int bnxt_hwrm_set_trusted_vf(struct bnxt *bp, struct bnxt_vf_info *vf) vf 145 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.fid = cpu_to_le16(vf->fw_fid); vf 146 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vf->flags & BNXT_VF_TRUST) vf 157 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf; vf 162 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf = &bp->pf.vf[vf_id]; vf 164 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->flags |= BNXT_VF_TRUST; vf 166 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->flags &= ~BNXT_VF_TRUST; vf 168 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c bnxt_hwrm_set_trusted_vf(bp, vf); vf 176 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf; vf 183 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c ivi->vf = vf_id; vf 184 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf = &bp->pf.vf[vf_id]; vf 186 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (is_valid_ether_addr(vf->mac_addr)) vf 187 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c memcpy(&ivi->mac, vf->mac_addr, ETH_ALEN); vf 189 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c memcpy(&ivi->mac, vf->vf_mac_addr, ETH_ALEN); vf 190 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c ivi->max_tx_rate = vf->max_tx_rate; vf 191 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c ivi->min_tx_rate = vf->min_tx_rate; vf 192 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c ivi->vlan = vf->vlan; vf 193 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vf->flags & BNXT_VF_QOS) vf 194 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c ivi->qos = vf->vlan >> VLAN_PRIO_SHIFT; vf 197 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c ivi->spoofchk = !!(vf->flags & BNXT_VF_SPOOFCHK); vf 198 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c ivi->trusted = bnxt_is_trusted_vf(bp, vf); vf 199 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (!(vf->flags & BNXT_VF_LINK_FORCED)) vf 201 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c else if (vf->flags & BNXT_VF_LINK_UP) vf 213 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf; vf 226 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf = &bp->pf.vf[vf_id]; vf 228 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c memcpy(vf->mac_addr, mac, ETH_ALEN); vf 230 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.fid = cpu_to_le16(vf->fw_fid); vf 241 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf; vf 261 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf = &bp->pf.vf[vf_id]; vf 263 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vlan_tag == vf->vlan) vf 267 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.fid = cpu_to_le16(vf->fw_fid); vf 272 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->vlan = vlan_tag; vf 281 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf; vf 289 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf = &bp->pf.vf[vf_id]; vf 302 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (min_tx_rate == vf->min_tx_rate && max_tx_rate == vf->max_tx_rate) vf 305 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.fid = cpu_to_le16(vf->fw_fid); vf 312 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->min_tx_rate = min_tx_rate; vf 313 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->max_tx_rate = max_tx_rate; vf 321 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf; vf 328 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf = &bp->pf.vf[vf_id]; vf 330 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->flags &= ~(BNXT_VF_LINK_UP | BNXT_VF_LINK_FORCED); vf 333 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->flags |= BNXT_VF_LINK_UP; vf 336 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->flags |= BNXT_VF_LINK_FORCED; vf 339 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->flags |= BNXT_VF_LINK_UP | BNXT_VF_LINK_FORCED; vf 346 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vf->flags & (BNXT_VF_LINK_UP | BNXT_VF_LINK_FORCED)) vf 347 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c rc = bnxt_hwrm_fwd_async_event_cmpl(bp, vf, vf 355 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf; vf 358 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf = &bp->pf.vf[i]; vf 359 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c memset(vf, 0, sizeof(*vf)); vf 401 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c kfree(bp->pf.vf); vf 402 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c bp->pf.vf = NULL; vf 410 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c bp->pf.vf = kcalloc(num_vfs, sizeof(struct bnxt_vf_info), GFP_KERNEL); vf 411 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (!bp->pf.vf) vf 431 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf = &bp->pf.vf[k]; vf 433 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->hwrm_cmd_req_addr = bp->pf.hwrm_cmd_req_addr[i] + vf 435 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf->hwrm_cmd_req_dma_addr = vf 472 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct bnxt_vf_info *vf; vf 474 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c vf = &bp->pf.vf[vf_id]; vf 476 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.fid = cpu_to_le16(vf->fw_fid); vf 478 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (is_valid_ether_addr(vf->mac_addr)) { vf 480 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c memcpy(req.dflt_mac_addr, vf->mac_addr, ETH_ALEN); vf 482 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vf->vlan) { vf 484 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.dflt_vlan = cpu_to_le16(vf->vlan); vf 486 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vf->max_tx_rate) { vf 488 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.max_bw = cpu_to_le32(vf->max_tx_rate); vf 491 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.min_bw = cpu_to_le32(vf->min_tx_rate); vf 494 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vf->flags & BNXT_VF_TRUST) vf 584 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c pf->vf[i].fw_fid = pf->first_vf_id + i; vf 671 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c pf->vf[i].fw_fid = le16_to_cpu(req.fid); vf 672 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c rc = __bnxt_hwrm_get_tx_rings(bp, pf->vf[i].fw_fid, vf 893 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static int bnxt_hwrm_fwd_resp(struct bnxt *bp, struct bnxt_vf_info *vf, vf 906 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.target_id = cpu_to_le16(vf->fw_fid); vf 907 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.encap_resp_target_id = cpu_to_le16(vf->fw_fid); vf 919 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static int bnxt_hwrm_fwd_err_resp(struct bnxt *bp, struct bnxt_vf_info *vf, vf 930 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.target_id = cpu_to_le16(vf->fw_fid); vf 931 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.encap_resp_target_id = cpu_to_le16(vf->fw_fid); vf 932 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c memcpy(req.encap_request, vf->hwrm_cmd_req_addr, msg_size); vf 940 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static int bnxt_hwrm_exec_fwd_resp(struct bnxt *bp, struct bnxt_vf_info *vf, vf 951 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.target_id = cpu_to_le16(vf->fw_fid); vf 952 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c req.encap_resp_target_id = cpu_to_le16(vf->fw_fid); vf 953 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c memcpy(req.encap_request, vf->hwrm_cmd_req_addr, msg_size); vf 961 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static int bnxt_vf_configure_mac(struct bnxt *bp, struct bnxt_vf_info *vf) vf 965 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c (struct hwrm_func_vf_cfg_input *)vf->hwrm_cmd_req_addr; vf 971 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c bool trust = bnxt_is_trusted_vf(bp, vf); vf 974 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c (trust || !is_valid_ether_addr(vf->mac_addr) || vf 975 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c ether_addr_equal(req->dflt_mac_addr, vf->mac_addr))) { vf 976 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c ether_addr_copy(vf->vf_mac_addr, req->dflt_mac_addr); vf 977 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c return bnxt_hwrm_exec_fwd_resp(bp, vf, msg_size); vf 979 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c return bnxt_hwrm_fwd_err_resp(bp, vf, msg_size); vf 981 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c return bnxt_hwrm_exec_fwd_resp(bp, vf, msg_size); vf 984 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static int bnxt_vf_validate_set_mac(struct bnxt *bp, struct bnxt_vf_info *vf) vf 988 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c (struct hwrm_cfa_l2_filter_alloc_input *)vf->hwrm_cmd_req_addr; vf 992 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c return bnxt_hwrm_fwd_err_resp(bp, vf, msg_size); vf 999 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (bnxt_is_trusted_vf(bp, vf)) { vf 1001 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c } else if (is_valid_ether_addr(vf->mac_addr)) { vf 1002 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (ether_addr_equal((const u8 *)req->l2_addr, vf->mac_addr)) vf 1004 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c } else if (is_valid_ether_addr(vf->vf_mac_addr)) { vf 1005 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (ether_addr_equal((const u8 *)req->l2_addr, vf->vf_mac_addr)) vf 1017 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c return bnxt_hwrm_exec_fwd_resp(bp, vf, msg_size); vf 1018 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c return bnxt_hwrm_fwd_err_resp(bp, vf, msg_size); vf 1021 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static int bnxt_vf_set_link(struct bnxt *bp, struct bnxt_vf_info *vf) vf 1025 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (!(vf->flags & BNXT_VF_LINK_FORCED)) { vf 1028 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c bp, vf, sizeof(struct hwrm_port_phy_qcfg_input)); vf 1034 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c (struct hwrm_port_phy_qcfg_input *)vf->hwrm_cmd_req_addr; vf 1043 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (vf->flags & BNXT_VF_LINK_UP) { vf 1067 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c rc = bnxt_hwrm_fwd_resp(bp, vf, &phy_qcfg_resp, vf 1075 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c static int bnxt_vf_req_validate_snd(struct bnxt *bp, struct bnxt_vf_info *vf) vf 1078 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c struct input *encap_req = vf->hwrm_cmd_req_addr; vf 1083 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c rc = bnxt_vf_configure_mac(bp, vf); vf 1086 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c rc = bnxt_vf_validate_set_mac(bp, vf); vf 1093 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c bp, vf, sizeof(struct hwrm_func_cfg_input)); vf 1096 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c rc = bnxt_vf_set_link(bp, vf); vf 1115 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c bnxt_vf_req_validate_snd(bp, &bp->pf.vf[vf_id]); vf 1139 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (!ether_addr_equal(resp->mac_address, bp->vf.mac_addr)) vf 1140 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c memcpy(bp->vf.mac_addr, resp->mac_address, ETH_ALEN); vf 1143 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (is_valid_ether_addr(bp->vf.mac_addr)) vf 1144 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c memcpy(bp->dev->dev_addr, bp->vf.mac_addr, ETH_ALEN); vf 1158 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c if (is_valid_ether_addr(bp->vf.mac_addr)) vf 76 drivers/net/ethernet/broadcom/bnxt/bnxt_vfr.c req.fid = cpu_to_le16(bp->pf.vf[vf_rep->vf_idx].fw_fid); vf 150 drivers/net/ethernet/broadcom/bnxt/bnxt_vfr.c int vf_fid = bp->pf.vf[vf_rep->vf_idx].fw_fid; vf 28 drivers/net/ethernet/broadcom/bnxt/bnxt_vfr.h return bp->pf.vf[vf_rep->vf_idx].fw_fid; vf 760 drivers/net/ethernet/cavium/liquidio/lio_main.c int max_vfs, vf, i; vf 772 drivers/net/ethernet/cavium/liquidio/lio_main.c for (vf = 0; vf < max_vfs; vf++) vf 773 drivers/net/ethernet/cavium/liquidio/lio_main.c liquidio_set_vf_link_state(netdev, vf, vf 2996 drivers/net/ethernet/cavium/liquidio/lio_main.c ivi->vf = vfidx; vf 631 drivers/net/ethernet/cavium/thunder/nic.h int nicvf_send_msg_to_pf(struct nicvf *vf, union nic_mbx *mbx); vf 119 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_clear_mbx_intr(struct nicpf *nic, int vf, int mbx_reg) vf 121 drivers/net/ethernet/cavium/thunder/nic_main.c nic_reg_write(nic, NIC_PF_MAILBOX_INT + (mbx_reg << 3), BIT_ULL(vf)); vf 124 drivers/net/ethernet/cavium/thunder/nic_main.c static u64 nic_get_mbx_addr(int vf) vf 126 drivers/net/ethernet/cavium/thunder/nic_main.c return NIC_PF_VF_0_127_MAILBOX_0_1 + (vf << NIC_VF_NUM_SHIFT); vf 133 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_send_msg_to_vf(struct nicpf *nic, int vf, union nic_mbx *mbx) vf 135 drivers/net/ethernet/cavium/thunder/nic_main.c void __iomem *mbx_addr = nic->reg_base + nic_get_mbx_addr(vf); vf 158 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_mbx_send_ready(struct nicpf *nic, int vf) vf 165 drivers/net/ethernet/cavium/thunder/nic_main.c mbx.nic_cfg.vf_id = vf; vf 169 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf < nic->num_vf_en) { vf 170 drivers/net/ethernet/cavium/thunder/nic_main.c bgx_idx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 171 drivers/net/ethernet/cavium/thunder/nic_main.c lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 177 drivers/net/ethernet/cavium/thunder/nic_main.c mbx.nic_cfg.sqs_mode = (vf >= nic->num_vf_en) ? true : false; vf 180 drivers/net/ethernet/cavium/thunder/nic_main.c mbx.nic_cfg.loopback_supported = vf < nic->num_vf_en; vf 182 drivers/net/ethernet/cavium/thunder/nic_main.c nic_send_msg_to_vf(nic, vf, &mbx); vf 188 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_mbx_send_ack(struct nicpf *nic, int vf) vf 193 drivers/net/ethernet/cavium/thunder/nic_main.c nic_send_msg_to_vf(nic, vf, &mbx); vf 200 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_mbx_send_nack(struct nicpf *nic, int vf) vf 205 drivers/net/ethernet/cavium/thunder/nic_main.c nic_send_msg_to_vf(nic, vf, &mbx); vf 253 drivers/net/ethernet/cavium/thunder/nic_main.c static int nic_update_hw_frs(struct nicpf *nic, int new_frs, int vf) vf 261 drivers/net/ethernet/cavium/thunder/nic_main.c bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 262 drivers/net/ethernet/cavium/thunder/nic_main.c lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 550 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_send_rss_size(struct nicpf *nic, int vf) vf 556 drivers/net/ethernet/cavium/thunder/nic_main.c nic_send_msg_to_vf(nic, vf, &mbx); vf 786 drivers/net/ethernet/cavium/thunder/nic_main.c int vf, struct reset_stat_cfg *cfg) vf 794 drivers/net/ethernet/cavium/thunder/nic_main.c (vf << NIC_QS_ID_SHIFT) | vf 803 drivers/net/ethernet/cavium/thunder/nic_main.c (vf << NIC_QS_ID_SHIFT) | vf 812 drivers/net/ethernet/cavium/thunder/nic_main.c reg_addr = (vf << NIC_QS_ID_SHIFT) | vf 827 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_enable_tunnel_parsing(struct nicpf *nic, int vf) vf 846 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_enable_vf(struct nicpf *nic, int vf, bool enable) vf 850 drivers/net/ethernet/cavium/thunder/nic_main.c nic->vf_enabled[vf] = enable; vf 852 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) vf 855 drivers/net/ethernet/cavium/thunder/nic_main.c bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 856 drivers/net/ethernet/cavium/thunder/nic_main.c lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 861 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_pause_frame(struct nicpf *nic, int vf, struct pfc *cfg) vf 867 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) vf 869 drivers/net/ethernet/cavium/thunder/nic_main.c bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 870 drivers/net/ethernet/cavium/thunder/nic_main.c lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 878 drivers/net/ethernet/cavium/thunder/nic_main.c nic_send_msg_to_vf(nic, vf, &mbx); vf 881 drivers/net/ethernet/cavium/thunder/nic_main.c nic_mbx_send_ack(nic, vf); vf 886 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_config_timestamp(struct nicpf *nic, int vf, struct set_ptp *ptp) vf 892 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) vf 895 drivers/net/ethernet/cavium/thunder/nic_main.c bgx_idx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 896 drivers/net/ethernet/cavium/thunder/nic_main.c lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 927 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_link_status_get(struct nicpf *nic, u8 vf) vf 936 drivers/net/ethernet/cavium/thunder/nic_main.c bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 937 drivers/net/ethernet/cavium/thunder/nic_main.c lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 949 drivers/net/ethernet/cavium/thunder/nic_main.c nic_send_msg_to_vf(nic, vf, &mbx); vf 953 drivers/net/ethernet/cavium/thunder/nic_main.c static void nic_handle_mbx_intr(struct nicpf *nic, int vf) vf 964 drivers/net/ethernet/cavium/thunder/nic_main.c mbx_addr = nic_get_mbx_addr(vf); vf 974 drivers/net/ethernet/cavium/thunder/nic_main.c __func__, mbx.msg.msg, vf); vf 977 drivers/net/ethernet/cavium/thunder/nic_main.c nic_mbx_send_ready(nic, vf); vf 984 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) { vf 987 drivers/net/ethernet/cavium/thunder/nic_main.c cfg |= nic->pqs_vf[vf]; vf 1004 drivers/net/ethernet/cavium/thunder/nic_main.c nic_enable_tunnel_parsing(nic, vf); vf 1029 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) { vf 1046 drivers/net/ethernet/cavium/thunder/nic_main.c nic_send_rss_size(nic, vf); vf 1054 drivers/net/ethernet/cavium/thunder/nic_main.c nic_enable_vf(nic, vf, true); vf 1058 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) vf 1059 drivers/net/ethernet/cavium/thunder/nic_main.c nic->sqs_used[vf - nic->num_vf_en] = false; vf 1060 drivers/net/ethernet/cavium/thunder/nic_main.c nic->pqs_vf[vf] = 0; vf 1061 drivers/net/ethernet/cavium/thunder/nic_main.c nic_enable_vf(nic, vf, false); vf 1067 drivers/net/ethernet/cavium/thunder/nic_main.c nic->nicvf[vf] = mbx.nicvf.nicvf; vf 1070 drivers/net/ethernet/cavium/thunder/nic_main.c nic_send_pnicvf(nic, vf); vf 1082 drivers/net/ethernet/cavium/thunder/nic_main.c ret = nic_reset_stat_counters(nic, vf, &mbx.reset_stat); vf 1085 drivers/net/ethernet/cavium/thunder/nic_main.c nic_pause_frame(nic, vf, &mbx.pfc); vf 1088 drivers/net/ethernet/cavium/thunder/nic_main.c nic_config_timestamp(nic, vf, &mbx.ptp); vf 1091 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) { vf 1095 drivers/net/ethernet/cavium/thunder/nic_main.c bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 1096 drivers/net/ethernet/cavium/thunder/nic_main.c lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 1098 drivers/net/ethernet/cavium/thunder/nic_main.c vf < NIC_VF_PER_MBX_REG ? vf : vf 1099 drivers/net/ethernet/cavium/thunder/nic_main.c vf - NIC_VF_PER_MBX_REG); vf 1103 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) { vf 1107 drivers/net/ethernet/cavium/thunder/nic_main.c bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 1108 drivers/net/ethernet/cavium/thunder/nic_main.c lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 1111 drivers/net/ethernet/cavium/thunder/nic_main.c vf < NIC_VF_PER_MBX_REG ? vf : vf 1112 drivers/net/ethernet/cavium/thunder/nic_main.c vf - NIC_VF_PER_MBX_REG); vf 1116 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) { vf 1120 drivers/net/ethernet/cavium/thunder/nic_main.c bgx = NIC_GET_BGX_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 1121 drivers/net/ethernet/cavium/thunder/nic_main.c lmac = NIC_GET_LMAC_FROM_VF_LMAC_MAP(nic->vf_lmac_map[vf]); vf 1125 drivers/net/ethernet/cavium/thunder/nic_main.c if (vf >= nic->num_vf_en) { vf 1129 drivers/net/ethernet/cavium/thunder/nic_main.c nic_link_status_get(nic, vf); vf 1133 drivers/net/ethernet/cavium/thunder/nic_main.c "Invalid msg from VF%d, msg 0x%x\n", vf, mbx.msg.msg); vf 1138 drivers/net/ethernet/cavium/thunder/nic_main.c nic_mbx_send_ack(nic, vf); vf 1141 drivers/net/ethernet/cavium/thunder/nic_main.c mbx.msg.msg, vf); vf 1142 drivers/net/ethernet/cavium/thunder/nic_main.c nic_mbx_send_nack(nic, vf); vf 1151 drivers/net/ethernet/cavium/thunder/nic_main.c u8 vf; vf 1160 drivers/net/ethernet/cavium/thunder/nic_main.c for (vf = 0; vf < NIC_VF_PER_MBX_REG; vf++) { vf 1161 drivers/net/ethernet/cavium/thunder/nic_main.c if (intr & (1ULL << vf)) { vf 1163 drivers/net/ethernet/cavium/thunder/nic_main.c vf + (mbx * NIC_VF_PER_MBX_REG)); vf 1165 drivers/net/ethernet/cavium/thunder/nic_main.c nic_handle_mbx_intr(nic, vf + vf 1167 drivers/net/ethernet/cavium/thunder/nic_main.c nic_clear_mbx_intr(nic, vf, mbx); vf 219 drivers/net/ethernet/cavium/thunder/thunder_bgx.h void bgx_set_dmac_cam_filter(int node, int bgx_idx, int lmacid, u64 mac, u8 vf); vf 220 drivers/net/ethernet/cavium/thunder/thunder_bgx.h void bgx_reset_xcast_mode(int node, int bgx_idx, int lmacid, u8 vf); vf 1173 drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c int vf, rc, vf_count; vf 1183 drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c for (vf = 0; vf < vf_count; vf++) vf 1184 drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c t4_read_rss_vf_config(padap, vf, &vfconf[vf].rss_vf_vfl, vf 1185 drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c &vfconf[vf].rss_vf_vfh, true); vf 1157 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h uint32_t vf:VF_BITWIDTH; /* PCI-E VF ID */ vf 1683 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h int port, int pf, int vf, u8 mac[]); vf 1684 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h int t4_port_init(struct adapter *adap, int mbox, int pf, int vf); vf 1767 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int nparams, const u32 *params, vf 1770 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int nparams, const u32 *params, vf 1773 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int nparams, const u32 *params, vf 1776 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int pf, unsigned int vf, vf 1780 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int nparams, const u32 *params, vf 1783 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int txq, unsigned int txq_eth_ctrl, vf 1788 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int pf, unsigned int vf, unsigned int nmac, u8 *mac, vf 1791 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int pf, unsigned int vf, vf 1832 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int iqtype, unsigned int iqid, vf 1835 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int iqtype, unsigned int iqid, vf 1838 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int eqid); vf 1840 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int eqid); vf 1842 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h unsigned int vf, unsigned int eqid); vf 1875 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h int t4_set_vf_mac_acl(struct adapter *adapter, unsigned int vf, vf 1905 drivers/net/ethernet/chelsio/cxgb4/cxgb4.h int t4_set_vlan_acl(struct adapter *adap, unsigned int mbox, unsigned int vf, vf 2366 drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c int vf, vfcount = adapter->params.arch.vfcount; vf 2373 drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c for (vf = 0; vf < vfcount; vf++) { vf 2374 drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c t4_read_rss_vf_config(adapter, vf, &vfconf[vf].rss_vf_vfl, vf 2375 drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c &vfconf[vf].rss_vf_vfh, true); vf 292 drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c if (fs->val.pf > 0x7 || fs->val.vf > 0x7f) vf 295 drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c fs->mask.vf &= 0x7f; vf 987 drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c (fs->val.vf)) << tp->vnic_shift; vf 1159 drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c f->fs.val.ovlan = (fs->val.pf << 13) | fs->val.vf; vf 1160 drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c f->fs.mask.ovlan = (fs->mask.pf << 13) | fs->mask.vf; vf 1401 drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c f->fs.val.ovlan = (fs->val.pf << 13) | fs->val.vf; vf 1402 drivers/net/ethernet/chelsio/cxgb4/cxgb4_filter.c f->fs.mask.ovlan = (fs->mask.pf << 13) | fs->mask.vf; vf 2763 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c unsigned int i, vf, nvfs; vf 2790 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c for (vf = 0, nvfs = pci_sriov_get_totalvfs(adap->pdev); vf 2791 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c vf < nvfs; vf++) { vf 2792 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c macaddr[5] = adap->pf * nvfs + vf; vf 2793 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ether_addr_copy(adap->vfinfo[vf].vf_mac_addr, macaddr); vf 2797 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c static int cxgb4_mgmt_set_vf_mac(struct net_device *dev, int vf, u8 *mac) vf 2807 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c mac, vf); vf 2812 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c "Setting MAC %pM on VF %d\n", mac, vf); vf 2813 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ret = t4_set_vf_mac_acl(adap, vf + 1, 1, mac); vf 2815 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ether_addr_copy(adap->vfinfo[vf].vf_mac_addr, mac); vf 2820 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c int vf, struct ifla_vf_info *ivi) vf 2826 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c if (vf >= adap->num_vfs) vf 2828 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c vfinfo = &adap->vfinfo[vf]; vf 2830 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ivi->vf = vf; vf 2851 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c static int cxgb4_mgmt_set_vf_rate(struct net_device *dev, int vf, vf 2858 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c int class_id = vf; vf 2862 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c if (vf >= adap->num_vfs) vf 2868 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c min_tx_rate, vf); vf 2878 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ret = t4_set_params(adap, adap->mbox, adap->pf, vf + 1, 1, vf 2883 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ret, adap->pf, vf); vf 2888 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c adap->pf, vf); vf 2889 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c adap->vfinfo[vf].tx_rate = 0; vf 2896 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c "Failed to get link information for VF %d\n", vf); vf 2901 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c dev_err(adap->pdev_dev, "Link down for VF %d\n", vf); vf 2908 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c max_tx_rate, vf, speed); vf 2938 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ret = t4_set_params(adap, adap->mbox, adap->pf, vf + 1, 1, &fw_pfvf, vf 2943 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ret, adap->pf, vf, class_id); vf 2947 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c adap->pf, vf, class_id); vf 2948 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c adap->vfinfo[vf].tx_rate = max_tx_rate; vf 2952 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c static int cxgb4_mgmt_set_vf_vlan(struct net_device *dev, int vf, vf 2959 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c if (vf >= adap->num_vfs || vlan > 4095 || qos > 7) vf 2965 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ret = t4_set_vlan_acl(adap, adap->mbox, vf + 1, vlan); vf 2967 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c adap->vfinfo[vf].vlan = vlan; vf 2972 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ret, (vlan ? "setting" : "clearing"), adap->pf, vf); vf 2976 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c static int cxgb4_mgmt_set_vf_link_state(struct net_device *dev, int vf, vf 2984 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c if (vf >= adap->num_vfs) vf 3006 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ret = t4_set_params(adap, adap->mbox, adap->pf, vf + 1, 1, vf 3011 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ret, adap->pf, vf); vf 3015 drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c adap->vfinfo[vf].link_state = link; vf 75 drivers/net/ethernet/chelsio/cxgb4/sched.c unsigned int vf = 0; vf 94 drivers/net/ethernet/chelsio/cxgb4/sched.c vf = 0; vf 102 drivers/net/ethernet/chelsio/cxgb4/sched.c err = t4_set_params(adap, adap->mbox, pf, vf, 1, &fw_param, &fw_class); vf 7457 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int nparams, const u32 *params, vf 7471 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_PARAMS_CMD_VFN_V(vf)); vf 7489 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int nparams, const u32 *params, vf 7492 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c return t4_query_params_rw(adap, mbox, pf, vf, nparams, params, val, 0, vf 7497 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int nparams, const u32 *params, vf 7500 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c return t4_query_params_rw(adap, mbox, pf, vf, nparams, params, val, 0, vf 7519 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int pf, unsigned int vf, vf 7533 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_PARAMS_CMD_VFN_V(vf)); vf 7558 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int nparams, const u32 *params, vf 7561 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c return t4_set_params_timeout(adap, mbox, pf, vf, nparams, params, val, vf 7587 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int txq, unsigned int txq_eth_ctrl, vf 7597 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_PFVF_CMD_VFN_V(vf)); vf 7631 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int pf, unsigned int vf, unsigned int nmac, u8 *mac, vf 7640 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_VI_CMD_PFN_V(pf) | FW_VI_CMD_VFN_V(vf)); vf 7688 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int viid) vf 7697 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_VI_CMD_VFN_V(vf)); vf 8316 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int iqtype, unsigned int iqid, vf 8324 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_IQ_CMD_VFN_V(vf)); vf 8347 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int iqtype, unsigned int iqid, vf 8355 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_IQ_CMD_VFN_V(vf)); vf 8375 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int eqid) vf 8383 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_EQ_ETH_CMD_VFN_V(vf)); vf 8400 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int eqid) vf 8408 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_EQ_CTRL_CMD_VFN_V(vf)); vf 8425 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c unsigned int vf, unsigned int eqid) vf 8433 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_EQ_OFLD_CMD_VFN_V(vf)); vf 9594 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c int port, int pf, int vf, u8 mac[]) vf 9618 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c ret = t4_set_params(adapter, mbox, pf, vf, 1, ¶m, &val); vf 9658 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c ret = t4_alloc_vi(pi->adapter, mbox, port, pf, vf, 1, mac, &rss_size, vf 9689 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c int t4_port_init(struct adapter *adap, int mbox, int pf, int vf) vf 9700 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c ret = t4_init_portinfo(pi, mbox, j, pf, vf, addr); vf 10198 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c int t4_set_vf_mac_acl(struct adapter *adapter, unsigned int vf, vf 10208 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_ACL_MAC_CMD_VFN_V(vf)); vf 10443 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c int t4_set_vlan_acl(struct adapter *adap, unsigned int mbox, unsigned int vf, vf 10456 drivers/net/ethernet/chelsio/cxgb4/t4_hw.c FW_ACL_VLAN_CMD_VFN_V(vf)); vf 2483 drivers/net/ethernet/chelsio/cxgb4/t4fw_api.h } vf; vf 321 drivers/net/ethernet/cisco/enic/enic.h int enic_is_valid_vf(struct enic *enic, int vf); vf 29 drivers/net/ethernet/cisco/enic/enic_api.c int enic_api_devcmd_proxy_by_index(struct net_device *netdev, int vf, vf 39 drivers/net/ethernet/cisco/enic/enic_api.c vnic_dev_cmd_proxy_by_index_start(vdev, vf); vf 27 drivers/net/ethernet/cisco/enic/enic_api.h int enic_api_devcmd_proxy_by_index(struct net_device *netdev, int vf, vf 29 drivers/net/ethernet/cisco/enic/enic_dev.h #define ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnicdevcmdfn, ...) \ vf 32 drivers/net/ethernet/cisco/enic/enic_dev.h if (enic_is_valid_vf(enic, vf)) { \ vf 33 drivers/net/ethernet/cisco/enic/enic_dev.h vnic_dev_cmd_proxy_by_index_start(enic->vdev, vf); \ vf 350 drivers/net/ethernet/cisco/enic/enic_main.c int enic_is_valid_vf(struct enic *enic, int vf) vf 353 drivers/net/ethernet/cisco/enic/enic_main.c return vf >= 0 && vf < enic->num_vfs; vf 1104 drivers/net/ethernet/cisco/enic/enic_main.c static int enic_set_vf_mac(struct net_device *netdev, int vf, u8 *mac) vf 1110 drivers/net/ethernet/cisco/enic/enic_main.c ENIC_PP_BY_INDEX(enic, vf, pp, &err); vf 1115 drivers/net/ethernet/cisco/enic/enic_main.c if (vf == PORT_SELF_VF) { vf 1122 drivers/net/ethernet/cisco/enic/enic_main.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vf 1130 drivers/net/ethernet/cisco/enic/enic_main.c static int enic_set_vf_port(struct net_device *netdev, int vf, vf 1138 drivers/net/ethernet/cisco/enic/enic_main.c ENIC_PP_BY_INDEX(enic, vf, pp, &err); vf 1169 drivers/net/ethernet/cisco/enic/enic_main.c if (vf == PORT_SELF_VF) { vf 1178 drivers/net/ethernet/cisco/enic/enic_main.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vf 1181 drivers/net/ethernet/cisco/enic/enic_main.c netdev_err(netdev, "Error getting mac for vf %d\n", vf); vf 1187 drivers/net/ethernet/cisco/enic/enic_main.c err = enic_process_set_pp_request(enic, vf, &prev_pp, &restore_pp); vf 1196 drivers/net/ethernet/cisco/enic/enic_main.c if (vf == PORT_SELF_VF) vf 1208 drivers/net/ethernet/cisco/enic/enic_main.c if (vf == PORT_SELF_VF) vf 1213 drivers/net/ethernet/cisco/enic/enic_main.c if (vf == PORT_SELF_VF) vf 1219 drivers/net/ethernet/cisco/enic/enic_main.c static int enic_get_vf_port(struct net_device *netdev, int vf, vf 1227 drivers/net/ethernet/cisco/enic/enic_main.c ENIC_PP_BY_INDEX(enic, vf, pp, &err); vf 1234 drivers/net/ethernet/cisco/enic/enic_main.c err = enic_process_get_pp_request(enic, vf, pp->request, &response); vf 38 drivers/net/ethernet/cisco/enic/enic_pp.c int enic_is_valid_pp_vf(struct enic *enic, int vf, int *err) vf 40 drivers/net/ethernet/cisco/enic/enic_pp.c if (vf != PORT_SELF_VF) { vf 43 drivers/net/ethernet/cisco/enic/enic_pp.c if (vf < 0 || vf >= enic->num_vfs) { vf 57 drivers/net/ethernet/cisco/enic/enic_pp.c if (vf == PORT_SELF_VF && !enic_is_dynamic(enic)) { vf 69 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_set_port_profile(struct enic *enic, int vf) vf 81 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_PP_BY_INDEX(enic, vf, pp, &err); vf 99 drivers/net/ethernet/cisco/enic/enic_pp.c } else if (vf == PORT_SELF_VF) { vf 103 drivers/net/ethernet/cisco/enic/enic_pp.c "for VF %d\n", vf); vf 135 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnic_dev_init_prov2, (u8 *)vp, vf 145 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_unset_port_profile(struct enic *enic, int vf) vf 149 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnic_dev_deinit); vf 153 drivers/net/ethernet/cisco/enic/enic_pp.c if (vf == PORT_SELF_VF) vf 168 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_pp_preassociate(struct enic *enic, int vf, vf 170 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_pp_disassociate(struct enic *enic, int vf, vf 172 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_pp_preassociate_rr(struct enic *enic, int vf, vf 174 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_pp_associate(struct enic *enic, int vf, vf 177 drivers/net/ethernet/cisco/enic/enic_pp.c static int (*enic_pp_handlers[])(struct enic *enic, int vf, vf 189 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_pp_preassociate(struct enic *enic, int vf, vf 195 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_pp_disassociate(struct enic *enic, int vf, vf 202 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_PP_BY_INDEX(enic, vf, pp, &err); vf 208 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnic_dev_del_addr, vf 210 drivers/net/ethernet/cisco/enic/enic_pp.c else if (vf == PORT_SELF_VF && !is_zero_ether_addr(netdev->dev_addr)) vf 211 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnic_dev_del_addr, vf 214 drivers/net/ethernet/cisco/enic/enic_pp.c return enic_unset_port_profile(enic, vf); vf 217 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_pp_preassociate_rr(struct enic *enic, int vf, vf 224 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_PP_BY_INDEX(enic, vf, pp, &err); vf 231 drivers/net/ethernet/cisco/enic/enic_pp.c err = enic_pp_handlers[PORT_REQUEST_DISASSOCIATE](enic, vf, vf 241 drivers/net/ethernet/cisco/enic/enic_pp.c err = enic_set_port_profile(enic, vf); vf 248 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnic_dev_enable2, vf 256 drivers/net/ethernet/cisco/enic/enic_pp.c static int enic_pp_associate(struct enic *enic, int vf, vf 264 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_PP_BY_INDEX(enic, vf, pp, &err); vf 273 drivers/net/ethernet/cisco/enic/enic_pp.c enic, vf, prev_pp, restore_pp); vf 281 drivers/net/ethernet/cisco/enic/enic_pp.c enic, vf, prev_pp, restore_pp); vf 288 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnic_dev_enable2, active); vf 295 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnic_dev_add_addr, vf 297 drivers/net/ethernet/cisco/enic/enic_pp.c else if (vf == PORT_SELF_VF && !is_zero_ether_addr(netdev->dev_addr)) vf 298 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vnic_dev_add_addr, vf 304 drivers/net/ethernet/cisco/enic/enic_pp.c int enic_process_set_pp_request(struct enic *enic, int vf, vf 310 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_PP_BY_INDEX(enic, vf, pp, &err); vf 318 drivers/net/ethernet/cisco/enic/enic_pp.c return enic_pp_handlers[pp->request](enic, vf, prev_pp, restore_pp); vf 321 drivers/net/ethernet/cisco/enic/enic_pp.c int enic_process_get_pp_request(struct enic *enic, int vf, vf 330 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vf 335 drivers/net/ethernet/cisco/enic/enic_pp.c ENIC_DEVCMD_PROXY_BY_INDEX(vf, err, enic, vf 22 drivers/net/ethernet/cisco/enic/enic_pp.h #define ENIC_PP_BY_INDEX(enic, vf, pp, err) \ vf 24 drivers/net/ethernet/cisco/enic/enic_pp.h if (enic_is_valid_pp_vf(enic, vf, err)) \ vf 25 drivers/net/ethernet/cisco/enic/enic_pp.h pp = (vf == PORT_SELF_VF) ? enic->pp : enic->pp + vf; \ vf 30 drivers/net/ethernet/cisco/enic/enic_pp.h int enic_process_set_pp_request(struct enic *enic, int vf, vf 32 drivers/net/ethernet/cisco/enic/enic_pp.h int enic_process_get_pp_request(struct enic *enic, int vf, vf 34 drivers/net/ethernet/cisco/enic/enic_pp.h int enic_is_valid_pp_vf(struct enic *enic, int vf, int *err); vf 1856 drivers/net/ethernet/emulex/benet/be_main.c static int be_set_vf_mac(struct net_device *netdev, int vf, u8 *mac) vf 1859 drivers/net/ethernet/emulex/benet/be_main.c struct be_vf_cfg *vf_cfg = &adapter->vf_cfg[vf]; vf 1865 drivers/net/ethernet/emulex/benet/be_main.c if (!is_valid_ether_addr(mac) || vf >= adapter->num_vfs) vf 1876 drivers/net/ethernet/emulex/benet/be_main.c vf + 1); vf 1879 drivers/net/ethernet/emulex/benet/be_main.c &vf_cfg->pmac_id, vf + 1); vf 1882 drivers/net/ethernet/emulex/benet/be_main.c vf + 1); vf 1887 drivers/net/ethernet/emulex/benet/be_main.c mac, vf, status); vf 1896 drivers/net/ethernet/emulex/benet/be_main.c static int be_get_vf_config(struct net_device *netdev, int vf, vf 1900 drivers/net/ethernet/emulex/benet/be_main.c struct be_vf_cfg *vf_cfg = &adapter->vf_cfg[vf]; vf 1905 drivers/net/ethernet/emulex/benet/be_main.c if (vf >= adapter->num_vfs) vf 1908 drivers/net/ethernet/emulex/benet/be_main.c vi->vf = vf; vf 1914 drivers/net/ethernet/emulex/benet/be_main.c vi->linkstate = adapter->vf_cfg[vf].plink_tracking; vf 1915 drivers/net/ethernet/emulex/benet/be_main.c vi->spoofchk = adapter->vf_cfg[vf].spoofchk; vf 1920 drivers/net/ethernet/emulex/benet/be_main.c static int be_set_vf_tvt(struct be_adapter *adapter, int vf, u16 vlan) vf 1922 drivers/net/ethernet/emulex/benet/be_main.c struct be_vf_cfg *vf_cfg = &adapter->vf_cfg[vf]; vf 1928 drivers/net/ethernet/emulex/benet/be_main.c status = be_cmd_set_hsw_config(adapter, vlan, vf + 1, vf_if_id, 0, 0); vf 1934 drivers/net/ethernet/emulex/benet/be_main.c status = be_cmd_vlan_config(adapter, vf_if_id, vids, 1, vf + 1); vf 1937 drivers/net/ethernet/emulex/benet/be_main.c "Cleared guest VLANs on VF%d", vf); vf 1942 drivers/net/ethernet/emulex/benet/be_main.c ~BE_PRIV_FILTMGMT, vf + 1); vf 1949 drivers/net/ethernet/emulex/benet/be_main.c static int be_clear_vf_tvt(struct be_adapter *adapter, int vf) vf 1951 drivers/net/ethernet/emulex/benet/be_main.c struct be_vf_cfg *vf_cfg = &adapter->vf_cfg[vf]; vf 1956 drivers/net/ethernet/emulex/benet/be_main.c status = be_cmd_set_hsw_config(adapter, BE_RESET_VLAN_TAG_ID, vf + 1, vf 1964 drivers/net/ethernet/emulex/benet/be_main.c BE_PRIV_FILTMGMT, vf + 1); vf 1967 drivers/net/ethernet/emulex/benet/be_main.c dev_info(dev, "VF%d: FILTMGMT priv enabled", vf); vf 1976 drivers/net/ethernet/emulex/benet/be_main.c static int be_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, u8 qos, vf 1980 drivers/net/ethernet/emulex/benet/be_main.c struct be_vf_cfg *vf_cfg = &adapter->vf_cfg[vf]; vf 1986 drivers/net/ethernet/emulex/benet/be_main.c if (vf >= adapter->num_vfs || vlan > 4095 || qos > 7) vf 1994 drivers/net/ethernet/emulex/benet/be_main.c status = be_set_vf_tvt(adapter, vf, vlan); vf 1996 drivers/net/ethernet/emulex/benet/be_main.c status = be_clear_vf_tvt(adapter, vf); vf 2001 drivers/net/ethernet/emulex/benet/be_main.c "VLAN %d config on VF %d failed : %#x\n", vlan, vf, vf 2010 drivers/net/ethernet/emulex/benet/be_main.c static int be_set_vf_tx_rate(struct net_device *netdev, int vf, vf 2022 drivers/net/ethernet/emulex/benet/be_main.c if (vf >= adapter->num_vfs) vf 2059 drivers/net/ethernet/emulex/benet/be_main.c status = be_cmd_config_qos(adapter, max_tx_rate, link_speed, vf + 1); vf 2063 drivers/net/ethernet/emulex/benet/be_main.c adapter->vf_cfg[vf].tx_rate = max_tx_rate; vf 2068 drivers/net/ethernet/emulex/benet/be_main.c max_tx_rate, vf); vf 2072 drivers/net/ethernet/emulex/benet/be_main.c static int be_set_vf_link_state(struct net_device *netdev, int vf, vf 2081 drivers/net/ethernet/emulex/benet/be_main.c if (vf >= adapter->num_vfs) vf 2084 drivers/net/ethernet/emulex/benet/be_main.c status = be_cmd_set_logical_link_config(adapter, link_state, vf+1); vf 2087 drivers/net/ethernet/emulex/benet/be_main.c "Link state change on VF %d failed: %#x\n", vf, status); vf 2091 drivers/net/ethernet/emulex/benet/be_main.c adapter->vf_cfg[vf].plink_tracking = link_state; vf 2096 drivers/net/ethernet/emulex/benet/be_main.c static int be_set_vf_spoofchk(struct net_device *netdev, int vf, bool enable) vf 2099 drivers/net/ethernet/emulex/benet/be_main.c struct be_vf_cfg *vf_cfg = &adapter->vf_cfg[vf]; vf 2106 drivers/net/ethernet/emulex/benet/be_main.c if (vf >= adapter->num_vfs) vf 2117 drivers/net/ethernet/emulex/benet/be_main.c status = be_cmd_set_hsw_config(adapter, 0, vf + 1, vf_cfg->if_handle, vf 2121 drivers/net/ethernet/emulex/benet/be_main.c "Spoofchk change on VF %d failed: %#x\n", vf, status); vf 3863 drivers/net/ethernet/emulex/benet/be_main.c u32 vf; vf 3870 drivers/net/ethernet/emulex/benet/be_main.c for_all_vfs(adapter, vf_cfg, vf) { vf 3874 drivers/net/ethernet/emulex/benet/be_main.c &vf_cfg->pmac_id, vf + 1); vf 3877 drivers/net/ethernet/emulex/benet/be_main.c vf + 1); vf 3882 drivers/net/ethernet/emulex/benet/be_main.c vf); vf 3893 drivers/net/ethernet/emulex/benet/be_main.c int status, vf; vf 3897 drivers/net/ethernet/emulex/benet/be_main.c for_all_vfs(adapter, vf_cfg, vf) { vf 3900 drivers/net/ethernet/emulex/benet/be_main.c false, vf+1); vf 3911 drivers/net/ethernet/emulex/benet/be_main.c u32 vf; vf 3921 drivers/net/ethernet/emulex/benet/be_main.c for_all_vfs(adapter, vf_cfg, vf) { vf 3924 drivers/net/ethernet/emulex/benet/be_main.c vf_cfg->pmac_id, vf + 1); vf 3927 drivers/net/ethernet/emulex/benet/be_main.c vf + 1); vf 3929 drivers/net/ethernet/emulex/benet/be_main.c be_cmd_if_destroy(adapter, vf_cfg->if_handle, vf + 1); vf 4153 drivers/net/ethernet/emulex/benet/be_main.c u32 cap_flags, en_flags, vf; vf 4160 drivers/net/ethernet/emulex/benet/be_main.c for_all_vfs(adapter, vf_cfg, vf) { vf 4165 drivers/net/ethernet/emulex/benet/be_main.c vf + 1); vf 4178 drivers/net/ethernet/emulex/benet/be_main.c &vf_cfg->if_handle, vf + 1); vf 4189 drivers/net/ethernet/emulex/benet/be_main.c int vf; vf 4196 drivers/net/ethernet/emulex/benet/be_main.c for_all_vfs(adapter, vf_cfg, vf) { vf 4207 drivers/net/ethernet/emulex/benet/be_main.c int status, old_vfs, vf; vf 4217 drivers/net/ethernet/emulex/benet/be_main.c for_all_vfs(adapter, vf_cfg, vf) { vf 4218 drivers/net/ethernet/emulex/benet/be_main.c status = be_cmd_get_if_id(adapter, vf_cfg, vf); vf 4236 drivers/net/ethernet/emulex/benet/be_main.c for_all_vfs(adapter, vf_cfg, vf) { vf 4239 drivers/net/ethernet/emulex/benet/be_main.c vf + 1); vf 4244 drivers/net/ethernet/emulex/benet/be_main.c vf + 1); vf 4248 drivers/net/ethernet/emulex/benet/be_main.c vf); vf 4254 drivers/net/ethernet/emulex/benet/be_main.c be_cmd_config_qos(adapter, 0, 0, vf + 1); vf 4256 drivers/net/ethernet/emulex/benet/be_main.c status = be_cmd_get_hsw_config(adapter, NULL, vf + 1, vf 4263 drivers/net/ethernet/emulex/benet/be_main.c be_cmd_enable_vf(adapter, vf + 1); vf 4266 drivers/net/ethernet/emulex/benet/be_main.c vf+1); vf 365 drivers/net/ethernet/freescale/enetc/enetc_pf.c static int enetc_pf_set_vf_mac(struct net_device *ndev, int vf, u8 *mac) vf 371 drivers/net/ethernet/freescale/enetc/enetc_pf.c if (vf >= pf->total_vfs) vf 377 drivers/net/ethernet/freescale/enetc/enetc_pf.c vf_state = &pf->vf_state[vf]; vf 379 drivers/net/ethernet/freescale/enetc/enetc_pf.c enetc_pf_set_primary_mac_addr(&priv->si->hw, vf + 1, mac); vf 383 drivers/net/ethernet/freescale/enetc/enetc_pf.c static int enetc_pf_set_vf_vlan(struct net_device *ndev, int vf, u16 vlan, vf 392 drivers/net/ethernet/freescale/enetc/enetc_pf.c if (vf >= pf->total_vfs) vf 399 drivers/net/ethernet/freescale/enetc/enetc_pf.c enetc_set_isol_vlan(&priv->si->hw, vf + 1, vlan, qos); vf 403 drivers/net/ethernet/freescale/enetc/enetc_pf.c static int enetc_pf_set_vf_spoofchk(struct net_device *ndev, int vf, bool en) vf 409 drivers/net/ethernet/freescale/enetc/enetc_pf.c if (vf >= pf->total_vfs) vf 412 drivers/net/ethernet/freescale/enetc/enetc_pf.c cfgr = enetc_port_rd(&priv->si->hw, ENETC_PSICFGR0(vf + 1)); vf 414 drivers/net/ethernet/freescale/enetc/enetc_pf.c enetc_port_wr(&priv->si->hw, ENETC_PSICFGR0(vf + 1), cfgr); vf 1635 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c static int hns3_ndo_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, vf 1643 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c vf, vlan, qos, vlan_proto); vf 1646 drivers/net/ethernet/hisilicon/hns3/hns3_enet.c ret = h->ae_algo->ops->set_vf_vlan_filter(h, vf, vlan, vf 5584 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c u8 vf = ethtool_get_flow_spec_ring_vf(fs->ring_cookie); vf 5587 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c if (vf > hdev->num_req_vfs) { vf 5590 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c vf, hdev->num_req_vfs); vf 5594 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c dst_vport_id = vf ? hdev->vport[vf].vport_id : vport->vport_id; vf 5595 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c tqps = vf ? hdev->vport[vf].alloc_tqps : vport->alloc_tqps; vf 644 drivers/net/ethernet/intel/fm10k/fm10k_iov.c ivi->vf = vf_idx; vf 1287 drivers/net/ethernet/intel/fm10k/fm10k_pci.c int vf = fault->func - 1; vf 1288 drivers/net/ethernet/intel/fm10k/fm10k_pci.c struct fm10k_vf_info *vf_info = &iov_data->vf_info[vf]; vf 1294 drivers/net/ethernet/intel/fm10k/fm10k_pci.c hw->iov.ops.set_lport(hw, vf_info, vf, vf 612 drivers/net/ethernet/intel/i40e/i40e.h struct i40e_vf *vf; vf 657 drivers/net/ethernet/intel/i40e/i40e_debugfs.c struct i40e_vf *vf; vf 663 drivers/net/ethernet/intel/i40e/i40e_debugfs.c vf = &pf->vf[vf_id]; vf 664 drivers/net/ethernet/intel/i40e/i40e_debugfs.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 666 drivers/net/ethernet/intel/i40e/i40e_debugfs.c vf_id, vf->lan_vsi_id, vsi->seid, vf->num_queue_pairs); vf 668 drivers/net/ethernet/intel/i40e/i40e_debugfs.c vf->num_mdd_events, vf 669 drivers/net/ethernet/intel/i40e/i40e_debugfs.c vf->num_invalid_msgs, vf 670 drivers/net/ethernet/intel/i40e/i40e_debugfs.c vf->num_valid_msgs); vf 2513 drivers/net/ethernet/intel/i40e/i40e_ethtool.c struct i40e_vf *vfs = pf->vf; vf 4493 drivers/net/ethernet/intel/i40e/i40e_ethtool.c u8 vf = ethtool_get_flow_spec_ring_vf(fsp->ring_cookie); vf 4495 drivers/net/ethernet/intel/i40e/i40e_ethtool.c if (!vf) { vf 4501 drivers/net/ethernet/intel/i40e/i40e_ethtool.c vf--; vf 4503 drivers/net/ethernet/intel/i40e/i40e_ethtool.c if (vf >= pf->num_alloc_vfs) vf 4505 drivers/net/ethernet/intel/i40e/i40e_ethtool.c if (ring >= pf->vf[vf].num_queue_pairs) vf 4507 drivers/net/ethernet/intel/i40e/i40e_ethtool.c dest_vsi = pf->vf[vf].lan_vsi_id; vf 2508 drivers/net/ethernet/intel/i40e/i40e_main.c if ((vsi->type == I40E_VSI_SRIOV) && !pf->vf[vsi->vf_id].trusted) { vf 8696 drivers/net/ethernet/intel/i40e/i40e_main.c struct i40e_vf *vf; vf 8708 drivers/net/ethernet/intel/i40e/i40e_main.c vf = &pf->vf[vf_id]; vf 8709 drivers/net/ethernet/intel/i40e/i40e_main.c i40e_vc_notify_vf_reset(vf); vf 8712 drivers/net/ethernet/intel/i40e/i40e_main.c i40e_reset_vf(vf, false); vf 9078 drivers/net/ethernet/intel/i40e/i40e_main.c if (pf->vf) vf 10261 drivers/net/ethernet/intel/i40e/i40e_main.c struct i40e_vf *vf; vf 10317 drivers/net/ethernet/intel/i40e/i40e_main.c vf = &(pf->vf[i]); vf 10321 drivers/net/ethernet/intel/i40e/i40e_main.c vf->num_mdd_events++; vf 10326 drivers/net/ethernet/intel/i40e/i40e_main.c set_bit(I40E_VF_STATE_DISABLED, &vf->vf_states); vf 10332 drivers/net/ethernet/intel/i40e/i40e_main.c vf->num_mdd_events++; vf 10337 drivers/net/ethernet/intel/i40e/i40e_main.c set_bit(I40E_VF_STATE_DISABLED, &vf->vf_states); vf 13252 drivers/net/ethernet/intel/i40e/i40e_main.c if (pf->vf[vsi->vf_id].spoofchk) { vf 24 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf = pf->vf; vf 27 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c for (i = 0; i < pf->num_alloc_vfs; i++, vf++) { vf 28 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c int abs_vf_id = vf->vf_id + (int)hw->func_caps.vf_base_id; vf 30 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states) && vf 31 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) vf 48 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_vc_notify_vf_link_state(struct i40e_vf *vf) vf 51 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 54 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c int abs_vf_id = vf->vf_id + (int)hw->func_caps.vf_base_id; vf 60 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf->queues_enabled) { vf 63 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c } else if (vf->link_forced) { vf 64 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pfe.event_data.link_event.link_status = vf->link_up; vf 66 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c (vf->link_up ? VIRTCHNL_LINK_SPEED_40GB : 0); vf 89 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_notify_vf_link_state(&pf->vf[i]); vf 114 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c void i40e_vc_notify_vf_reset(struct i40e_vf *vf) vf 120 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf || vf->vf_id >= vf->pf->num_alloc_vfs) vf 124 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states) && vf 125 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) vf 128 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c abs_vf_id = vf->vf_id + (int)vf->pf->hw.func_caps.vf_base_id; vf 132 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_aq_send_msg_to_vf(&vf->pf->hw, abs_vf_id, VIRTCHNL_OP_EVENT, vf 144 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static inline void i40e_vc_disable_vf(struct i40e_vf *vf) vf 148 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_notify_vf_reset(vf); vf 156 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_reset_vf(vf, false)) vf 161 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c dev_warn(&vf->pf->pdev->dev, vf 163 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 173 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static inline bool i40e_vc_isvalid_vsi_id(struct i40e_vf *vf, u16 vsi_id) vf 175 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 178 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return (vsi && (vsi->vf_id == vf->vf_id)); vf 189 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static inline bool i40e_vc_isvalid_queue_id(struct i40e_vf *vf, u16 vsi_id, vf 192 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 205 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static inline bool i40e_vc_isvalid_vector_id(struct i40e_vf *vf, u32 vector_id) vf 207 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 222 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static u16 i40e_vc_get_pf_queue_id(struct i40e_vf *vf, u16 vsi_id, vf 225 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 251 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static u16 i40e_get_real_pf_qid(struct i40e_vf *vf, u16 vsi_id, u16 queue_id) vf 255 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 260 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c for (i = 0; i < vf->num_tc; i++) { vf 261 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (queue_id < vf->ch[i].num_qps) { vf 262 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi_id = vf->ch[i].vsi_id; vf 268 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c queue_id -= vf->ch[i].num_qps; vf 272 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_get_pf_queue_id(vf, vsi_id, queue_id); vf 283 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_config_irq_link_list(struct i40e_vf *vf, u16 vsi_id, vf 287 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 298 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg_idx = I40E_VPINT_LNKLST0(vf->vf_id); vf 301 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ((pf->hw.func_caps.num_msix_vectors_vf - 1) * vf->vf_id) + vf 328 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf_queue_id = i40e_get_real_pf_qid(vf, vsi_id, vsi_queue_id); vf 351 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf_queue_id = i40e_get_real_pf_qid(vf, vf 371 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if ((vf->driver_caps & VIRTCHNL_VF_OFFLOAD_RX_POLLING) && vf 389 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_release_iwarp_qvlist(struct i40e_vf *vf) vf 391 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 392 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct virtchnl_iwarp_qvlist_info *qvlist_info = vf->qvlist_info; vf 396 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf->qvlist_info) vf 414 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg_idx = (msix_vf - 1) * vf->vf_id + qv_info->ceq_idx; vf 421 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg_idx = ((msix_vf - 1) * vf->vf_id) + (v_idx - 1); vf 430 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c kfree(vf->qvlist_info); vf 431 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->qvlist_info = NULL; vf 441 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_config_iwarp_qvlist(struct i40e_vf *vf, vf 444 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 463 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c kfree(vf->qvlist_info); vf 464 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->qvlist_info = kzalloc(struct_size(vf->qvlist_info, qv_info, vf 467 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf->qvlist_info) { vf 471 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->qvlist_info->num_vectors = qvlist_info->num_vectors; vf 480 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_vector_id(vf, qv_info->v_idx)) { vf 487 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->qvlist_info->qv_info[i] = *qv_info; vf 489 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg_idx = ((msix_vf - 1) * vf->vf_id) + (v_idx - 1); vf 501 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg_idx = (msix_vf - 1) * vf->vf_id + qv_info->ceq_idx; vf 509 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg_idx = ((msix_vf - 1) * vf->vf_id) + (v_idx - 1); vf 522 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(hw, I40E_VPINT_AEQCTL(vf->vf_id), reg); vf 528 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c kfree(vf->qvlist_info); vf 529 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->qvlist_info = NULL; vf 543 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_config_vsi_tx_queue(struct i40e_vf *vf, u16 vsi_id, vf 547 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 555 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_vsi_id(vf, info->vsi_id)) { vf 559 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf_queue_id = i40e_vc_get_pf_queue_id(vf, vsi_id, vsi_queue_id); vf 601 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c qtx_ctl |= (((vf->vf_id + hw->func_caps.vf_base_id) vf 620 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_config_vsi_rx_queue(struct i40e_vf *vf, u16 vsi_id, vf 624 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 630 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf_queue_id = i40e_vc_get_pf_queue_id(vf, vsi_id, vsi_queue_id); vf 709 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_alloc_vsi_res(struct i40e_vf *vf, u8 idx) vf 712 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 718 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 723 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, pf->hw.aq.asq_last_status); vf 732 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->lan_vsi_idx = vsi->idx; vf 733 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->lan_vsi_id = vsi->id; vf 740 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->port_vlan_id) vf 741 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vsi_add_pvid(vsi, vf->port_vlan_id); vf 744 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (is_valid_ether_addr(vf->default_lan_addr.addr)) { vf 746 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->default_lan_addr.addr); vf 750 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->default_lan_addr.addr, vf->vf_id); vf 758 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(&pf->hw, I40E_VFQF_HENA1(0, vf->vf_id), (u32)hena); vf 759 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(&pf->hw, I40E_VFQF_HENA1(1, vf->vf_id), (u32)(hena >> 32)); vf 767 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 768 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->ch[idx].vsi_idx = vsi->idx; vf 769 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->ch[idx].vsi_id = vsi->id; vf 773 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->tx_rate) { vf 774 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c max_tx_rate = vf->tx_rate; vf 775 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c } else if (vf->ch[idx].max_tx_rate) { vf 776 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c max_tx_rate = vf->ch[idx].max_tx_rate; vf 785 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, ret); vf 799 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_map_pf_queues_to_vsi(struct i40e_vf *vf) vf 801 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 807 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) vf 808 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c num_tc = vf->num_tc; vf 811 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 812 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c qps = vf->ch[i].num_qps; vf 813 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi_id = vf->ch[i].vsi_id; vf 815 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c qps = pf->vsi[vf->lan_vsi_idx]->alloc_queue_pairs; vf 816 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi_id = vf->lan_vsi_id; vf 824 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c u16 qid = i40e_vc_get_pf_queue_id(vf, vf 828 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c qid = i40e_vc_get_pf_queue_id(vf, vsi_id, vf 846 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_map_pf_to_vf_queues(struct i40e_vf *vf) vf 848 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 855 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) vf 856 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c num_tc = vf->num_tc; vf 859 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 860 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c qps = vf->ch[i].num_qps; vf 861 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi_id = vf->ch[i].vsi_id; vf 863 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c qps = pf->vsi[vf->lan_vsi_idx]->alloc_queue_pairs; vf 864 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi_id = vf->lan_vsi_id; vf 868 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c qid = i40e_vc_get_pf_queue_id(vf, vsi_id, j); vf 871 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(hw, I40E_VPLAN_QTABLE(total_qps, vf->vf_id), vf 884 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_enable_vf_mappings(struct i40e_vf *vf) vf 886 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 894 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_write_rx_ctl(hw, I40E_VSILAN_QBASE(vf->lan_vsi_id), vf 899 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(hw, I40E_VPLAN_MAPENA(vf->vf_id), reg); vf 901 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_map_pf_to_vf_queues(vf); vf 902 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_map_pf_queues_to_vsi(vf); vf 913 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_disable_vf_mappings(struct i40e_vf *vf) vf 915 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 920 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(hw, I40E_VPLAN_MAPENA(vf->vf_id), 0); vf 922 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(hw, I40E_VPLAN_QTABLE(i, vf->vf_id), vf 933 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_free_vf_res(struct i40e_vf *vf) vf 935 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 943 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c clear_bit(I40E_VF_STATE_INIT, &vf->vf_states); vf 948 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->num_queue_pairs > I40E_DEFAULT_QUEUES_PER_VF) { vf 949 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf->queues_left += vf->num_queue_pairs - vf 954 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->lan_vsi_idx) { vf 955 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vsi_release(pf->vsi[vf->lan_vsi_idx]); vf 956 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->lan_vsi_idx = 0; vf 957 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->lan_vsi_id = 0; vf 958 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_mac = 0; vf 962 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled && vf->ch[0].vsi_idx) { vf 963 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c for (j = 0; j < vf->num_tc; j++) { vf 969 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vsi_release(pf->vsi[vf->ch[j].vsi_idx]); vf 970 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->ch[j].vsi_idx = 0; vf 971 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->ch[j].vsi_id = 0; vf 980 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg_idx = I40E_VFINT_DYN_CTL0(vf->vf_id); vf 983 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c (vf->vf_id)) vf 993 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg_idx = I40E_VPINT_LNKLST0(vf->vf_id); vf 996 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c (vf->vf_id)) vf 1004 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_queue_pairs = 0; vf 1005 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c clear_bit(I40E_VF_STATE_MC_PROMISC, &vf->vf_states); vf 1006 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c clear_bit(I40E_VF_STATE_UC_PROMISC, &vf->vf_states); vf 1015 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_alloc_vf_res(struct i40e_vf *vf) vf 1017 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 1021 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->num_req_queues && vf 1022 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_req_queues <= pf->queues_left + I40E_DEFAULT_QUEUES_PER_VF) vf 1023 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf->num_vf_qps = vf->num_req_queues; vf 1028 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_alloc_vsi_res(vf, 0); vf 1031 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c total_queue_pairs += pf->vsi[vf->lan_vsi_idx]->alloc_queue_pairs; vf 1034 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 1038 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c for (idx = 1; idx < vf->num_tc; idx++) { vf 1039 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_alloc_vsi_res(vf, idx); vf 1047 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 1048 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->adq_enabled = false; vf 1061 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->trusted) vf 1062 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c set_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps); vf 1064 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c clear_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps); vf 1069 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_queue_pairs = total_queue_pairs; vf 1072 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c set_bit(I40E_VF_STATE_INIT, &vf->vf_states); vf 1076 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_free_vf_res(vf); vf 1090 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_quiesce_vf_pci(struct i40e_vf *vf) vf 1092 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 1097 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf_abs_id = vf->vf_id + hw->func_caps.vf_base_id; vf 1122 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static i40e_status i40e_config_vf_promiscuous_mode(struct i40e_vf *vf, vf 1127 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 1135 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_vsi_id(vf, vsi_id) || !vsi) vf 1138 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->port_vlan_id) { vf 1141 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->port_vlan_id, vf 1148 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, vf 1156 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->port_vlan_id, vf 1163 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, vf 1211 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, vf 1224 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, vf 1241 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_trigger_vf_reset(struct i40e_vf *vf, bool flr) vf 1243 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 1248 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c clear_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states); vf 1256 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c clear_bit(I40E_VF_STATE_INIT, &vf->vf_states); vf 1263 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg = rd32(hw, I40E_VPGEN_VFRTRIG(vf->vf_id)); vf 1265 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(hw, I40E_VPGEN_VFRTRIG(vf->vf_id), reg); vf 1269 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg_idx = (hw->func_caps.vf_base_id + vf->vf_id) / 32; vf 1270 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c bit_idx = (hw->func_caps.vf_base_id + vf->vf_id) % 32; vf 1274 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_quiesce_vf_pci(vf)) vf 1276 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 1287 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_cleanup_reset_vf(struct i40e_vf *vf) vf 1289 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 1294 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_config_vf_promiscuous_mode(vf, vf->lan_vsi_id, false, false); vf 1297 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_free_vf_res(vf); vf 1309 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg = rd32(hw, I40E_VPGEN_VFRTRIG(vf->vf_id)); vf 1311 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(hw, I40E_VPGEN_VFRTRIG(vf->vf_id), reg); vf 1314 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_alloc_vf_res(vf)) { vf 1315 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c int abs_vf_id = vf->vf_id + hw->func_caps.vf_base_id; vf 1316 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_enable_vf_mappings(vf); vf 1317 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c set_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states); vf 1318 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c clear_bit(I40E_VF_STATE_DISABLED, &vf->vf_states); vf 1321 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c &vf->vf_states)) vf 1323 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_vlan = 0; vf 1330 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c wr32(hw, I40E_VFGEN_RSTAT1(vf->vf_id), VIRTCHNL_VFR_VFACTIVE); vf 1340 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c bool i40e_reset_vf(struct i40e_vf *vf, bool flr) vf 1342 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 1354 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_trigger_vf_reset(vf, flr); vf 1366 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg = rd32(hw, I40E_VPGEN_VFRSTAT(vf->vf_id)); vf 1378 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 1382 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->lan_vsi_idx != 0) vf 1383 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vsi_stop_rings(pf->vsi[vf->lan_vsi_idx]); vf 1385 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_cleanup_reset_vf(vf); vf 1408 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 1422 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_trigger_vf_reset(&pf->vf[v], flr); vf 1437 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &pf->vf[v]; vf 1438 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c reg = rd32(hw, I40E_VPGEN_VFRSTAT(vf->vf_id)); vf 1457 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf->vf[v].vf_id); vf 1465 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (pf->vf[v].lan_vsi_idx == 0) vf 1468 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vsi_stop_rings_no_wait(pf->vsi[pf->vf[v].lan_vsi_idx]); vf 1476 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (pf->vf[v].lan_vsi_idx == 0) vf 1479 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vsi_wait_queues_disabled(pf->vsi[pf->vf[v].lan_vsi_idx]); vf 1489 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_cleanup_reset_vf(&pf->vf[v]); vf 1509 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!pf->vf) vf 1518 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_INIT, &pf->vf[i].vf_states)) vf 1521 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vsi_stop_rings_no_wait(pf->vsi[pf->vf[i].lan_vsi_idx]); vf 1525 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_INIT, &pf->vf[i].vf_states)) vf 1528 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vsi_wait_queues_disabled(pf->vsi[pf->vf[i].lan_vsi_idx]); vf 1544 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_INIT, &pf->vf[i].vf_states)) vf 1545 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_free_vf_res(&pf->vf[i]); vf 1547 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_disable_vf_mappings(&pf->vf[i]); vf 1550 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c kfree(pf->vf); vf 1551 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf->vf = NULL; vf 1601 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf->vf = vfs; vf 1735 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_send_msg_to_vf(struct i40e_vf *vf, u32 v_opcode, vf 1744 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf || vf->vf_id >= vf->pf->num_alloc_vfs) vf 1747 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf = vf->pf; vf 1749 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c abs_vf_id = vf->vf_id + hw->func_caps.vf_base_id; vf 1753 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_invalid_msgs++; vf 1755 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, v_opcode, v_retval); vf 1756 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->num_invalid_msgs > vf 1760 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 1762 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c set_bit(I40E_VF_STATE_DISABLED, &vf->vf_states); vf 1765 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_valid_msgs++; vf 1767 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_invalid_msgs = 0; vf 1775 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, pf->hw.aq.asq_last_status); vf 1790 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_send_resp_to_vf(struct i40e_vf *vf, vf 1794 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_msg_to_vf(vf, opcode, retval, NULL, 0); vf 1804 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_get_version_msg(struct i40e_vf *vf, u8 *msg) vf 1810 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_ver = *(struct virtchnl_version_info *)msg; vf 1812 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (VF_IS_V10(&vf->vf_ver)) vf 1814 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_msg_to_vf(vf, VIRTCHNL_OP_VERSION, vf 1823 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_del_qch(struct i40e_vf *vf) vf 1825 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 1831 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c for (i = 1; i < vf->num_tc; i++) { vf 1832 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->ch[i].vsi_idx) { vf 1833 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vsi_release(pf->vsi[vf->ch[i].vsi_idx]); vf 1834 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->ch[i].vsi_idx = 0; vf 1835 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->ch[i].vsi_id = 0; vf 1847 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_get_vf_resources_msg(struct i40e_vf *vf, u8 *msg) vf 1850 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 1857 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) { vf 1869 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (VF_IS_V11(&vf->vf_ver)) vf 1870 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->driver_caps = *(u32 *)msg; vf 1872 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->driver_caps = VIRTCHNL_VF_OFFLOAD_L2 | vf 1877 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1881 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_vf_client_capable(pf, vf->vf_id) && vf 1882 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_IWARP)) { vf 1884 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c set_bit(I40E_VF_STATE_IWARPENA, &vf->vf_states); vf 1886 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c clear_bit(I40E_VF_STATE_IWARPENA, &vf->vf_states); vf 1889 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_RSS_PF) { vf 1893 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_RSS_AQ)) vf 1900 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_RSS_PCTYPE_V2) vf 1905 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_ENCAP) vf 1909 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_ENCAP_CSUM)) vf 1912 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_RX_POLLING) { vf 1916 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 1924 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_WB_ON_ITR) vf 1929 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_REQ_QUEUES) vf 1932 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_ADQ) vf 1936 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vfres->num_queue_pairs = vf->num_queue_pairs; vf 1941 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->lan_vsi_idx) { vf 1942 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vfres->vsi_res[0].vsi_id = vf->lan_vsi_id; vf 1949 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->default_lan_addr.addr); vf 1951 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c set_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states); vf 1955 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_send_msg_to_vf(vf, VIRTCHNL_OP_GET_VF_RESOURCES, vf 1970 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_vc_reset_vf_msg(struct i40e_vf *vf) vf 1972 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) vf 1973 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_reset_vf(vf, false); vf 2003 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_config_promiscuous_mode_msg(struct i40e_vf *vf, u8 *msg) vf 2007 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2012 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 2016 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps)) { vf 2019 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 2033 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_vsi_id(vf, info->vsi_id)) { vf 2044 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c aq_ret = i40e_config_vf_promiscuous_mode(vf, info->vsi_id, allmulti, vf 2051 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c &vf->vf_states)) vf 2054 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 2056 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c &vf->vf_states)) vf 2059 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 2063 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c &vf->vf_states)) vf 2066 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 2068 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c &vf->vf_states)) vf 2071 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 2075 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, vf 2088 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_config_queues_msg(struct i40e_vf *vf, u8 *msg) vf 2093 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2099 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 2104 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_vsi_id(vf, qci->vsi_id)) { vf 2114 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 2116 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c num_qps_all += vf->ch[i].num_qps; vf 2128 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf->adq_enabled) { vf 2129 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_queue_id(vf, vsi_id, vf 2145 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 2146 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (idx >= ARRAY_SIZE(vf->ch)) { vf 2150 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi_id = vf->ch[idx].vsi_id; vf 2153 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_config_vsi_rx_queue(vf, vsi_id, vsi_queue_id, vf 2155 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_config_vsi_tx_queue(vf, vsi_id, vsi_queue_id, vf 2166 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 2167 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (idx >= ARRAY_SIZE(vf->ch)) { vf 2171 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (j == (vf->ch[idx].num_qps - 1)) { vf 2182 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf->adq_enabled) { vf 2183 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf->vsi[vf->lan_vsi_idx]->num_queue_pairs = vf 2186 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c for (i = 0; i < vf->num_tc; i++) vf 2187 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c pf->vsi[vf->ch[i].vsi_idx]->num_queue_pairs = vf 2188 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->ch[i].num_qps; vf 2193 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_CONFIG_VSI_QUEUES, vf 2204 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_validate_queue_map(struct i40e_vf *vf, u16 vsi_id, vf 2210 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 2211 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi_id = vf->ch[vsi_queue_id / I40E_MAX_VF_VSI].vsi_id; vf 2217 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_queue_id(vf, vsi_id, queue_id)) vf 2232 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_config_irq_map_msg(struct i40e_vf *vf, u8 *msg) vf 2241 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 2247 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->pf->hw.func_caps.num_msix_vectors_vf) { vf 2255 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_vector_id(vf, map->vector_id) || vf 2256 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !i40e_vc_isvalid_vsi_id(vf, map->vsi_id)) { vf 2262 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_validate_queue_map(vf, vsi_id, map->rxq_map)) { vf 2267 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_validate_queue_map(vf, vsi_id, map->txq_map)) { vf 2272 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_config_irq_link_list(vf, vsi_id, map); vf 2276 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_CONFIG_IRQ_MAP, vf 2348 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_enable_queues_msg(struct i40e_vf *vf, u8 *msg) vf 2352 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2356 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 2361 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_vsi_id(vf, vqs->vsi_id)) { vf 2372 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_ctrl_vf_rx_rings(pf->vsi[vf->lan_vsi_idx], vqs->rx_queues, vf 2377 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_ctrl_vf_tx_rings(pf->vsi[vf->lan_vsi_idx], vqs->tx_queues, vf 2384 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 2386 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c for (i = 1; i < vf->num_tc; i++) { vf 2387 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_vsi_start_rings(pf->vsi[vf->ch[i].vsi_idx])) vf 2392 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->queues_enabled = true; vf 2396 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_ENABLE_QUEUES, vf 2408 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_disable_queues_msg(struct i40e_vf *vf, u8 *msg) vf 2412 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2416 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->queues_enabled = false; vf 2418 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 2423 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_vsi_id(vf, vqs->vsi_id)) { vf 2434 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_ctrl_vf_tx_rings(pf->vsi[vf->lan_vsi_idx], vqs->tx_queues, vf 2439 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_ctrl_vf_rx_rings(pf->vsi[vf->lan_vsi_idx], vqs->rx_queues, vf 2446 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_DISABLE_QUEUES, vf 2460 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_request_queues_msg(struct i40e_vf *vf, u8 *msg) vf 2465 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c u8 cur_pairs = vf->num_queue_pairs; vf 2466 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2468 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) vf 2474 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, vf 2480 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, vf 2486 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_req_queues = req_pairs; vf 2487 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_notify_vf_reset(vf); vf 2488 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_reset_vf(vf, false); vf 2492 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_msg_to_vf(vf, VIRTCHNL_OP_REQUEST_QUEUES, 0, vf 2503 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_get_stats_msg(struct i40e_vf *vf, u8 *msg) vf 2507 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2514 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 2519 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!i40e_vc_isvalid_vsi_id(vf, vqs->vsi_id)) { vf 2524 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2534 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_msg_to_vf(vf, VIRTCHNL_OP_GET_STATS, aq_ret, vf 2561 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static inline int i40e_check_vf_permission(struct i40e_vf *vf, vf 2564 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2571 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps) && vf 2572 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c (vf->num_mac + al->num_elements) > I40E_VC_MAX_MAC_ADDR_PER_VF) { vf 2595 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps) && vf 2596 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !is_multicast_ether_addr(addr) && vf->pf_set_mac && vf 2597 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !ether_addr_equal(addr, vf->default_lan_addr.addr)) { vf 2614 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_add_mac_addr_msg(struct i40e_vf *vf, u8 *msg) vf 2618 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2623 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states) || vf 2624 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !i40e_vc_isvalid_vsi_id(vf, al->vsi_id)) { vf 2629 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2636 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_check_vf_permission(vf, al); vf 2653 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c al->list[i].addr, vf->vf_id); vf 2658 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_mac++; vf 2668 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, ret); vf 2672 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_ADD_ETH_ADDR, vf 2683 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_del_mac_addr_msg(struct i40e_vf *vf, u8 *msg) vf 2687 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2692 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states) || vf 2693 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !i40e_vc_isvalid_vsi_id(vf, al->vsi_id)) { vf 2702 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c al->list[i].addr, vf->vf_id); vf 2707 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->pf_set_mac && vf 2709 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->default_lan_addr.addr)) { vf 2712 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->default_lan_addr.addr, vf->vf_id); vf 2717 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2727 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_mac--; vf 2736 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, ret); vf 2740 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_DEL_ETH_ADDR, vf 2751 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_add_vlan_msg(struct i40e_vf *vf, u8 *msg) vf 2755 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2760 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if ((vf->num_vlan >= I40E_VC_MAX_VLAN_PER_VF) && vf 2761 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !test_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps)) { vf 2766 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states) || vf 2767 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !i40e_vc_isvalid_vsi_id(vf, vfl->vsi_id)) { vf 2780 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2791 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_vlan++; vf 2793 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_UC_PROMISC, &vf->vf_states)) vf 2798 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_MC_PROMISC, &vf->vf_states)) vf 2807 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vfl->vlan_id[i], vf->vf_id, ret); vf 2812 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_ADD_VLAN, aq_ret); vf 2822 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_remove_vlan_msg(struct i40e_vf *vf, u8 *msg) vf 2826 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2831 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states) || vf 2832 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !i40e_vc_isvalid_vsi_id(vf, vfl->vsi_id)) { vf 2844 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2853 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_vlan--; vf 2855 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_UC_PROMISC, &vf->vf_states)) vf 2860 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_MC_PROMISC, &vf->vf_states)) vf 2869 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_DEL_VLAN, aq_ret); vf 2880 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_iwarp_msg(struct i40e_vf *vf, u8 *msg, u16 msglen) vf 2882 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2883 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c int abs_vf_id = vf->vf_id + pf->hw.func_caps.vf_base_id; vf 2886 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states) || vf 2887 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !test_bit(I40E_VF_STATE_IWARPENA, &vf->vf_states)) { vf 2897 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_IWARP, vf 2909 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_iwarp_qvmap_msg(struct i40e_vf *vf, u8 *msg, bool config) vf 2915 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states) || vf 2916 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !test_bit(I40E_VF_STATE_IWARPENA, &vf->vf_states)) { vf 2922 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_config_iwarp_qvlist(vf, qvlist_info)) vf 2925 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_release_iwarp_qvlist(vf); vf 2930 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, vf 2943 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_config_rss_key(struct i40e_vf *vf, u8 *msg) vf 2947 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2951 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states) || vf 2952 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !i40e_vc_isvalid_vsi_id(vf, vrk->vsi_id) || vf 2958 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2962 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_CONFIG_RSS_KEY, vf 2973 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_config_rss_lut(struct i40e_vf *vf, u8 *msg) vf 2977 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 2982 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states) || vf 2983 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c !i40e_vc_isvalid_vsi_id(vf, vrl->vsi_id) || vf 2990 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vrl->lut[i] >= vf->num_queue_pairs) { vf 2995 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2999 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_CONFIG_RSS_LUT, vf 3010 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_get_rss_hena(struct i40e_vf *vf, u8 *msg) vf 3013 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 3017 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 3032 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c aq_ret = i40e_vc_send_msg_to_vf(vf, VIRTCHNL_OP_GET_RSS_HENA_CAPS, vf 3045 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_set_rss_hena(struct i40e_vf *vf, u8 *msg) vf 3049 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 3053 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 3057 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_write_rx_ctl(hw, I40E_VFQF_HENA1(0, vf->vf_id), (u32)vrh->hena); vf 3058 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_write_rx_ctl(hw, I40E_VFQF_HENA1(1, vf->vf_id), vf 3063 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_SET_RSS_HENA, aq_ret); vf 3073 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_enable_vlan_stripping(struct i40e_vf *vf, u8 *msg) vf 3078 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 3083 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = vf->pf->vsi[vf->lan_vsi_idx]; vf 3088 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_ENABLE_VLAN_STRIPPING, vf 3099 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_disable_vlan_stripping(struct i40e_vf *vf, u8 *msg) vf 3104 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 3109 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = vf->pf->vsi[vf->lan_vsi_idx]; vf 3114 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_DISABLE_VLAN_STRIPPING, vf 3125 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_validate_cloud_filter(struct i40e_vf *vf, vf 3130 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 3140 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3148 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, tc_filter->action_meta); vf 3162 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 3168 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c data.dst_mac, vf->vf_id); vf 3183 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, ntohs(data.vlan_id)); vf 3189 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps)) { vf 3192 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3201 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, data.dst_mac); vf 3210 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, data.src_mac); vf 3218 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3226 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3234 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3241 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3256 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static struct i40e_vsi *i40e_find_vsi_from_seid(struct i40e_vf *vf, u16 seid) vf 3258 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 3262 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c for (i = 0; i < vf->num_tc ; i++) { vf 3263 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = i40e_find_vsi_from_id(pf, vf->ch[i].vsi_id); vf 3276 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static void i40e_del_all_cloud_filters(struct i40e_vf *vf) vf 3279 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 3285 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c &vf->cloud_filter_list, cloud_node) { vf 3286 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = i40e_find_vsi_from_seid(vf, cfilter->seid); vf 3290 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, cfilter->seid); vf 3302 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, i40e_stat_str(&pf->hw, ret), vf 3308 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_cloud_filters--; vf 3319 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_del_cloud_filter(struct i40e_vf *vf, u8 *msg) vf 3325 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 3331 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 3336 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf->adq_enabled) { vf 3339 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3344 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_validate_cloud_filter(vf, vcf)) { vf 3347 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3389 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3393 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->ch[vcf->action_meta].vsi_idx]; vf 3405 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, i40e_stat_str(&pf->hw, ret), vf 3411 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c &vf->cloud_filter_list, cloud_node) { vf 3436 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_cloud_filters--; vf 3440 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_DEL_CLOUD_FILTER, vf 3451 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_add_cloud_filter(struct i40e_vf *vf, u8 *msg) vf 3457 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 3462 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 3467 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf->adq_enabled) { vf 3470 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3475 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (i40e_validate_cloud_filter(vf, vcf)) { vf 3478 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3523 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3527 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->ch[vcf->action_meta].vsi_idx]; vf 3539 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, i40e_stat_str(&pf->hw, ret), vf 3545 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c hlist_add_head(&cfilter->cloud_node, &vf->cloud_filter_list); vf 3548 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_cloud_filters++; vf 3552 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_ADD_CLOUD_FILTER, vf 3561 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_add_qch_msg(struct i40e_vf *vf, u8 *msg) vf 3565 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 3571 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 3577 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->spoofchk) { vf 3584 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!(vf->driver_caps & VIRTCHNL_VF_OFFLOAD_ADQ)) { vf 3587 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3596 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, tci->num_tc, I40E_MAX_VF_VSI); vf 3607 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id, i, tci->list[i].count, vf 3619 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3627 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_queue_pairs = I40E_MAX_VF_QUEUES; vf 3658 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_tc = tci->num_tc; vf 3659 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c for (i = 0; i < vf->num_tc; i++) { vf 3665 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3669 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->ch[i].max_tx_rate = vf 3673 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->ch[i].num_qps = tci->list[i].count; vf 3677 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->adq_enabled = true; vf 3682 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_req_queues = 0; vf 3685 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_notify_vf_reset(vf); vf 3686 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_reset_vf(vf, false); vf 3692 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_ENABLE_CHANNELS, vf 3701 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c static int i40e_vc_del_qch_msg(struct i40e_vf *vf, u8 *msg) vf 3703 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_pf *pf = vf->pf; vf 3706 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_ACTIVE, &vf->vf_states)) { vf 3711 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 3712 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_del_all_cloud_filters(vf); vf 3713 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_del_qch(vf); vf 3714 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->adq_enabled = false; vf 3715 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->num_tc = 0; vf 3718 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3721 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->vf_id); vf 3726 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_notify_vf_reset(vf); vf 3727 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_reset_vf(vf, false); vf 3732 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c return i40e_vc_send_resp_to_vf(vf, VIRTCHNL_OP_DISABLE_CHANNELS, vf 3753 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 3759 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &(pf->vf[local_vf_id]); vf 3762 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_DISABLED, &vf->vf_states)) vf 3766 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = virtchnl_vc_validate_vf_msg(&vf->vf_ver, v_opcode, msg, msglen); vf 3769 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_send_resp_to_vf(vf, v_opcode, I40E_ERR_PARAM); vf 3782 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_get_version_msg(vf, msg); vf 3785 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_get_vf_resources_msg(vf, msg); vf 3786 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_notify_vf_link_state(vf); vf 3789 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_reset_vf_msg(vf); vf 3793 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_config_promiscuous_mode_msg(vf, msg); vf 3796 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_config_queues_msg(vf, msg); vf 3799 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_config_irq_map_msg(vf, msg); vf 3802 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_enable_queues_msg(vf, msg); vf 3803 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_notify_vf_link_state(vf); vf 3806 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_disable_queues_msg(vf, msg); vf 3809 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_add_mac_addr_msg(vf, msg); vf 3812 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_del_mac_addr_msg(vf, msg); vf 3815 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_add_vlan_msg(vf, msg); vf 3818 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_remove_vlan_msg(vf, msg); vf 3821 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_get_stats_msg(vf, msg); vf 3824 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_iwarp_msg(vf, msg, msglen); vf 3827 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_iwarp_qvmap_msg(vf, msg, true); vf 3830 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_iwarp_qvmap_msg(vf, msg, false); vf 3833 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_config_rss_key(vf, msg); vf 3836 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_config_rss_lut(vf, msg); vf 3839 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_get_rss_hena(vf, msg); vf 3842 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_set_rss_hena(vf, msg); vf 3845 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_enable_vlan_stripping(vf, msg); vf 3848 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_disable_vlan_stripping(vf, msg); vf 3851 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_request_queues_msg(vf, msg); vf 3854 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_add_qch_msg(vf, msg); vf 3857 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_del_qch_msg(vf, msg); vf 3860 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_add_cloud_filter(vf, msg); vf 3863 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_del_cloud_filter(vf, msg); vf 3869 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_vc_send_resp_to_vf(vf, v_opcode, vf 3888 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 3909 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 3913 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_reset_vf(vf, true); vf 3931 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 3940 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 3941 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = i40e_find_vsi_from_id(pf, vf->lan_vsi_id); vf 3962 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 3978 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 3979 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 3988 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) { vf 3990 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 3995 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) { vf 4015 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!is_zero_ether_addr(vf->default_lan_addr.addr)) vf 4016 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_del_mac_filter(vsi, vf->default_lan_addr.addr); vf 4032 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ether_addr_copy(vf->default_lan_addr.addr, mac); vf 4035 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->pf_set_mac = false; vf 4038 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->pf_set_mac = true; vf 4046 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_disable_vf(vf); vf 4100 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 4125 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 4126 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 4127 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) { vf 4146 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_disable_vf(vf); vf 4148 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 4184 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_config_vf_promiscuous_mode(vf, vf->lan_vsi_id, vf 4217 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_UC_PROMISC, &vf->vf_states)) vf 4220 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (test_bit(I40E_VF_STATE_MC_PROMISC, &vf->vf_states)) vf 4234 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->port_vlan_id = le16_to_cpu(vsi->info.pvid); vf 4236 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ret = i40e_config_vf_promiscuous_mode(vf, vsi->id, allmulti, alluni); vf 4264 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 4284 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 4285 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 4286 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) { vf 4297 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->tx_rate = max_tx_rate; vf 4317 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 4330 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 4332 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 4338 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ivi->vf = vf_id; vf 4340 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ether_addr_copy(ivi->mac, vf->default_lan_addr.addr); vf 4342 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ivi->max_tx_rate = vf->tx_rate; vf 4347 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->link_forced == false) vf 4349 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c else if (vf->link_up == true) vf 4353 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ivi->spoofchk = vf->spoofchk; vf 4354 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ivi->trusted = vf->trusted; vf 4376 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 4392 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 4393 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c abs_vf_id = vf->vf_id + hw->func_caps.vf_base_id; vf 4400 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->link_forced = false; vf 4408 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->link_forced = true; vf 4409 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->link_up = true; vf 4414 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->link_forced = true; vf 4415 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->link_up = false; vf 4447 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 4462 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &(pf->vf[vf_id]); vf 4463 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!test_bit(I40E_VF_STATE_INIT, &vf->vf_states)) { vf 4470 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (enable == vf->spoofchk) vf 4473 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->spoofchk = enable; vf 4475 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c ctxt.seid = pf->vsi[vf->lan_vsi_idx]->seid; vf 4504 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c struct i40e_vf *vf; vf 4525 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 4527 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (setting == vf->trusted) vf 4530 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c vf->trusted = setting; vf 4531 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_vc_disable_vf(vf); vf 4535 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (vf->adq_enabled) { vf 4536 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c if (!vf->trusted) { vf 4540 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c i40e_del_all_cloud_filters(vf); vf 124 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h bool i40e_reset_vf(struct i40e_vf *vf, bool flr); vf 126 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h void i40e_vc_notify_vf_reset(struct i40e_vf *vf); vf 355 drivers/net/ethernet/intel/iavf/iavf.h struct iavf_adapter *vf; vf 137 drivers/net/ethernet/intel/iavf/iavf_client.c struct iavf_adapter *adapter = ldev->vf; vf 204 drivers/net/ethernet/intel/iavf/iavf_client.c cinst->lan_info.vf = (void *)adapter; vf 299 drivers/net/ethernet/intel/iavf/iavf_client.c if (ldev->vf == adapter) { vf 309 drivers/net/ethernet/intel/iavf/iavf_client.c ldev->vf = adapter; vf 339 drivers/net/ethernet/intel/iavf/iavf_client.c if (ldev->vf == adapter) { vf 368 drivers/net/ethernet/intel/iavf/iavf_client.c adapter = ldev->vf; vf 402 drivers/net/ethernet/intel/iavf/iavf_client.c adapter = ldev->vf; vf 422 drivers/net/ethernet/intel/iavf/iavf_client.c struct iavf_adapter *adapter = ldev->vf; vf 450 drivers/net/ethernet/intel/iavf/iavf_client.c struct iavf_adapter *adapter = ldev->vf; vf 93 drivers/net/ethernet/intel/iavf/iavf_client.h void *vf; /* cast to iavf_adapter */ vf 2699 drivers/net/ethernet/intel/iavf/iavf_main.c struct virtchnl_filter *vf = &filter->f; vf 2739 drivers/net/ethernet/intel/iavf/iavf_main.c vf->flow_type = VIRTCHNL_TCP_V6_FLOW; vf 2779 drivers/net/ethernet/intel/iavf/iavf_main.c vf->mask.tcp_spec.dst_mac[i] |= 0xff; vf 2780 drivers/net/ethernet/intel/iavf/iavf_main.c ether_addr_copy(vf->data.tcp_spec.dst_mac, vf 2789 drivers/net/ethernet/intel/iavf/iavf_main.c vf->mask.tcp_spec.src_mac[i] |= 0xff; vf 2790 drivers/net/ethernet/intel/iavf/iavf_main.c ether_addr_copy(vf->data.tcp_spec.src_mac, vf 2808 drivers/net/ethernet/intel/iavf/iavf_main.c vf->mask.tcp_spec.vlan_id |= cpu_to_be16(0xffff); vf 2809 drivers/net/ethernet/intel/iavf/iavf_main.c vf->data.tcp_spec.vlan_id = cpu_to_be16(match.key->vlan_id); vf 2848 drivers/net/ethernet/intel/iavf/iavf_main.c vf->mask.tcp_spec.dst_ip[0] |= cpu_to_be32(0xffffffff); vf 2849 drivers/net/ethernet/intel/iavf/iavf_main.c vf->data.tcp_spec.dst_ip[0] = match.key->dst; vf 2852 drivers/net/ethernet/intel/iavf/iavf_main.c vf->mask.tcp_spec.src_ip[0] |= cpu_to_be32(0xffffffff); vf 2853 drivers/net/ethernet/intel/iavf/iavf_main.c vf->data.tcp_spec.src_ip[0] = match.key->src; vf 2883 drivers/net/ethernet/intel/iavf/iavf_main.c vf->mask.tcp_spec.dst_ip[i] |= cpu_to_be32(0xffffffff); vf 2884 drivers/net/ethernet/intel/iavf/iavf_main.c memcpy(&vf->data.tcp_spec.dst_ip, &match.key->dst.s6_addr32, vf 2885 drivers/net/ethernet/intel/iavf/iavf_main.c sizeof(vf->data.tcp_spec.dst_ip)); vf 2887 drivers/net/ethernet/intel/iavf/iavf_main.c vf->mask.tcp_spec.src_ip[i] |= cpu_to_be32(0xffffffff); vf 2888 drivers/net/ethernet/intel/iavf/iavf_main.c memcpy(&vf->data.tcp_spec.src_ip, &match.key->src.s6_addr32, vf 2889 drivers/net/ethernet/intel/iavf/iavf_main.c sizeof(vf->data.tcp_spec.src_ip)); vf 2915 drivers/net/ethernet/intel/iavf/iavf_main.c vf->mask.tcp_spec.dst_port |= cpu_to_be16(0xffff); vf 2916 drivers/net/ethernet/intel/iavf/iavf_main.c vf->data.tcp_spec.dst_port = match.key->dst; vf 2920 drivers/net/ethernet/intel/iavf/iavf_main.c vf->mask.tcp_spec.src_port |= cpu_to_be16(0xffff); vf 2921 drivers/net/ethernet/intel/iavf/iavf_main.c vf->data.tcp_spec.src_port = match.key->src; vf 2924 drivers/net/ethernet/intel/iavf/iavf_main.c vf->field_flags = field_flags; vf 334 drivers/net/ethernet/intel/ice/ice.h struct ice_vf *vf; vf 285 drivers/net/ethernet/intel/ice/ice_ethtool.c struct ice_vf *vf = pf->vf; vf 288 drivers/net/ethernet/intel/ice/ice_ethtool.c for (i = 0; i < pf->num_alloc_vfs; i++, vf++) vf 289 drivers/net/ethernet/intel/ice/ice_ethtool.c if (test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) vf 339 drivers/net/ethernet/intel/ice/ice_lib.c struct ice_vf *vf = NULL; vf 363 drivers/net/ethernet/intel/ice/ice_lib.c vf = &pf->vf[vsi->vf_id]; vf 364 drivers/net/ethernet/intel/ice/ice_lib.c vsi->alloc_txq = vf->num_vf_qs; vf 365 drivers/net/ethernet/intel/ice/ice_lib.c vsi->alloc_rxq = vf->num_vf_qs; vf 1069 drivers/net/ethernet/intel/ice/ice_lib.c if (vsi->type == ICE_VSI_VF && pf->vf[vsi->vf_id].spoofchk) { vf 2389 drivers/net/ethernet/intel/ice/ice_lib.c struct ice_vf *vf = &vsi->back->vf[vsi->vf_id]; vf 2391 drivers/net/ethernet/intel/ice/ice_lib.c q_vector->reg_idx = ice_calc_vf_reg_idx(vf, q_vector); vf 3040 drivers/net/ethernet/intel/ice/ice_lib.c struct ice_vf *vf = NULL; vf 3050 drivers/net/ethernet/intel/ice/ice_lib.c vf = &pf->vf[vsi->vf_id]; vf 3072 drivers/net/ethernet/intel/ice/ice_lib.c ice_vsi_set_num_qs(vsi, vf->vf_id); vf 504 drivers/net/ethernet/intel/ice/ice_main.c ice_set_vf_state_qs_dis(&pf->vf[i]); vf 1320 drivers/net/ethernet/intel/ice/ice_main.c struct ice_vf *vf = &pf->vf[i]; vf 1357 drivers/net/ethernet/intel/ice/ice_main.c vf->num_mdd_events++; vf 1358 drivers/net/ethernet/intel/ice/ice_main.c if (vf->num_mdd_events && vf 1359 drivers/net/ethernet/intel/ice/ice_main.c vf->num_mdd_events <= ICE_MDD_EVENTS_THRESHOLD) vf 1362 drivers/net/ethernet/intel/ice/ice_main.c i, vf->num_mdd_events); vf 51 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf = pf->vf; vf 54 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c for (i = 0; i < pf->num_alloc_vfs; i++, vf++) { vf 56 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_INIT, vf->vf_states) && vf 57 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c !test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) vf 63 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_aq_send_msg_to_vf(hw, vf->vf_id, v_opcode, v_retval, msg, vf 76 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_set_pfe_link(struct ice_vf *vf, struct virtchnl_pf_event *pfe, vf 79 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_CAP_ADV_LINK_SPEED) { vf 100 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_set_pfe_link_forced(struct ice_vf *vf, struct virtchnl_pf_event *pfe, vf 110 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_set_pfe_link(vf, pfe, link_speed, link_up); vf 119 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_vc_notify_vf_link_state(struct ice_vf *vf) vf 123 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 133 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!vf->num_qs_ena) vf 134 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_set_pfe_link(vf, &pfe, ICE_AQ_LINK_SPEED_UNKNOWN, false); vf 135 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c else if (vf->link_forced) vf 136 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_set_pfe_link_forced(vf, &pfe, vf->link_up); vf 138 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_set_pfe_link(vf, &pfe, ls->link_speed, ls->link_info & vf 141 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_aq_send_msg_to_vf(hw, vf->vf_id, VIRTCHNL_OP_EVENT, vf 150 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_free_vf_res(struct ice_vf *vf) vf 152 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 158 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(ICE_VF_STATE_INIT, vf->vf_states); vf 161 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->lan_vsi_idx) { vf 162 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vsi_release(pf->vsi[vf->lan_vsi_idx]); vf 163 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->lan_vsi_idx = 0; vf 164 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->lan_vsi_num = 0; vf 165 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_mac = 0; vf 168 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c last_vector_idx = vf->first_vector_idx + pf->num_vf_msix - 1; vf 170 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c for (i = vf->first_vector_idx; i <= last_vector_idx; i++) { vf 175 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(ICE_VF_STATE_MC_PROMISC, vf->vf_states); vf 176 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(ICE_VF_STATE_UC_PROMISC, vf->vf_states); vf 183 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_dis_vf_mappings(struct ice_vf *vf) vf 185 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 191 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 193 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPINT_ALLOC(vf->vf_id), 0); vf 194 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPINT_ALLOC_PCI(vf->vf_id), 0); vf 196 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c first = vf->first_vector_idx; vf 209 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPLAN_TX_QBASE(vf->vf_id), 0); vf 215 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPLAN_RX_QBASE(vf->vf_id), 0); vf 261 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c void ice_set_vf_state_qs_dis(struct ice_vf *vf) vf 264 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c bitmap_zero(vf->txq_ena, ICE_MAX_BASE_QS_PER_VF); vf 265 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c bitmap_zero(vf->rxq_ena, ICE_MAX_BASE_QS_PER_VF); vf 266 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_qs_ena = 0; vf 267 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(ICE_VF_STATE_QS_ENA, vf->vf_states); vf 274 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_dis_vf_qs(struct ice_vf *vf) vf 276 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 279 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 281 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vsi_stop_lan_tx_rings(vsi, ICE_NO_RESET, vf->vf_id); vf 283 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_set_vf_state_qs_dis(vf); vf 295 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!pf->vf) vf 303 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(ICE_VF_STATE_QS_ENA, pf->vf[i].vf_states)) vf 304 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_dis_vf_qs(&pf->vf[i]); vf 319 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(ICE_VF_STATE_INIT, pf->vf[i].vf_states)) { vf 321 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_dis_vf_mappings(&pf->vf[i]); vf 322 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set_bit(ICE_VF_STATE_DIS, pf->vf[i].vf_states); vf 323 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_free_vf_res(&pf->vf[i]); vf 331 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c devm_kfree(&pf->pdev->dev, pf->vf); vf 332 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c pf->vf = NULL; vf 366 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_trigger_vf_reset(struct ice_vf *vf, bool is_vflr, bool is_pfr) vf 368 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 374 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf_abs_id = vf->vf_id + hw->func_caps.vf_base_id; vf 377 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(ICE_VF_STATE_ACTIVE, vf->vf_states); vf 385 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(ICE_VF_STATE_INIT, vf->vf_states); vf 400 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c reg = rd32(hw, VPGEN_VFRTRIG(vf->vf_id)); vf 402 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPGEN_VFRTRIG(vf->vf_id), reg); vf 419 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c "VF %d PCI transactions stuck\n", vf->vf_id); vf 518 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_calc_vf_first_vector_idx(struct ice_pf *pf, struct ice_vf *vf) vf 520 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return pf->sriov_base_vector + vf->vf_id * pf->num_vf_msix; vf 529 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_alloc_vsi_res(struct ice_vf *vf) vf 531 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 538 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->first_vector_idx = ice_calc_vf_first_vector_idx(pf, vf); vf 540 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = ice_vf_vsi_setup(pf, pf->hw.port_info, vf->vf_id); vf 546 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->lan_vsi_idx = vsi->idx; vf 547 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->lan_vsi_num = vsi->vsi_num; vf 550 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->port_vlan_id) { vf 551 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vsi_manage_pvid(vsi, vf->port_vlan_id, true); vf 552 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vsi_add_vlan(vsi, vf->port_vlan_id & ICE_VLAN_M); vf 561 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (is_valid_ether_addr(vf->dflt_lan_addr.addr)) { vf 563 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->dflt_lan_addr.addr); vf 573 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_mac = 1; vf 590 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_alloc_vf_res(struct ice_vf *vf) vf 592 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 602 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->num_req_qs && vf->num_req_qs <= tx_rx_queue_left && vf 603 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_req_qs != vf->num_vf_qs) vf 604 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_vf_qs = vf->num_req_qs; vf 607 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c status = ice_alloc_vsi_res(vf); vf 611 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->trusted) vf 612 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set_bit(ICE_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps); vf 614 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(ICE_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps); vf 617 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set_bit(ICE_VF_STATE_INIT, vf->vf_states); vf 622 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_free_vf_res(vf); vf 633 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_ena_vf_mappings(struct ice_vf *vf) vf 636 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 643 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 644 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c first = vf->first_vector_idx; vf 648 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c abs_vf_id = vf->vf_id + hw->func_caps.vf_base_id; vf 654 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPINT_ALLOC(vf->vf_id), reg); vf 660 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPINT_ALLOC_PCI(vf->vf_id), reg); vf 675 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPLAN_TXQ_MAPENA(vf->vf_id), VPLAN_TXQ_MAPENA_TX_ENA_M); vf 687 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPLAN_TX_QBASE(vf->vf_id), reg); vf 694 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPLAN_RXQ_MAPENA(vf->vf_id), VPLAN_RXQ_MAPENA_RX_ENA_M); vf 706 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPLAN_RX_QBASE(vf->vf_id), reg); vf 757 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c int ice_calc_vf_reg_idx(struct ice_vf *vf, struct ice_q_vector *q_vector) vf 761 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!vf || !q_vector) vf 764 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c pf = vf->pf; vf 767 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return pf->sriov_base_vector + pf->num_vf_msix * vf->vf_id + vf 934 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_cleanup_and_realloc_vf(struct ice_vf *vf) vf 936 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 955 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c reg = rd32(hw, VPGEN_VFRTRIG(vf->vf_id)); vf 957 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VPGEN_VFRTRIG(vf->vf_id), reg); vf 960 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_alloc_vf_res(vf)) { vf 961 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_ena_vf_mappings(vf); vf 962 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set_bit(ICE_VF_STATE_ACTIVE, vf->vf_states); vf 963 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(ICE_VF_STATE_DIS, vf->vf_states); vf 964 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_vlan = 0; vf 971 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c wr32(hw, VFGEN_RSTAT(vf->vf_id), VIRTCHNL_VFR_VFACTIVE); vf 985 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vf_set_vsi_promisc(struct ice_vf *vf, struct ice_vsi *vsi, u8 promisc_m, vf 988 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 993 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->num_vlan) { vf 996 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c } else if (vf->port_vlan_id) { vf 999 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->port_vlan_id); vf 1002 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->port_vlan_id); vf 1041 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf = &pf->vf[v]; vf 1043 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_vf_qs = pf->num_vf_qps; vf 1046 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id, vf->num_vf_qs); vf 1047 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_cleanup_and_realloc_vf(vf); vf 1071 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf; vf 1084 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_trigger_vf_reset(&pf->vf[v], is_vflr, true); vf 1089 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[v]; vf 1090 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1091 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(ICE_VF_STATE_QS_ENA, vf->vf_states)) vf 1092 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_dis_vf_qs(vf); vf 1094 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c NULL, ICE_VF_RESET, vf->vf_id, NULL); vf 1109 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[v]; vf 1110 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c reg = rd32(hw, VPGEN_VFRSTAT(vf->vf_id)); vf 1132 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[v]; vf 1134 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_free_vf_res(vf); vf 1141 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_vf_qs = 0; vf 1161 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static bool ice_reset_vf(struct ice_vf *vf, bool is_vflr) vf 1163 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 1181 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_and_set_bit(ICE_VF_STATE_DIS, vf->vf_states)) vf 1184 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_trigger_vf_reset(vf, is_vflr, false); vf 1186 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1188 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(ICE_VF_STATE_QS_ENA, vf->vf_states)) vf 1189 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_dis_vf_qs(vf); vf 1195 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c NULL, ICE_VF_RESET, vf->vf_id, NULL); vf 1206 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c reg = rd32(hw, VPGEN_VFRSTAT(vf->vf_id)); vf 1221 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id); vf 1226 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(ICE_VF_STATE_UC_PROMISC, vf->vf_states) || vf 1227 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c test_bit(ICE_VF_STATE_MC_PROMISC, vf->vf_states)) { vf 1228 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->port_vlan_id || vf->num_vlan) vf 1233 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1234 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (ice_vf_set_vsi_promisc(vf, vsi, promisc_m, true)) vf 1239 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_free_vf_res(vf); vf 1241 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_cleanup_and_realloc_vf(vf); vf 1257 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_notify_vf_link_state(&pf->vf[i]); vf 1283 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_vc_notify_vf_reset(struct ice_vf *vf) vf 1288 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!vf || vf->vf_id >= vf->pf->num_alloc_vfs) vf 1294 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if ((!test_bit(ICE_VF_STATE_INIT, vf->vf_states) && vf 1295 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c !test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) || vf 1296 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c test_bit(ICE_VF_STATE_DIS, vf->vf_states)) vf 1301 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_aq_send_msg_to_vf(&vf->pf->hw, vf->vf_id, VIRTCHNL_OP_EVENT, vf 1335 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c pf->vf = vfs; vf 1358 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c pf->vf = NULL; vf 1488 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf = &pf->vf[vf_id]; vf 1497 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_reset_vf(vf, true); vf 1507 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_vc_dis_vf(struct ice_vf *vf) vf 1509 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_notify_vf_reset(vf); vf 1510 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_reset_vf(vf, false); vf 1524 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_send_msg_to_vf(struct ice_vf *vf, u32 v_opcode, vf 1531 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!vf || vf->vf_id >= vf->pf->num_alloc_vfs) vf 1534 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c pf = vf->pf; vf 1538 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_inval_msgs++; vf 1540 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id, v_opcode, v_retval); vf 1541 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->num_inval_msgs > ICE_DFLT_NUM_INVAL_MSGS_ALLOWED) { vf 1544 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id); vf 1546 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set_bit(ICE_VF_STATE_DIS, vf->vf_states); vf 1550 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_valid_msgs++; vf 1552 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_inval_msgs = 0; vf 1555 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c aq_ret = ice_aq_send_msg_to_vf(&pf->hw, vf->vf_id, v_opcode, v_retval, vf 1560 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id, aq_ret, pf->hw.mailboxq.sq_last_status); vf 1574 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_get_ver_msg(struct ice_vf *vf, u8 *msg) vf 1580 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_ver = *(struct virtchnl_version_info *)msg; vf 1582 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (VF_IS_V10(&vf->vf_ver)) vf 1585 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_VERSION, vf 1597 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_get_vf_res_msg(struct ice_vf *vf, u8 *msg) vf 1601 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 1606 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_INIT, vf->vf_states)) { vf 1619 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (VF_IS_V11(&vf->vf_ver)) vf 1620 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->driver_caps = *(u32 *)msg; vf 1622 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->driver_caps = VIRTCHNL_VF_OFFLOAD_L2 | vf 1627 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1636 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_RSS_PF) { vf 1639 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_RSS_AQ) vf 1645 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_RSS_PCTYPE_V2) vf 1648 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_ENCAP) vf 1651 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_ENCAP_CSUM) vf 1654 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_RX_POLLING) vf 1657 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_WB_ON_ITR) vf 1660 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_OFFLOAD_REQ_QUEUES) vf 1663 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->driver_caps & VIRTCHNL_VF_CAP_ADV_LINK_SPEED) vf 1673 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vfres->vsi_res[0].vsi_id = vf->lan_vsi_num; vf 1677 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->dflt_lan_addr.addr); vf 1679 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set_bit(ICE_VF_STATE_ACTIVE, vf->vf_states); vf 1683 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ret = ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_GET_VF_RESOURCES, v_ret, vf 1698 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static void ice_vc_reset_vf_msg(struct ice_vf *vf) vf 1700 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) vf 1701 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_reset_vf(vf, false); vf 1729 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static bool ice_vc_isvalid_vsi_id(struct ice_vf *vf, u16 vsi_id) vf 1731 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 1736 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return (vsi && (vsi->vf_id == vf->vf_id)); vf 1747 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static bool ice_vc_isvalid_q_id(struct ice_vf *vf, u16 vsi_id, u8 qid) vf 1749 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vsi *vsi = ice_find_vsi_from_id(vf->pf, vsi_id); vf 1776 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_config_rss_key(struct ice_vf *vf, u8 *msg) vf 1781 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 1784 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) { vf 1789 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_vsi_id(vf, vrk->vsi_id)) { vf 1799 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_FLAG_RSS_ENA, vf->pf->flags)) { vf 1804 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1813 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_CONFIG_RSS_KEY, v_ret, vf 1824 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_config_rss_lut(struct ice_vf *vf, u8 *msg) vf 1828 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 1831 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) { vf 1836 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_vsi_id(vf, vrl->vsi_id)) { vf 1846 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_FLAG_RSS_ENA, vf->pf->flags)) { vf 1851 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1860 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_CONFIG_RSS_LUT, v_ret, vf 1871 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_get_stats_msg(struct ice_vf *vf, u8 *msg) vf 1877 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 1880 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) { vf 1885 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_vsi_id(vf, vqs->vsi_id)) { vf 1890 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1902 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_GET_STATS, v_ret, vf 1913 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_ena_qs_msg(struct ice_vf *vf, u8 *msg) vf 1918 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 1923 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) { vf 1928 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_vsi_id(vf, vqs->vsi_id)) { vf 1944 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1956 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_q_id(vf, vqs->vsi_id, vf_q_id)) { vf 1962 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(vf_q_id, vf->rxq_ena)) vf 1973 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set_bit(vf_q_id, vf->rxq_ena); vf 1974 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_qs_ena++; vf 1977 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 1980 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_q_id(vf, vqs->vsi_id, vf_q_id)) { vf 1986 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(vf_q_id, vf->txq_ena)) vf 1989 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set_bit(vf_q_id, vf->txq_ena); vf 1990 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_qs_ena++; vf 1995 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set_bit(ICE_VF_STATE_QS_ENA, vf->vf_states); vf 1999 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_ENABLE_QUEUES, v_ret, vf 2011 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_dis_qs_msg(struct ice_vf *vf, u8 *msg) vf 2016 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 2021 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states) && vf 2022 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c !test_bit(ICE_VF_STATE_QS_ENA, vf->vf_states)) { vf 2027 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_vsi_id(vf, vqs->vsi_id)) { vf 2043 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2056 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_q_id(vf, vqs->vsi_id, vf_q_id)) { vf 2062 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(vf_q_id, vf->txq_ena)) vf 2067 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (ice_vsi_stop_tx_ring(vsi, ICE_NO_RESET, vf->vf_id, vf 2077 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(vf_q_id, vf->txq_ena); vf 2078 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_qs_ena--; vf 2086 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_q_id(vf, vqs->vsi_id, vf_q_id)) { vf 2092 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(vf_q_id, vf->rxq_ena)) vf 2104 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(vf_q_id, vf->rxq_ena); vf 2105 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_qs_ena--; vf 2110 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (v_ret == VIRTCHNL_STATUS_SUCCESS && !vf->num_qs_ena) vf 2111 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c clear_bit(ICE_VF_STATE_QS_ENA, vf->vf_states); vf 2115 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_DISABLE_QUEUES, v_ret, vf 2126 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_cfg_irq_map_msg(struct ice_vf *vf, u8 *msg) vf 2132 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 2145 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states) || vf 2152 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2167 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c .num_msix_vectors) || !ice_vc_isvalid_vsi_id(vf, vsi_id) || vf 2190 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_q_id(vf, vsi_id, vsi_q_id)) { vf 2204 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_q_id(vf, vsi_id, vsi_q_id)) { vf 2218 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_CONFIG_IRQ_MAP, v_ret, vf 2229 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_cfg_qs_msg(struct ice_vf *vf, u8 *msg) vf 2236 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 2240 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) { vf 2245 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_vsi_id(vf, qci->vsi_id)) { vf 2250 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2260 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id, min_t(u16, vsi->alloc_txq, vsi->alloc_rxq)); vf 2273 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c !ice_vc_isvalid_q_id(vf, qci->vsi_id, qpi->txq.queue_id)) { vf 2322 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_CONFIG_VSI_QUEUES, v_ret, vf 2330 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static bool ice_is_vf_trusted(struct ice_vf *vf) vf 2332 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return test_bit(ICE_VIRTCHNL_VF_CAP_PRIVILEGE, &vf->vf_caps); vf 2341 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static bool ice_can_vf_change_mac(struct ice_vf *vf) vf 2347 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->pf_set_mac && !ice_is_vf_trusted(vf)) vf 2362 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_handle_mac_addr_msg(struct ice_vf *vf, u8 *msg, bool set) vf 2367 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 2379 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states) || vf 2380 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c !ice_vc_isvalid_vsi_id(vf, al->vsi_id)) { vf 2385 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (set && !ice_is_vf_trusted(vf) && vf 2386 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c (vf->num_mac + al->num_elements) > ICE_MAX_MACADDR_PER_VF) { vf 2389 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id); vf 2397 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2406 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (ether_addr_equal(maddr, vf->dflt_lan_addr.addr) || vf 2414 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c maddr, vf->vf_id); vf 2420 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c maddr, vf->vf_id); vf 2429 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c maddr, vf->vf_id); vf 2435 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c !ice_can_vf_change_mac(vf)) { vf 2438 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id); vf 2449 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set ? "add" : "remove", maddr, vf->vf_id, vf 2454 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c set ? "add" : "remove", vf->vf_id, status); vf 2464 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_mac += mac_count; vf 2466 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_mac -= mac_count; vf 2470 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, vc_op, v_ret, NULL, 0); vf 2480 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_add_mac_addr_msg(struct ice_vf *vf, u8 *msg) vf 2482 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_handle_mac_addr_msg(vf, msg, true); vf 2492 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_del_mac_addr_msg(struct ice_vf *vf, u8 *msg) vf 2494 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_handle_mac_addr_msg(vf, msg, false); vf 2507 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_request_qs_msg(struct ice_vf *vf, u8 *msg) vf 2513 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 2518 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) { vf 2523 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c cur_queues = vf->num_vf_qs; vf 2530 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id); vf 2534 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id, ICE_MAX_BASE_QS_PER_VF); vf 2540 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id, req_queues - cur_queues, tx_rx_queue_left); vf 2545 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_req_qs = req_queues; vf 2546 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_dis_vf(vf); vf 2549 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id, req_queues); vf 2555 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_REQUEST_QUEUES, vf 2577 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf; vf 2596 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 2597 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2598 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_INIT, vf->vf_states)) { vf 2637 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->port_vlan_id = le16_to_cpu(vsi->info.pvid); vf 2651 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_process_vlan_msg(struct ice_vf *vf, u8 *msg, bool add_v) vf 2656 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 2664 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) { vf 2669 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_vc_isvalid_vsi_id(vf, vfl->vsi_id)) { vf 2674 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (add_v && !ice_is_vf_trusted(vf) && vf 2675 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_vlan >= ICE_MAX_VLAN_PER_VF) { vf 2678 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id); vf 2695 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2714 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(ICE_VF_STATE_UC_PROMISC, vf->vf_states) || vf 2715 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c test_bit(ICE_VF_STATE_MC_PROMISC, vf->vf_states)) vf 2722 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!ice_is_vf_trusted(vf) && vf 2723 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_vlan >= ICE_MAX_VLAN_PER_VF) { vf 2726 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->vf_id); vf 2739 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_vlan++; vf 2775 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c num_vf_vlan = vf->num_vlan; vf 2787 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->num_vlan--; vf 2789 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!vf->num_vlan) vf 2806 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_ADD_VLAN, v_ret, vf 2809 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_DEL_VLAN, v_ret, vf 2820 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_add_vlan_msg(struct ice_vf *vf, u8 *msg) vf 2822 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_process_vlan_msg(vf, msg, true); vf 2832 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_remove_vlan_msg(struct ice_vf *vf, u8 *msg) vf 2834 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_process_vlan_msg(vf, msg, false); vf 2843 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_ena_vlan_stripping(struct ice_vf *vf) vf 2846 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 2849 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) { vf 2854 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2859 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_ENABLE_VLAN_STRIPPING, vf 2869 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c static int ice_vc_dis_vlan_stripping(struct ice_vf *vf) vf 2872 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_pf *pf = vf->pf; vf 2875 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_ACTIVE, vf->vf_states)) { vf 2880 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 2890 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c return ice_vc_send_msg_to_vf(vf, VIRTCHNL_OP_DISABLE_VLAN_STRIPPING, vf 2908 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf = NULL; vf 2916 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 2919 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (test_bit(ICE_VF_STATE_DIS, vf->vf_states)) { vf 2925 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = virtchnl_vc_validate_vf_msg(&vf->vf_ver, v_opcode, msg, msglen); vf 2935 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_send_msg_to_vf(vf, v_opcode, VIRTCHNL_STATUS_ERR_PARAM, vf 2944 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_get_ver_msg(vf, msg); vf 2947 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_get_vf_res_msg(vf, msg); vf 2948 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_notify_vf_link_state(vf); vf 2951 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_reset_vf_msg(vf); vf 2954 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_add_mac_addr_msg(vf, msg); vf 2957 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_del_mac_addr_msg(vf, msg); vf 2960 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_cfg_qs_msg(vf, msg); vf 2963 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_ena_qs_msg(vf, msg); vf 2964 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_notify_vf_link_state(vf); vf 2967 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_dis_qs_msg(vf, msg); vf 2970 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_request_qs_msg(vf, msg); vf 2973 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_cfg_irq_map_msg(vf, msg); vf 2976 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_config_rss_key(vf, msg); vf 2979 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_config_rss_lut(vf, msg); vf 2982 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_get_stats_msg(vf, msg); vf 2985 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_add_vlan_msg(vf, msg); vf 2988 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_remove_vlan_msg(vf, msg); vf 2991 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_ena_vlan_stripping(vf); vf 2994 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_dis_vlan_stripping(vf); vf 3000 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c err = ice_vc_send_msg_to_vf(vf, v_opcode, vf 3029 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf; vf 3037 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 3038 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vsi = pf->vsi[vf->lan_vsi_idx]; vf 3040 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_INIT, vf->vf_states)) { vf 3045 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ivi->vf = vf_id; vf 3046 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ether_addr_copy(ivi->mac, vf->dflt_lan_addr.addr); vf 3053 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ivi->trusted = vf->trusted; vf 3054 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ivi->spoofchk = vf->spoofchk; vf 3055 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!vf->link_forced) vf 3057 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c else if (vf->link_up) vf 3061 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ivi->max_tx_rate = vf->tx_rate; vf 3081 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf; vf 3090 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 3091 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_INIT, vf->vf_states)) { vf 3096 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (ena == vf->spoofchk) { vf 3121 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->spoofchk = ena; vf 3142 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf; vf 3151 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 3152 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_INIT, vf->vf_states)) { vf 3167 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ether_addr_copy(vf->dflt_lan_addr.addr, mac); vf 3168 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->pf_set_mac = true; vf 3173 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_dis_vf(vf); vf 3190 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf; vf 3198 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 3199 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_INIT, vf->vf_states)) { vf 3205 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (trusted == vf->trusted) vf 3208 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->trusted = trusted; vf 3209 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_vc_dis_vf(vf); vf 3230 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c struct ice_vf *vf; vf 3238 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf = &pf->vf[vf_id]; vf 3242 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (!test_bit(ICE_VF_STATE_INIT, vf->vf_states)) { vf 3252 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->link_forced = false; vf 3253 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->link_up = ls->link_info & ICE_AQ_LINK_UP; vf 3256 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->link_forced = true; vf 3257 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->link_up = true; vf 3260 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->link_forced = true; vf 3261 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c vf->link_up = false; vf 3267 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c if (vf->link_forced) vf 3268 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_set_pfe_link_forced(vf, &pfe, vf->link_up); vf 3270 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_set_pfe_link(vf, &pfe, ls->link_speed, vf->link_up); vf 3273 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c ice_aq_send_msg_to_vf(hw, vf->vf_id, VIRTCHNL_OP_EVENT, vf 121 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.h int ice_calc_vf_reg_idx(struct ice_vf *vf, struct ice_q_vector *q_vector); vf 123 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.h void ice_set_vf_state_qs_dis(struct ice_vf *vf); vf 130 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.h #define ice_set_vf_state_qs_dis(vf) do {} while (0) vf 191 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.h ice_calc_vf_reg_idx(struct ice_vf __always_unused *vf, vf 100 drivers/net/ethernet/intel/igb/igb.h int vf; vf 167 drivers/net/ethernet/intel/igb/igb_main.c static int igb_ndo_set_vf_mac(struct net_device *netdev, int vf, u8 *mac); vf 169 drivers/net/ethernet/intel/igb/igb_main.c int vf, u16 vlan, u8 qos, __be16 vlan_proto); vf 171 drivers/net/ethernet/intel/igb/igb_main.c static int igb_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, vf 173 drivers/net/ethernet/intel/igb/igb_main.c static int igb_ndo_set_vf_trust(struct net_device *netdev, int vf, vf 175 drivers/net/ethernet/intel/igb/igb_main.c static int igb_ndo_get_vf_config(struct net_device *netdev, int vf, vf 182 drivers/net/ethernet/intel/igb/igb_main.c static int igb_vf_configure(struct igb_adapter *adapter, int vf); vf 3566 drivers/net/ethernet/intel/igb/igb_main.c mac_list->vf = -1; vf 6719 drivers/net/ethernet/intel/igb/igb_main.c static int igb_vf_configure(struct igb_adapter *adapter, int vf) vf 6724 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_mac(adapter, vf, mac_addr); vf 6727 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].spoofchk_enabled = true; vf 6730 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].trusted = false; vf 6750 drivers/net/ethernet/intel/igb/igb_main.c static int igb_set_vf_promisc(struct igb_adapter *adapter, u32 *msgbuf, u32 vf) vf 6753 drivers/net/ethernet/intel/igb/igb_main.c u32 vmolr = rd32(E1000_VMOLR(vf)); vf 6754 drivers/net/ethernet/intel/igb/igb_main.c struct vf_data_storage *vf_data = &adapter->vf_data[vf]; vf 6780 drivers/net/ethernet/intel/igb/igb_main.c wr32(E1000_VMOLR(vf), vmolr); vf 6790 drivers/net/ethernet/intel/igb/igb_main.c u32 *msgbuf, u32 vf) vf 6794 drivers/net/ethernet/intel/igb/igb_main.c struct vf_data_storage *vf_data = &adapter->vf_data[vf]; vf 6842 drivers/net/ethernet/intel/igb/igb_main.c static void igb_clear_vf_vfta(struct igb_adapter *adapter, u32 vf) vf 6849 drivers/net/ethernet/intel/igb/igb_main.c vlvf_mask = BIT(E1000_VLVF_POOLSEL_SHIFT + vf); vf 6940 drivers/net/ethernet/intel/igb/igb_main.c bool add, u32 vf) vf 6957 drivers/net/ethernet/intel/igb/igb_main.c err = igb_vfta_set(hw, vid, vf, add, false); vf 6973 drivers/net/ethernet/intel/igb/igb_main.c static void igb_set_vmvir(struct igb_adapter *adapter, u32 vid, u32 vf) vf 6978 drivers/net/ethernet/intel/igb/igb_main.c wr32(E1000_VMVIR(vf), (vid | E1000_VMVIR_VLANA_DEFAULT)); vf 6980 drivers/net/ethernet/intel/igb/igb_main.c wr32(E1000_VMVIR(vf), 0); vf 6983 drivers/net/ethernet/intel/igb/igb_main.c static int igb_enable_port_vlan(struct igb_adapter *adapter, int vf, vf 6988 drivers/net/ethernet/intel/igb/igb_main.c err = igb_set_vf_vlan(adapter, vlan, true, vf); vf 6992 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vmvir(adapter, vlan | (qos << VLAN_PRIO_SHIFT), vf); vf 6993 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vmolr(adapter, vf, !vlan); vf 6996 drivers/net/ethernet/intel/igb/igb_main.c if (vlan != adapter->vf_data[vf].pf_vlan) vf 6997 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_vlan(adapter, adapter->vf_data[vf].pf_vlan, vf 6998 drivers/net/ethernet/intel/igb/igb_main.c false, vf); vf 7000 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].pf_vlan = vlan; vf 7001 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].pf_qos = qos; vf 7002 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_vlan_strip(adapter, vf, true); vf 7004 drivers/net/ethernet/intel/igb/igb_main.c "Setting VLAN %d, QOS 0x%x on VF %d\n", vlan, qos, vf); vf 7015 drivers/net/ethernet/intel/igb/igb_main.c static int igb_disable_port_vlan(struct igb_adapter *adapter, int vf) vf 7018 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_vlan(adapter, 0, true, vf); vf 7020 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vmvir(adapter, 0, vf); vf 7021 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vmolr(adapter, vf, true); vf 7024 drivers/net/ethernet/intel/igb/igb_main.c if (adapter->vf_data[vf].pf_vlan) vf 7025 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_vlan(adapter, adapter->vf_data[vf].pf_vlan, vf 7026 drivers/net/ethernet/intel/igb/igb_main.c false, vf); vf 7028 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].pf_vlan = 0; vf 7029 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].pf_qos = 0; vf 7030 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_vlan_strip(adapter, vf, false); vf 7035 drivers/net/ethernet/intel/igb/igb_main.c static int igb_ndo_set_vf_vlan(struct net_device *netdev, int vf, vf 7040 drivers/net/ethernet/intel/igb/igb_main.c if ((vf >= adapter->vfs_allocated_count) || (vlan > 4095) || (qos > 7)) vf 7046 drivers/net/ethernet/intel/igb/igb_main.c return (vlan || qos) ? igb_enable_port_vlan(adapter, vf, vlan, qos) : vf 7047 drivers/net/ethernet/intel/igb/igb_main.c igb_disable_port_vlan(adapter, vf); vf 7050 drivers/net/ethernet/intel/igb/igb_main.c static int igb_set_vf_vlan_msg(struct igb_adapter *adapter, u32 *msgbuf, u32 vf) vf 7056 drivers/net/ethernet/intel/igb/igb_main.c if (adapter->vf_data[vf].pf_vlan) vf 7063 drivers/net/ethernet/intel/igb/igb_main.c ret = igb_set_vf_vlan(adapter, vid, !!add, vf); vf 7065 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_vlan_strip(adapter, vf, !!vid); vf 7069 drivers/net/ethernet/intel/igb/igb_main.c static inline void igb_vf_reset(struct igb_adapter *adapter, u32 vf) vf 7071 drivers/net/ethernet/intel/igb/igb_main.c struct vf_data_storage *vf_data = &adapter->vf_data[vf]; vf 7078 drivers/net/ethernet/intel/igb/igb_main.c igb_clear_vf_vfta(adapter, vf); vf 7079 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_vlan(adapter, vf_data->pf_vlan, true, vf); vf 7081 drivers/net/ethernet/intel/igb/igb_main.c (vf_data->pf_qos << VLAN_PRIO_SHIFT), vf); vf 7082 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vmolr(adapter, vf, !vf_data->pf_vlan); vf 7083 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_vlan_strip(adapter, vf, !!(vf_data->pf_vlan)); vf 7086 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].num_vf_mc_hashes = 0; vf 7092 drivers/net/ethernet/intel/igb/igb_main.c static void igb_vf_reset_event(struct igb_adapter *adapter, u32 vf) vf 7094 drivers/net/ethernet/intel/igb/igb_main.c unsigned char *vf_mac = adapter->vf_data[vf].vf_mac_addresses; vf 7097 drivers/net/ethernet/intel/igb/igb_main.c if (!(adapter->vf_data[vf].flags & IGB_VF_FLAG_PF_SET_MAC)) vf 7101 drivers/net/ethernet/intel/igb/igb_main.c igb_vf_reset(adapter, vf); vf 7104 drivers/net/ethernet/intel/igb/igb_main.c static void igb_vf_reset_msg(struct igb_adapter *adapter, u32 vf) vf 7107 drivers/net/ethernet/intel/igb/igb_main.c unsigned char *vf_mac = adapter->vf_data[vf].vf_mac_addresses; vf 7112 drivers/net/ethernet/intel/igb/igb_main.c igb_vf_reset(adapter, vf); vf 7115 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_mac(adapter, vf, vf_mac); vf 7119 drivers/net/ethernet/intel/igb/igb_main.c wr32(E1000_VFTE, reg | BIT(vf)); vf 7121 drivers/net/ethernet/intel/igb/igb_main.c wr32(E1000_VFRE, reg | BIT(vf)); vf 7123 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].flags |= IGB_VF_FLAG_CTS; vf 7132 drivers/net/ethernet/intel/igb/igb_main.c igb_write_mbx(hw, msgbuf, 3, vf); vf 7348 drivers/net/ethernet/intel/igb/igb_main.c static int igb_set_vf_mac_filter(struct igb_adapter *adapter, const int vf, vf 7352 drivers/net/ethernet/intel/igb/igb_main.c struct vf_data_storage *vf_data = &adapter->vf_data[vf]; vf 7362 drivers/net/ethernet/intel/igb/igb_main.c if (entry->vf == vf) { vf 7363 drivers/net/ethernet/intel/igb/igb_main.c entry->vf = -1; vf 7365 drivers/net/ethernet/intel/igb/igb_main.c igb_del_mac_filter(adapter, entry->vf_mac, vf); vf 7374 drivers/net/ethernet/intel/igb/igb_main.c vf); vf 7380 drivers/net/ethernet/intel/igb/igb_main.c vf); vf 7393 drivers/net/ethernet/intel/igb/igb_main.c entry->vf = vf; vf 7396 drivers/net/ethernet/intel/igb/igb_main.c ret = igb_add_mac_filter(adapter, addr, vf); vf 7405 drivers/net/ethernet/intel/igb/igb_main.c vf); vf 7415 drivers/net/ethernet/intel/igb/igb_main.c static int igb_set_vf_mac_addr(struct igb_adapter *adapter, u32 *msg, int vf) vf 7418 drivers/net/ethernet/intel/igb/igb_main.c struct vf_data_storage *vf_data = &adapter->vf_data[vf]; vf 7432 drivers/net/ethernet/intel/igb/igb_main.c vf); vf 7439 drivers/net/ethernet/intel/igb/igb_main.c vf); vf 7443 drivers/net/ethernet/intel/igb/igb_main.c ret = igb_set_vf_mac(adapter, vf, addr); vf 7445 drivers/net/ethernet/intel/igb/igb_main.c ret = igb_set_vf_mac_filter(adapter, vf, info, addr); vf 7451 drivers/net/ethernet/intel/igb/igb_main.c static void igb_rcv_ack_from_vf(struct igb_adapter *adapter, u32 vf) vf 7454 drivers/net/ethernet/intel/igb/igb_main.c struct vf_data_storage *vf_data = &adapter->vf_data[vf]; vf 7460 drivers/net/ethernet/intel/igb/igb_main.c igb_write_mbx(hw, &msg, 1, vf); vf 7465 drivers/net/ethernet/intel/igb/igb_main.c static void igb_rcv_msg_from_vf(struct igb_adapter *adapter, u32 vf) vf 7470 drivers/net/ethernet/intel/igb/igb_main.c struct vf_data_storage *vf_data = &adapter->vf_data[vf]; vf 7473 drivers/net/ethernet/intel/igb/igb_main.c retval = igb_read_mbx(hw, msgbuf, E1000_VFMAILBOX_SIZE, vf, false); vf 7493 drivers/net/ethernet/intel/igb/igb_main.c igb_vf_reset_msg(adapter, vf); vf 7506 drivers/net/ethernet/intel/igb/igb_main.c retval = igb_set_vf_mac_addr(adapter, msgbuf, vf); vf 7509 drivers/net/ethernet/intel/igb/igb_main.c retval = igb_set_vf_promisc(adapter, msgbuf, vf); vf 7512 drivers/net/ethernet/intel/igb/igb_main.c retval = igb_set_vf_multicasts(adapter, msgbuf, vf); vf 7515 drivers/net/ethernet/intel/igb/igb_main.c retval = igb_set_vf_rlpml(adapter, msgbuf[1], vf); vf 7522 drivers/net/ethernet/intel/igb/igb_main.c vf); vf 7524 drivers/net/ethernet/intel/igb/igb_main.c retval = igb_set_vf_vlan_msg(adapter, msgbuf, vf); vf 7541 drivers/net/ethernet/intel/igb/igb_main.c igb_write_mbx(hw, msgbuf, 1, vf); vf 7545 drivers/net/ethernet/intel/igb/igb_main.c igb_unlock_mbx(hw, vf); vf 7551 drivers/net/ethernet/intel/igb/igb_main.c u32 vf; vf 7553 drivers/net/ethernet/intel/igb/igb_main.c for (vf = 0; vf < adapter->vfs_allocated_count; vf++) { vf 7555 drivers/net/ethernet/intel/igb/igb_main.c if (!igb_check_for_rst(hw, vf)) vf 7556 drivers/net/ethernet/intel/igb/igb_main.c igb_vf_reset_event(adapter, vf); vf 7559 drivers/net/ethernet/intel/igb/igb_main.c if (!igb_check_for_msg(hw, vf)) vf 7560 drivers/net/ethernet/intel/igb/igb_main.c igb_rcv_msg_from_vf(adapter, vf); vf 7563 drivers/net/ethernet/intel/igb/igb_main.c if (!igb_check_for_ack(hw, vf)) vf 7564 drivers/net/ethernet/intel/igb/igb_main.c igb_rcv_ack_from_vf(adapter, vf); vf 9129 drivers/net/ethernet/intel/igb/igb_main.c int vf, unsigned char *mac_addr) vf 9135 drivers/net/ethernet/intel/igb/igb_main.c int rar_entry = hw->mac.rar_entry_count - (vf + 1); vf 9136 drivers/net/ethernet/intel/igb/igb_main.c unsigned char *vf_mac_addr = adapter->vf_data[vf].vf_mac_addresses; vf 9140 drivers/net/ethernet/intel/igb/igb_main.c adapter->mac_table[rar_entry].queue = vf; vf 9147 drivers/net/ethernet/intel/igb/igb_main.c static int igb_ndo_set_vf_mac(struct net_device *netdev, int vf, u8 *mac) vf 9151 drivers/net/ethernet/intel/igb/igb_main.c if (vf >= adapter->vfs_allocated_count) vf 9161 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].flags &= ~IGB_VF_FLAG_PF_SET_MAC; vf 9164 drivers/net/ethernet/intel/igb/igb_main.c vf); vf 9166 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].flags |= IGB_VF_FLAG_PF_SET_MAC; vf 9168 drivers/net/ethernet/intel/igb/igb_main.c mac, vf); vf 9181 drivers/net/ethernet/intel/igb/igb_main.c return igb_set_vf_mac(adapter, vf, mac); vf 9196 drivers/net/ethernet/intel/igb/igb_main.c static void igb_set_vf_rate_limit(struct e1000_hw *hw, int vf, int tx_rate, vf 9217 drivers/net/ethernet/intel/igb/igb_main.c wr32(E1000_RTTDQSEL, vf); /* vf X uses queue X */ vf 9253 drivers/net/ethernet/intel/igb/igb_main.c static int igb_ndo_set_vf_bw(struct net_device *netdev, int vf, vf 9267 drivers/net/ethernet/intel/igb/igb_main.c if ((vf >= adapter->vfs_allocated_count) || vf 9274 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].tx_rate = (u16)max_tx_rate; vf 9275 drivers/net/ethernet/intel/igb/igb_main.c igb_set_vf_rate_limit(hw, vf, max_tx_rate, actual_link_speed); vf 9280 drivers/net/ethernet/intel/igb/igb_main.c static int igb_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, vf 9290 drivers/net/ethernet/intel/igb/igb_main.c if (vf >= adapter->vfs_allocated_count) vf 9296 drivers/net/ethernet/intel/igb/igb_main.c reg_val |= (BIT(vf) | vf 9297 drivers/net/ethernet/intel/igb/igb_main.c BIT(vf + E1000_DTXSWC_VLAN_SPOOF_SHIFT)); vf 9299 drivers/net/ethernet/intel/igb/igb_main.c reg_val &= ~(BIT(vf) | vf 9300 drivers/net/ethernet/intel/igb/igb_main.c BIT(vf + E1000_DTXSWC_VLAN_SPOOF_SHIFT)); vf 9303 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].spoofchk_enabled = setting; vf 9307 drivers/net/ethernet/intel/igb/igb_main.c static int igb_ndo_set_vf_trust(struct net_device *netdev, int vf, bool setting) vf 9311 drivers/net/ethernet/intel/igb/igb_main.c if (vf >= adapter->vfs_allocated_count) vf 9313 drivers/net/ethernet/intel/igb/igb_main.c if (adapter->vf_data[vf].trusted == setting) vf 9316 drivers/net/ethernet/intel/igb/igb_main.c adapter->vf_data[vf].trusted = setting; vf 9319 drivers/net/ethernet/intel/igb/igb_main.c vf, setting ? "" : "not "); vf 9324 drivers/net/ethernet/intel/igb/igb_main.c int vf, struct ifla_vf_info *ivi) vf 9327 drivers/net/ethernet/intel/igb/igb_main.c if (vf >= adapter->vfs_allocated_count) vf 9329 drivers/net/ethernet/intel/igb/igb_main.c ivi->vf = vf; vf 9330 drivers/net/ethernet/intel/igb/igb_main.c memcpy(&ivi->mac, adapter->vf_data[vf].vf_mac_addresses, ETH_ALEN); vf 9331 drivers/net/ethernet/intel/igb/igb_main.c ivi->max_tx_rate = adapter->vf_data[vf].tx_rate; vf 9333 drivers/net/ethernet/intel/igb/igb_main.c ivi->vlan = adapter->vf_data[vf].pf_vlan; vf 9334 drivers/net/ethernet/intel/igb/igb_main.c ivi->qos = adapter->vf_data[vf].pf_qos; vf 9335 drivers/net/ethernet/intel/igb/igb_main.c ivi->spoofchk = adapter->vf_data[vf].spoofchk_enabled; vf 9336 drivers/net/ethernet/intel/igb/igb_main.c ivi->trusted = adapter->vf_data[vf].trusted; vf 123 drivers/net/ethernet/intel/igbvf/mbx.c v2p_mailbox |= hw->dev_spec.vf.v2p_mailbox; vf 124 drivers/net/ethernet/intel/igbvf/mbx.c hw->dev_spec.vf.v2p_mailbox |= v2p_mailbox & E1000_V2PMAILBOX_R2C_BITS; vf 145 drivers/net/ethernet/intel/igbvf/mbx.c hw->dev_spec.vf.v2p_mailbox &= ~mask; vf 228 drivers/net/ethernet/intel/igbvf/vf.h struct e1000_dev_spec_vf vf; vf 196 drivers/net/ethernet/intel/ixgbe/ixgbe.h int vf; vf 1016 drivers/net/ethernet/intel/ixgbe/ixgbe.h void ixgbe_ipsec_vf_clear(struct ixgbe_adapter *adapter, u32 vf); vf 1017 drivers/net/ethernet/intel/ixgbe/ixgbe.h int ixgbe_ipsec_vf_add_sa(struct ixgbe_adapter *adapter, u32 *mbuf, u32 vf); vf 1018 drivers/net/ethernet/intel/ixgbe/ixgbe.h int ixgbe_ipsec_vf_del_sa(struct ixgbe_adapter *adapter, u32 *mbuf, u32 vf); vf 1030 drivers/net/ethernet/intel/ixgbe/ixgbe.h u32 vf) { } vf 1032 drivers/net/ethernet/intel/ixgbe/ixgbe.h u32 *mbuf, u32 vf) { return -EACCES; } vf 1034 drivers/net/ethernet/intel/ixgbe/ixgbe.h u32 *mbuf, u32 vf) { return -EACCES; } vf 3446 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c void ixgbe_set_mac_anti_spoofing(struct ixgbe_hw *hw, bool enable, int vf) vf 3448 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c int vf_target_reg = vf >> 3; vf 3449 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c int vf_target_shift = vf % 8; vf 3470 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c void ixgbe_set_vlan_anti_spoofing(struct ixgbe_hw *hw, bool enable, int vf) vf 3472 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c int vf_target_reg = vf >> 3; vf 3473 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c int vf_target_shift = vf % 8 + IXGBE_SPOOF_VLANAS_SHIFT; vf 85 drivers/net/ethernet/intel/ixgbe/ixgbe_common.h void ixgbe_set_mac_anti_spoofing(struct ixgbe_hw *hw, bool enable, int vf); vf 86 drivers/net/ethernet/intel/ixgbe/ixgbe_common.h void ixgbe_set_vlan_anti_spoofing(struct ixgbe_hw *hw, bool enable, int vf); vf 646 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c int vf; vf 650 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c for (vf = 0; vf < adapter->num_vfs; vf++) { vf 651 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c struct vf_data_storage *vfinfo = &adapter->vfinfo[vf]; vf 655 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c app->priority, vf); vf 689 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c int vf; vf 695 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c for (vf = 0; vf < adapter->num_vfs; vf++) { vf 696 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c struct vf_data_storage *vfinfo = &adapter->vfinfo[vf]; vf 700 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c qos, vf); vf 2695 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c u8 vf = ethtool_get_flow_spec_ring_vf(fsp->ring_cookie); vf 2697 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c if (!vf && (ring >= adapter->num_rx_queues)) vf 2699 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c else if (vf && vf 2700 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c ((vf > adapter->num_vfs) || vf 2705 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c if (!vf) vf 2708 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c queue = ((vf - 1) * vf 840 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c void ixgbe_ipsec_vf_clear(struct ixgbe_adapter *adapter, u32 vf) vf 853 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c ipsec->rx_tbl[i].vf == vf) vf 862 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c ipsec->tx_tbl[i].vf == vf) vf 879 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c int ixgbe_ipsec_vf_add_sa(struct ixgbe_adapter *adapter, u32 *msgbuf, u32 vf) vf 891 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c if (!adapter->vfinfo[vf].trusted || vf 893 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c e_warn(drv, "VF %d attempted to add an IPsec SA\n", vf); vf 950 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c ipsec->rx_tbl[sa_idx].vf = vf; vf 954 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c ipsec->tx_tbl[sa_idx].vf = vf; vf 989 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c int ixgbe_ipsec_vf_del_sa(struct ixgbe_adapter *adapter, u32 *msgbuf, u32 vf) vf 996 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c if (!adapter->vfinfo[vf].trusted) { vf 997 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c e_err(drv, "vf %d attempted to delete an SA\n", vf); vf 1007 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c vf, sa_idx); vf 1017 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c rsa->vf != vf) { vf 1018 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c e_err(drv, "vf %d bad Rx SA index %d\n", vf, sa_idx); vf 1029 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c vf, sa_idx); vf 1039 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c tsa->vf != vf) { vf 1040 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.c e_err(drv, "vf %d bad Tx SA index %d\n", vf, sa_idx); vf 41 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.h u32 vf; vf 57 drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.h u32 vf; vf 5255 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c u8 vf = ethtool_get_flow_spec_ring_vf(filter->action); vf 5257 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c if (!vf && (ring >= adapter->num_rx_queues)) { vf 5261 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c } else if (vf && vf 5262 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c ((vf > adapter->num_vfs) || vf 5265 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c vf, ring); vf 5270 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c if (!vf) vf 5273 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c queue = ((vf - 1) * vf 7612 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c unsigned int vf; vf 7631 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c for (vf = 0; vf < adapter->num_vfs; ++vf) { vf 7632 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c struct pci_dev *vfdev = adapter->vfinfo[vf].vfdev; vf 9281 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c unsigned int num_vfs = adapter->num_vfs, vf; vf 9286 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c for (vf = 0; vf < num_vfs; ++vf) { vf 9287 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c upper = pci_get_drvdata(adapter->vfinfo[vf].vfdev); vf 9289 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c *queue = vf * __ALIGN_MASK(1, ~vmdq->mask); vf 9290 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c *action = vf + 1; vf 11301 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c int vf, pos; vf 11335 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c vf = (req_id & 0x7F) >> 1; vf 11336 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c e_dev_err("VF %d has caused a PCIe error\n", vf); vf 42 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c mv_list[i].vf = -1; vf 127 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int vf = 0; vf 142 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (vf >= adapter->num_vfs) vf 145 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].vfdev = vfdev; vf 146 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ++vf; vf 206 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c unsigned int num_vfs = adapter->num_vfs, vf; vf 213 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c for (vf = 0; vf < num_vfs; ++vf) { vf 214 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c struct pci_dev *vfdev = adapter->vfinfo[vf].vfdev; vf 218 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].vfdev = NULL; vf 359 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 *msgbuf, u32 vf) vf 364 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c struct vf_data_storage *vfinfo = &adapter->vfinfo[vf]; vf 370 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 vmolr = IXGBE_READ_REG(hw, IXGBE_VMOLR(vf)); vf 398 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c IXGBE_WRITE_REG(hw, IXGBE_VMOLR(vf), vmolr); vf 438 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 vf) vf 454 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c err = hw->mac.ops.set_vfta(hw, vid, vf, !!add, false); vf 470 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static s32 ixgbe_set_vf_lpe(struct ixgbe_adapter *adapter, u32 *msgbuf, u32 vf) vf 495 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c switch (adapter->vfinfo[vf].vf_api) { vf 519 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c vf_shift = vf % 32; vf 520 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c reg_offset = vf / 32; vf 557 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static void ixgbe_set_vmolr(struct ixgbe_hw *hw, u32 vf, bool aupe) vf 559 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 vmolr = IXGBE_READ_REG(hw, IXGBE_VMOLR(vf)); vf 565 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c IXGBE_WRITE_REG(hw, IXGBE_VMOLR(vf), vmolr); vf 568 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static void ixgbe_clear_vmvir(struct ixgbe_adapter *adapter, u32 vf) vf 572 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c IXGBE_WRITE_REG(hw, IXGBE_VMVIR(vf), 0); vf 575 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static void ixgbe_clear_vf_vlans(struct ixgbe_adapter *adapter, u32 vf) vf 582 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c vlvfb_mask = BIT(vf % 32); vf 587 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 word = i * 2 + vf / 32; vf 637 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int vf, int index, unsigned char *mac_addr) vf 646 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (entry->vf == vf) { vf 647 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c entry->vf = -1; vf 651 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c entry->vf_macvlan, vf); vf 682 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_add_mac_filter(adapter, mac_addr, vf); vf 688 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c entry->vf = vf; vf 694 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static inline void ixgbe_vf_reset_event(struct ixgbe_adapter *adapter, u32 vf) vf 698 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c struct vf_data_storage *vfinfo = &adapter->vfinfo[vf]; vf 705 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_clear_vf_vlans(adapter, vf); vf 708 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vf_vlan(adapter, true, vfinfo->pf_vlan, vf); vf 711 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vmolr(hw, vf, !vfinfo->pf_vlan); vf 715 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_clear_vmvir(adapter, vf); vf 719 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c vfinfo->pf_qos, vf); vf 722 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->default_up, vf); vf 725 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c hw->mac.ops.set_vlan_anti_spoofing(hw, true, vf); vf 726 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c hw->mac.ops.set_mac_anti_spoofing(hw, true, vf); vf 731 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].num_vf_mc_hashes = 0; vf 734 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_ipsec_vf_clear(adapter, vf); vf 739 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_del_mac_filter(adapter, adapter->vfinfo[vf].vf_mac_addresses, vf); vf 740 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vf_macvlan(adapter, vf, 0, NULL); vf 743 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].vf_api = ixgbe_mbox_api_10; vf 747 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c unsigned int reg_idx = (vf * q_per_pool) + queue; vf 763 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static void ixgbe_vf_clear_mbx(struct ixgbe_adapter *adapter, u32 vf) vf 770 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c IXGBE_WRITE_REG_ARRAY(hw, IXGBE_PFMBMEM(vf), word, 0); vf 776 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int vf, unsigned char *mac_addr) vf 780 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_del_mac_filter(adapter, adapter->vfinfo[vf].vf_mac_addresses, vf); vf 781 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_add_mac_filter(adapter, mac_addr, vf); vf 783 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c memcpy(adapter->vfinfo[vf].vf_mac_addresses, mac_addr, vf 786 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c memset(adapter->vfinfo[vf].vf_mac_addresses, 0, ETH_ALEN); vf 804 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static inline void ixgbe_write_qde(struct ixgbe_adapter *adapter, u32 vf, vf 812 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c for (i = vf * q_per_pool; i < ((vf + 1) * q_per_pool); i++) { vf 825 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static int ixgbe_vf_reset_msg(struct ixgbe_adapter *adapter, u32 vf) vf 829 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c unsigned char *vf_mac = adapter->vfinfo[vf].vf_mac_addresses; vf 836 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c e_info(probe, "VF Reset msg received from vf %d\n", vf); vf 839 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_vf_reset_event(adapter, vf); vf 841 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_vf_clear_mbx(adapter, vf); vf 845 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vf_mac(adapter, vf, vf_mac); vf 847 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c vf_shift = vf % 32; vf 848 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c reg_offset = vf / 32; vf 857 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (adapter->vfinfo[vf].pf_vlan) vf 860 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_write_qde(adapter, vf, reg); vf 885 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].clear_to_send = true; vf 897 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c IXGBE_WRITE_REG(hw, IXGBE_PVFTDWBAHn(q_per_pool, vf, i), 0); vf 898 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c IXGBE_WRITE_REG(hw, IXGBE_PVFTDWBALn(q_per_pool, vf, i), 0); vf 903 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (!is_zero_ether_addr(vf_mac) && adapter->vfinfo[vf].pf_set_mac) { vf 915 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_write_mbx(hw, msgbuf, IXGBE_VF_PERMADDR_MSG_LEN, vf); vf 921 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 *msgbuf, u32 vf) vf 926 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c e_warn(drv, "VF %d attempted to set invalid mac\n", vf); vf 930 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (adapter->vfinfo[vf].pf_set_mac && !adapter->vfinfo[vf].trusted && vf 931 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c !ether_addr_equal(adapter->vfinfo[vf].vf_mac_addresses, new_mac)) { vf 935 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c vf); vf 939 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c return ixgbe_set_vf_mac(adapter, vf, new_mac) < 0; vf 943 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 *msgbuf, u32 vf) vf 949 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (adapter->vfinfo[vf].pf_vlan || tcs) { vf 953 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c vf); vf 961 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c return ixgbe_set_vf_vlan(adapter, add, vid, vf); vf 965 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 *msgbuf, u32 vf) vf 972 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (adapter->vfinfo[vf].pf_set_mac && !adapter->vfinfo[vf].trusted && vf 976 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c vf); vf 983 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c e_warn(drv, "VF %d attempted to set invalid mac\n", vf); vf 991 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (adapter->vfinfo[vf].spoofchk_enabled) { vf 994 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c hw->mac.ops.set_mac_anti_spoofing(hw, false, vf); vf 995 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c hw->mac.ops.set_vlan_anti_spoofing(hw, false, vf); vf 999 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c err = ixgbe_set_vf_macvlan(adapter, vf, index, new_mac); vf 1003 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c vf); vf 1009 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 *msgbuf, u32 vf) vf 1019 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].vf_api = api; vf 1025 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c e_info(drv, "VF %d requested invalid api version %u\n", vf, api); vf 1031 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 *msgbuf, u32 vf) vf 1039 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c switch (adapter->vfinfo[vf].vf_api) { vf 1061 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c else if (adapter->vfinfo[vf].pf_vlan || adapter->vfinfo[vf].pf_qos) vf 1072 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static int ixgbe_get_vf_reta(struct ixgbe_adapter *adapter, u32 *msgbuf, u32 vf) vf 1080 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (!adapter->vfinfo[vf].rss_query_enabled) vf 1084 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c switch (adapter->vfinfo[vf].vf_api) { vf 1108 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 *msgbuf, u32 vf) vf 1113 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (!adapter->vfinfo[vf].rss_query_enabled) vf 1117 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c switch (adapter->vfinfo[vf].vf_api) { vf 1132 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 *msgbuf, u32 vf) vf 1139 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c switch (adapter->vfinfo[vf].vf_api) { vf 1153 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c !adapter->vfinfo[vf].trusted) { vf 1157 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (adapter->vfinfo[vf].xcast_mode == xcast_mode) vf 1194 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c vmolr = IXGBE_READ_REG(hw, IXGBE_VMOLR(vf)); vf 1197 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c IXGBE_WRITE_REG(hw, IXGBE_VMOLR(vf), vmolr); vf 1199 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].xcast_mode = xcast_mode; vf 1207 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static int ixgbe_rcv_msg_from_vf(struct ixgbe_adapter *adapter, u32 vf) vf 1214 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_read_mbx(hw, msgbuf, mbx_size, vf); vf 1229 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c return ixgbe_vf_reset_msg(adapter, vf); vf 1235 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (!adapter->vfinfo[vf].clear_to_send) { vf 1237 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_write_mbx(hw, msgbuf, 1, vf); vf 1243 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_set_vf_mac_addr(adapter, msgbuf, vf); vf 1246 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_set_vf_multicasts(adapter, msgbuf, vf); vf 1249 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_set_vf_vlan_msg(adapter, msgbuf, vf); vf 1252 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_set_vf_lpe(adapter, msgbuf, vf); vf 1255 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_set_vf_macvlan_msg(adapter, msgbuf, vf); vf 1258 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_negotiate_vf_api(adapter, msgbuf, vf); vf 1261 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_get_vf_queues(adapter, msgbuf, vf); vf 1264 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_get_vf_reta(adapter, msgbuf, vf); vf 1267 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_get_vf_rss_key(adapter, msgbuf, vf); vf 1270 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_update_vf_xcast_mode(adapter, msgbuf, vf); vf 1273 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_ipsec_vf_add_sa(adapter, msgbuf, vf); vf 1276 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_ipsec_vf_del_sa(adapter, msgbuf, vf); vf 1292 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_write_mbx(hw, msgbuf, mbx_size, vf); vf 1297 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static void ixgbe_rcv_ack_from_vf(struct ixgbe_adapter *adapter, u32 vf) vf 1303 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (!adapter->vfinfo[vf].clear_to_send) vf 1304 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_write_mbx(hw, &msg, 1, vf); vf 1310 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u32 vf; vf 1312 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c for (vf = 0; vf < adapter->num_vfs; vf++) { vf 1314 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (!ixgbe_check_for_rst(hw, vf)) vf 1315 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_vf_reset_event(adapter, vf); vf 1318 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (!ixgbe_check_for_msg(hw, vf)) vf 1319 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_rcv_msg_from_vf(adapter, vf); vf 1322 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (!ixgbe_check_for_ack(hw, vf)) vf 1323 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_rcv_ack_from_vf(adapter, vf); vf 1339 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static inline void ixgbe_ping_vf(struct ixgbe_adapter *adapter, int vf) vf 1345 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (adapter->vfinfo[vf].clear_to_send) vf 1347 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_write_mbx(hw, &ping, 1, vf); vf 1364 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int ixgbe_ndo_set_vf_mac(struct net_device *netdev, int vf, u8 *mac) vf 1369 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (vf >= adapter->num_vfs) vf 1374 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c mac, vf); vf 1377 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_set_vf_mac(adapter, vf, mac); vf 1379 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].pf_set_mac = true; vf 1390 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].vf_mac_addresses; vf 1396 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c dev_info(&adapter->pdev->dev, "removing MAC on VF %d\n", vf); vf 1398 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c retval = ixgbe_del_mac_filter(adapter, vf_mac_addr, vf); vf 1400 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].pf_set_mac = false; vf 1412 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static int ixgbe_enable_port_vlan(struct ixgbe_adapter *adapter, int vf, vf 1418 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c err = ixgbe_set_vf_vlan(adapter, true, vlan, vf); vf 1423 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vf_vlan(adapter, false, 0, vf); vf 1425 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vmvir(adapter, vlan, qos, vf); vf 1426 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vmolr(hw, vf, false); vf 1430 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_write_qde(adapter, vf, IXGBE_QDE_ENABLE | vf 1433 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].pf_vlan = vlan; vf 1434 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].pf_qos = qos; vf 1436 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c "Setting VLAN %d, QOS 0x%x on VF %d\n", vlan, qos, vf); vf 1448 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static int ixgbe_disable_port_vlan(struct ixgbe_adapter *adapter, int vf) vf 1454 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].pf_vlan, vf); vf 1456 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vf_vlan(adapter, true, 0, vf); vf 1457 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_clear_vmvir(adapter, vf); vf 1458 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vmolr(hw, vf, true); vf 1462 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_write_qde(adapter, vf, IXGBE_QDE_ENABLE); vf 1464 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].pf_vlan = 0; vf 1465 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].pf_qos = 0; vf 1470 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int ixgbe_ndo_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, vf 1476 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if ((vf >= adapter->num_vfs) || (vlan > 4095) || (qos > 7)) vf 1488 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (adapter->vfinfo[vf].pf_vlan) vf 1489 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c err = ixgbe_disable_port_vlan(adapter, vf); vf 1492 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c err = ixgbe_enable_port_vlan(adapter, vf, vlan, qos); vf 1494 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c err = ixgbe_disable_port_vlan(adapter, vf); vf 1515 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c static void ixgbe_set_vf_rate_limit(struct ixgbe_adapter *adapter, int vf) vf 1521 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c u16 tx_rate = adapter->vfinfo[vf].tx_rate; vf 1560 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c unsigned int reg_idx = (vf * queues_per_pool) + queue; vf 1589 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int ixgbe_ndo_set_vf_bw(struct net_device *netdev, int vf, int min_tx_rate, vf 1596 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (vf >= adapter->num_vfs) vf 1617 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].tx_rate = max_tx_rate; vf 1620 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_set_vf_rate_limit(adapter, vf); vf 1625 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int ixgbe_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, bool setting) vf 1630 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (vf >= adapter->num_vfs) vf 1633 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].spoofchk_enabled = setting; vf 1636 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c hw->mac.ops.set_mac_anti_spoofing(hw, setting, vf); vf 1639 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c hw->mac.ops.set_vlan_anti_spoofing(hw, setting, vf); vf 1655 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c hw->mac.ops.set_ethertype_anti_spoofing(hw, setting, vf); vf 1661 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int ixgbe_ndo_set_vf_rss_query_en(struct net_device *netdev, int vf, vf 1673 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (vf >= adapter->num_vfs) vf 1676 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].rss_query_enabled = setting; vf 1681 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int ixgbe_ndo_set_vf_trust(struct net_device *netdev, int vf, bool setting) vf 1685 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (vf >= adapter->num_vfs) vf 1689 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (adapter->vfinfo[vf].trusted == setting) vf 1692 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].trusted = setting; vf 1695 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c adapter->vfinfo[vf].clear_to_send = false; vf 1696 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ixgbe_ping_vf(adapter, vf); vf 1698 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c e_info(drv, "VF %u is %strusted\n", vf, setting ? "" : "not "); vf 1704 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c int vf, struct ifla_vf_info *ivi) vf 1707 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c if (vf >= adapter->num_vfs) vf 1709 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ivi->vf = vf; vf 1710 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c memcpy(&ivi->mac, adapter->vfinfo[vf].vf_mac_addresses, ETH_ALEN); vf 1711 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ivi->max_tx_rate = adapter->vfinfo[vf].tx_rate; vf 1713 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ivi->vlan = adapter->vfinfo[vf].pf_vlan; vf 1714 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ivi->qos = adapter->vfinfo[vf].pf_qos; vf 1715 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ivi->spoofchk = adapter->vfinfo[vf].spoofchk_enabled; vf 1716 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ivi->rss_query_en = adapter->vfinfo[vf].rss_query_enabled; vf 1717 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c ivi->trusted = adapter->vfinfo[vf].trusted; vf 26 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h int ixgbe_ndo_set_vf_bw(struct net_device *netdev, int vf, int min_tx_rate, vf 28 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h int ixgbe_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, bool setting); vf 29 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h int ixgbe_ndo_set_vf_rss_query_en(struct net_device *netdev, int vf, vf 31 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h int ixgbe_ndo_set_vf_trust(struct net_device *netdev, int vf, bool setting); vf 33 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h int vf, struct ifla_vf_info *ivi); vf 42 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h u16 vid, u16 qos, u32 vf) vf 47 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h IXGBE_WRITE_REG(hw, IXGBE_VMVIR(vf), vmvir); vf 3509 drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c bool enable, int vf) vf 3511 drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c int vf_target_reg = vf >> 3; vf 3512 drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c int vf_target_shift = vf % 8 + IXGBE_SPOOF_ETHERTYPEAS_SHIFT; vf 356 drivers/net/ethernet/marvell/octeontx2/af/rvu.c int pf, vf, nvfs; vf 367 drivers/net/ethernet/marvell/octeontx2/af/rvu.c vf = (pcifunc & RVU_PFVF_FUNC_MASK) - 1; vf 370 drivers/net/ethernet/marvell/octeontx2/af/rvu.c if (vf >= nvfs) vf 466 drivers/net/ethernet/marvell/octeontx2/af/rvu.c static void rvu_check_min_msix_vec(struct rvu *rvu, int nvecs, int pf, int vf) vf 470 drivers/net/ethernet/marvell/octeontx2/af/rvu.c if (!vf) vf 476 drivers/net/ethernet/marvell/octeontx2/af/rvu.c pf, vf - 1, nvecs); vf 496 drivers/net/ethernet/marvell/octeontx2/af/rvu.c int pf, vf, numvfs, hwvf, err; vf 545 drivers/net/ethernet/marvell/octeontx2/af/rvu.c for (vf = 0; vf < numvfs; vf++) { vf 546 drivers/net/ethernet/marvell/octeontx2/af/rvu.c pfvf = &rvu->hwvf[hwvf + vf]; vf 551 drivers/net/ethernet/marvell/octeontx2/af/rvu.c rvu_check_min_msix_vec(rvu, pfvf->msix.max, pf, vf + 1); vf 569 drivers/net/ethernet/marvell/octeontx2/af/rvu.c RVU_PRIV_HWVFX_INT_CFG(hwvf + vf)); vf 574 drivers/net/ethernet/marvell/octeontx2/af/rvu.c RVU_PRIV_HWVFX_INT_CFG(hwvf + vf), vf 1350 drivers/net/ethernet/marvell/octeontx2/af/rvu.c u16 vf, numvfs; vf 1353 drivers/net/ethernet/marvell/octeontx2/af/rvu.c vf = pcifunc & RVU_PFVF_FUNC_MASK; vf 1358 drivers/net/ethernet/marvell/octeontx2/af/rvu.c if (vf && vf <= numvfs) vf 1804 drivers/net/ethernet/marvell/octeontx2/af/rvu.c static void rvu_afvf_flr_handler(struct rvu *rvu, int vf) vf 1809 drivers/net/ethernet/marvell/octeontx2/af/rvu.c __rvu_flr_handler(rvu, vf + 1); vf 1811 drivers/net/ethernet/marvell/octeontx2/af/rvu.c if (vf >= 64) { vf 1813 drivers/net/ethernet/marvell/octeontx2/af/rvu.c vf = vf - 64; vf 1817 drivers/net/ethernet/marvell/octeontx2/af/rvu.c rvupf_write64(rvu, RVU_PF_VFTRPENDX(reg), BIT_ULL(vf)); vf 1818 drivers/net/ethernet/marvell/octeontx2/af/rvu.c rvupf_write64(rvu, RVU_PF_VFFLR_INT_ENA_W1SX(reg), BIT_ULL(vf)); vf 1825 drivers/net/ethernet/marvell/octeontx2/af/rvu.c u16 pcifunc, numvfs, vf; vf 1839 drivers/net/ethernet/marvell/octeontx2/af/rvu.c for (vf = 0; vf < numvfs; vf++) vf 1840 drivers/net/ethernet/marvell/octeontx2/af/rvu.c __rvu_flr_handler(rvu, (pcifunc | (vf + 1))); vf 1853 drivers/net/ethernet/marvell/octeontx2/af/rvu.c int dev, vf, reg = 0; vf 1863 drivers/net/ethernet/marvell/octeontx2/af/rvu.c for (vf = 0; vf < numvfs; vf++) { vf 1864 drivers/net/ethernet/marvell/octeontx2/af/rvu.c if (!(intr & BIT_ULL(vf))) vf 1866 drivers/net/ethernet/marvell/octeontx2/af/rvu.c dev = vf + start_vf + rvu->hw->total_pfs; vf 1869 drivers/net/ethernet/marvell/octeontx2/af/rvu.c rvupf_write64(rvu, RVU_PF_VFFLR_INTX(reg), BIT_ULL(vf)); vf 1870 drivers/net/ethernet/marvell/octeontx2/af/rvu.c rvupf_write64(rvu, RVU_PF_VFFLR_INT_ENA_W1CX(reg), BIT_ULL(vf)); vf 1907 drivers/net/ethernet/marvell/octeontx2/af/rvu.c int vf; vf 1912 drivers/net/ethernet/marvell/octeontx2/af/rvu.c for (vf = 0; vf < 64; vf++) { vf 1913 drivers/net/ethernet/marvell/octeontx2/af/rvu.c if (intr & (1ULL << vf)) { vf 1915 drivers/net/ethernet/marvell/octeontx2/af/rvu.c rvupf_write64(rvu, RVU_PF_VFTRPENDX(idx), BIT_ULL(vf)); vf 1917 drivers/net/ethernet/marvell/octeontx2/af/rvu.c rvupf_write64(rvu, RVU_PF_VFME_INTX(idx), BIT_ULL(vf)); vf 174 drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c int pkind, pf, vf; vf 200 drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c vf = (pcifunc & RVU_PFVF_FUNC_MASK) - 1; vf 201 drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c pfvf->rx_chan_base = NIX_CHAN_LBK_CHX(0, vf); vf 202 drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c pfvf->tx_chan_base = vf & 0x1 ? NIX_CHAN_LBK_CHX(0, vf - 1) : vf 203 drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c NIX_CHAN_LBK_CHX(0, vf + 1); vf 2329 drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c int vf; vf 2344 drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c for (vf = 0; vf < numvfs; vf++) { vf 2345 drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c pfvf = &rvu->hwvf[hwvf + vf]; vf 883 drivers/net/ethernet/mellanox/mlx4/cmd.c static enum ib_port_state vf_port_state(struct mlx4_dev *dev, int port, int vf) vf 885 drivers/net/ethernet/mellanox/mlx4/cmd.c if (mlx4_get_slave_port_state(dev, vf, port) == SLAVE_PORT_UP) vf 2728 drivers/net/ethernet/mellanox/mlx4/cmd.c static int mlx4_get_slave_indx(struct mlx4_dev *dev, int vf) vf 2730 drivers/net/ethernet/mellanox/mlx4/cmd.c if ((vf < 0) || (vf >= dev->persist->num_vfs)) { vf 2732 drivers/net/ethernet/mellanox/mlx4/cmd.c vf, dev->persist->num_vfs); vf 2736 drivers/net/ethernet/mellanox/mlx4/cmd.c return vf+1; vf 2772 drivers/net/ethernet/mellanox/mlx4/cmd.c int vf; vf 2781 drivers/net/ethernet/mellanox/mlx4/cmd.c vf = mlx4_get_vf_indx(dev, slave); vf 2782 drivers/net/ethernet/mellanox/mlx4/cmd.c if (vf < 0) vf 2785 drivers/net/ethernet/mellanox/mlx4/cmd.c bitmap_set(actv_ports.ports, dev->dev_vfs[vf].min_port - 1, vf 2977 drivers/net/ethernet/mellanox/mlx4/cmd.c int mlx4_set_vf_mac(struct mlx4_dev *dev, int port, int vf, u8 *mac) vf 2989 drivers/net/ethernet/mellanox/mlx4/cmd.c slave = mlx4_get_slave_indx(dev, vf); vf 3003 drivers/net/ethernet/mellanox/mlx4/cmd.c vf, port, s_info->mac); vf 3009 drivers/net/ethernet/mellanox/mlx4/cmd.c int mlx4_set_vf_vlan(struct mlx4_dev *dev, int port, int vf, u16 vlan, u8 qos, vf 3037 drivers/net/ethernet/mellanox/mlx4/cmd.c slave = mlx4_get_slave_indx(dev, vf); vf 3044 drivers/net/ethernet/mellanox/mlx4/cmd.c mlx4_err(dev, "vf %d does not support VST QinQ mode\n", vf); vf 3076 drivers/net/ethernet/mellanox/mlx4/cmd.c vf, port); vf 3081 drivers/net/ethernet/mellanox/mlx4/cmd.c int mlx4_set_vf_rate(struct mlx4_dev *dev, int port, int vf, int min_tx_rate, vf 3098 drivers/net/ethernet/mellanox/mlx4/cmd.c slave = mlx4_get_slave_indx(dev, vf); vf 3107 drivers/net/ethernet/mellanox/mlx4/cmd.c mlx4_info(dev, "vf %d failed to set rate %d\n", vf, vf 3120 drivers/net/ethernet/mellanox/mlx4/cmd.c "rate set for VF %d when not in valid state\n", vf); vf 3169 drivers/net/ethernet/mellanox/mlx4/cmd.c int mlx4_set_vf_spoofchk(struct mlx4_dev *dev, int port, int vf, bool setting) vf 3180 drivers/net/ethernet/mellanox/mlx4/cmd.c slave = mlx4_get_slave_indx(dev, vf); vf 3199 drivers/net/ethernet/mellanox/mlx4/cmd.c int mlx4_get_vf_config(struct mlx4_dev *dev, int port, int vf, struct ifla_vf_info *ivf) vf 3208 drivers/net/ethernet/mellanox/mlx4/cmd.c slave = mlx4_get_slave_indx(dev, vf); vf 3213 drivers/net/ethernet/mellanox/mlx4/cmd.c ivf->vf = vf; vf 3240 drivers/net/ethernet/mellanox/mlx4/cmd.c int mlx4_set_vf_link_state(struct mlx4_dev *dev, int port, int vf, int link_state) vf 3247 drivers/net/ethernet/mellanox/mlx4/cmd.c slave = mlx4_get_slave_indx(dev, vf); vf 3283 drivers/net/ethernet/mellanox/mlx4/cmd.c vf, port); vf 2567 drivers/net/ethernet/mellanox/mlx4/en_netdev.c static int mlx4_en_set_vf_vlan(struct net_device *dev, int vf, u16 vlan, u8 qos, vf 2573 drivers/net/ethernet/mellanox/mlx4/en_netdev.c return mlx4_set_vf_vlan(mdev->dev, en_priv->port, vf, vlan, qos, vf 2577 drivers/net/ethernet/mellanox/mlx4/en_netdev.c static int mlx4_en_set_vf_rate(struct net_device *dev, int vf, int min_tx_rate, vf 2583 drivers/net/ethernet/mellanox/mlx4/en_netdev.c return mlx4_set_vf_rate(mdev->dev, en_priv->port, vf, min_tx_rate, vf 2587 drivers/net/ethernet/mellanox/mlx4/en_netdev.c static int mlx4_en_set_vf_spoofchk(struct net_device *dev, int vf, bool setting) vf 2592 drivers/net/ethernet/mellanox/mlx4/en_netdev.c return mlx4_set_vf_spoofchk(mdev->dev, en_priv->port, vf, setting); vf 2595 drivers/net/ethernet/mellanox/mlx4/en_netdev.c static int mlx4_en_get_vf_config(struct net_device *dev, int vf, struct ifla_vf_info *ivf) vf 2600 drivers/net/ethernet/mellanox/mlx4/en_netdev.c return mlx4_get_vf_config(mdev->dev, en_priv->port, vf, ivf); vf 2603 drivers/net/ethernet/mellanox/mlx4/en_netdev.c static int mlx4_en_set_vf_link_state(struct net_device *dev, int vf, int link_state) vf 2608 drivers/net/ethernet/mellanox/mlx4/en_netdev.c return mlx4_set_vf_link_state(mdev->dev, en_priv->port, vf, link_state); vf 2611 drivers/net/ethernet/mellanox/mlx4/en_netdev.c static int mlx4_en_get_vf_stats(struct net_device *dev, int vf, vf 2617 drivers/net/ethernet/mellanox/mlx4/en_netdev.c return mlx4_get_vf_stats(mdev->dev, en_priv->port, vf, vf_stats); vf 426 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c int vf, int num_instances) vf 428 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c res_alloc->guaranteed[vf] = num_instances / vf 430 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c res_alloc->quota[vf] = (num_instances / 2) + res_alloc->guaranteed[vf]; vf 431 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c if (vf == mlx4_master_func_num(dev)) { vf 436 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c res_alloc->guaranteed[vf] += dev->caps.reserved_mtts; vf 437 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c res_alloc->quota[vf] += dev->caps.reserved_mtts; vf 477 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c int vf) vf 483 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c if (vf == mlx4_master_func_num(dev)) vf 487 drivers/net/ethernet/mellanox/mlx4/resource_tracker.c actv_ports = mlx4_get_active_ports(dev, vf); vf 1201 drivers/net/ethernet/mellanox/mlx5/core/en.h int mlx5e_set_vf_mac(struct net_device *dev, int vf, u8 *mac); vf 1202 drivers/net/ethernet/mellanox/mlx5/core/en.h int mlx5e_set_vf_rate(struct net_device *dev, int vf, int min_tx_rate, int max_tx_rate); vf 1203 drivers/net/ethernet/mellanox/mlx5/core/en.h int mlx5e_get_vf_config(struct net_device *dev, int vf, struct ifla_vf_info *ivi); vf 1204 drivers/net/ethernet/mellanox/mlx5/core/en.h int mlx5e_get_vf_stats(struct net_device *dev, int vf, struct ifla_vf_stats *vf_stats); vf 4084 drivers/net/ethernet/mellanox/mlx5/core/en_main.c int mlx5e_set_vf_mac(struct net_device *dev, int vf, u8 *mac) vf 4089 drivers/net/ethernet/mellanox/mlx5/core/en_main.c return mlx5_eswitch_set_vport_mac(mdev->priv.eswitch, vf + 1, mac); vf 4092 drivers/net/ethernet/mellanox/mlx5/core/en_main.c static int mlx5e_set_vf_vlan(struct net_device *dev, int vf, u16 vlan, u8 qos, vf 4101 drivers/net/ethernet/mellanox/mlx5/core/en_main.c return mlx5_eswitch_set_vport_vlan(mdev->priv.eswitch, vf + 1, vf 4105 drivers/net/ethernet/mellanox/mlx5/core/en_main.c static int mlx5e_set_vf_spoofchk(struct net_device *dev, int vf, bool setting) vf 4110 drivers/net/ethernet/mellanox/mlx5/core/en_main.c return mlx5_eswitch_set_vport_spoofchk(mdev->priv.eswitch, vf + 1, setting); vf 4113 drivers/net/ethernet/mellanox/mlx5/core/en_main.c static int mlx5e_set_vf_trust(struct net_device *dev, int vf, bool setting) vf 4118 drivers/net/ethernet/mellanox/mlx5/core/en_main.c return mlx5_eswitch_set_vport_trust(mdev->priv.eswitch, vf + 1, setting); vf 4121 drivers/net/ethernet/mellanox/mlx5/core/en_main.c int mlx5e_set_vf_rate(struct net_device *dev, int vf, int min_tx_rate, vf 4127 drivers/net/ethernet/mellanox/mlx5/core/en_main.c return mlx5_eswitch_set_vport_rate(mdev->priv.eswitch, vf + 1, vf 4153 drivers/net/ethernet/mellanox/mlx5/core/en_main.c static int mlx5e_set_vf_link_state(struct net_device *dev, int vf, vf 4159 drivers/net/ethernet/mellanox/mlx5/core/en_main.c return mlx5_eswitch_set_vport_state(mdev->priv.eswitch, vf + 1, vf 4164 drivers/net/ethernet/mellanox/mlx5/core/en_main.c int vf, struct ifla_vf_info *ivi) vf 4170 drivers/net/ethernet/mellanox/mlx5/core/en_main.c err = mlx5_eswitch_get_vport_config(mdev->priv.eswitch, vf + 1, ivi); vf 4178 drivers/net/ethernet/mellanox/mlx5/core/en_main.c int vf, struct ifla_vf_stats *vf_stats) vf 4183 drivers/net/ethernet/mellanox/mlx5/core/en_main.c return mlx5_eswitch_get_vport_stats(mdev->priv.eswitch, vf + 1, vf 1343 drivers/net/ethernet/mellanox/mlx5/core/en_rep.c static int mlx5e_uplink_rep_set_vf_vlan(struct net_device *dev, int vf, u16 vlan, u8 qos, vf 2132 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c ivi->vf = vport - 1; vf 39 drivers/net/ethernet/mellanox/mlx5/core/sriov.c static int sriov_restore_guids(struct mlx5_core_dev *dev, int vf) vf 46 drivers/net/ethernet/mellanox/mlx5/core/sriov.c if (sriov->vfs_ctx[vf].node_guid || vf 47 drivers/net/ethernet/mellanox/mlx5/core/sriov.c sriov->vfs_ctx[vf].port_guid || vf 48 drivers/net/ethernet/mellanox/mlx5/core/sriov.c sriov->vfs_ctx[vf].policy != MLX5_POLICY_INVALID) { vf 53 drivers/net/ethernet/mellanox/mlx5/core/sriov.c in->node_guid = sriov->vfs_ctx[vf].node_guid; vf 54 drivers/net/ethernet/mellanox/mlx5/core/sriov.c in->port_guid = sriov->vfs_ctx[vf].port_guid; vf 55 drivers/net/ethernet/mellanox/mlx5/core/sriov.c in->policy = sriov->vfs_ctx[vf].policy; vf 61 drivers/net/ethernet/mellanox/mlx5/core/sriov.c err = mlx5_core_modify_hca_vport_context(dev, 1, 1, vf + 1, in); vf 63 drivers/net/ethernet/mellanox/mlx5/core/sriov.c mlx5_core_warn(dev, "modify vport context failed, unable to restore VF %d settings\n", vf); vf 75 drivers/net/ethernet/mellanox/mlx5/core/sriov.c int vf; vf 89 drivers/net/ethernet/mellanox/mlx5/core/sriov.c for (vf = 0; vf < num_vfs; vf++) { vf 90 drivers/net/ethernet/mellanox/mlx5/core/sriov.c err = mlx5_core_enable_hca(dev, vf + 1); vf 92 drivers/net/ethernet/mellanox/mlx5/core/sriov.c mlx5_core_warn(dev, "failed to enable VF %d (%d)\n", vf, err); vf 95 drivers/net/ethernet/mellanox/mlx5/core/sriov.c sriov->vfs_ctx[vf].enabled = 1; vf 97 drivers/net/ethernet/mellanox/mlx5/core/sriov.c err = sriov_restore_guids(dev, vf); vf 101 drivers/net/ethernet/mellanox/mlx5/core/sriov.c vf, err); vf 105 drivers/net/ethernet/mellanox/mlx5/core/sriov.c mlx5_core_dbg(dev, "successfully enabled VF* %d\n", vf); vf 116 drivers/net/ethernet/mellanox/mlx5/core/sriov.c int vf; vf 118 drivers/net/ethernet/mellanox/mlx5/core/sriov.c for (vf = num_vfs - 1; vf >= 0; vf--) { vf 119 drivers/net/ethernet/mellanox/mlx5/core/sriov.c if (!sriov->vfs_ctx[vf].enabled) vf 121 drivers/net/ethernet/mellanox/mlx5/core/sriov.c err = mlx5_core_disable_hca(dev, vf + 1); vf 123 drivers/net/ethernet/mellanox/mlx5/core/sriov.c mlx5_core_warn(dev, "failed to disable VF %d\n", vf); vf 126 drivers/net/ethernet/mellanox/mlx5/core/sriov.c sriov->vfs_ctx[vf].enabled = 0; vf 971 drivers/net/ethernet/mellanox/mlx5/core/vport.c int vf, u8 port_num, void *out, vf 991 drivers/net/ethernet/mellanox/mlx5/core/vport.c MLX5_SET(query_vport_counter_in, in, vport_number, vf + 1); vf 1034 drivers/net/ethernet/mellanox/mlx5/core/vport.c int vf, vf 1044 drivers/net/ethernet/mellanox/mlx5/core/vport.c mlx5_core_dbg(dev, "vf %d\n", vf); vf 1055 drivers/net/ethernet/mellanox/mlx5/core/vport.c MLX5_SET(modify_hca_vport_context_in, in, vport_number, vf); vf 18 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c nfp_net_sriov_check(struct nfp_app *app, int vf, u16 cap, const char *msg) vf 31 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c if (vf < 0 || vf >= app->pf->num_vfs) { vf 32 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c nfp_warn(app->pf->cpp, "invalid VF id %d\n", vf); vf 40 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c nfp_net_sriov_update(struct nfp_app *app, int vf, u16 update, const char *msg) vf 46 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c writeb(vf, app->pf->vfcfg_tbl2 + NFP_NET_VF_CFG_MB_VF_NUM); vf 62 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c int nfp_app_set_vf_mac(struct net_device *netdev, int vf, u8 *mac) vf 68 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c err = nfp_net_sriov_check(app, vf, NFP_NET_VF_CFG_MB_CAP_MAC, "mac"); vf 75 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c mac, vf); vf 80 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c vf_offset = NFP_NET_VF_CFG_MB_SZ + vf * NFP_NET_VF_CFG_SZ; vf 85 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c err = nfp_net_sriov_update(app, vf, NFP_NET_VF_CFG_MB_UPD_MAC, "MAC"); vf 89 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c mac, vf); vf 94 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c int nfp_app_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, u8 qos, vf 102 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c err = nfp_net_sriov_check(app, vf, NFP_NET_VF_CFG_MB_CAP_VLAN, "vlan"); vf 111 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c "invalid vlan id or qos for VF id %d\n", vf); vf 118 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c vf_offset = NFP_NET_VF_CFG_MB_SZ + vf * NFP_NET_VF_CFG_SZ; vf 121 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c return nfp_net_sriov_update(app, vf, NFP_NET_VF_CFG_MB_UPD_VLAN, vf 125 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c int nfp_app_set_vf_spoofchk(struct net_device *netdev, int vf, bool enable) vf 132 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c err = nfp_net_sriov_check(app, vf, NFP_NET_VF_CFG_MB_CAP_SPOOF, vf 138 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c vf_offset = NFP_NET_VF_CFG_MB_SZ + vf * NFP_NET_VF_CFG_SZ + vf 145 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c return nfp_net_sriov_update(app, vf, NFP_NET_VF_CFG_MB_UPD_SPOOF, vf 149 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c int nfp_app_set_vf_trust(struct net_device *netdev, int vf, bool enable) vf 156 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c err = nfp_net_sriov_check(app, vf, NFP_NET_VF_CFG_MB_CAP_TRUST, vf 162 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c vf_offset = NFP_NET_VF_CFG_MB_SZ + vf * NFP_NET_VF_CFG_SZ + vf 169 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c return nfp_net_sriov_update(app, vf, NFP_NET_VF_CFG_MB_UPD_TRUST, vf 173 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c int nfp_app_set_vf_link_state(struct net_device *netdev, int vf, vf 181 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c err = nfp_net_sriov_check(app, vf, NFP_NET_VF_CFG_MB_CAP_LINK_STATE, vf 196 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c vf_offset = NFP_NET_VF_CFG_MB_SZ + vf * NFP_NET_VF_CFG_SZ + vf 203 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c return nfp_net_sriov_update(app, vf, NFP_NET_VF_CFG_MB_UPD_LINK_STATE, vf 207 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c int nfp_app_get_vf_config(struct net_device *netdev, int vf, vf 218 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c err = nfp_net_sriov_check(app, vf, 0, ""); vf 222 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c vf_offset = NFP_NET_VF_CFG_MB_SZ + vf * NFP_NET_VF_CFG_SZ; vf 231 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.c ivi->vf = vf; vf 50 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.h int nfp_app_set_vf_mac(struct net_device *netdev, int vf, u8 *mac); vf 51 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.h int nfp_app_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, u8 qos, vf 53 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.h int nfp_app_set_vf_spoofchk(struct net_device *netdev, int vf, bool setting); vf 54 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.h int nfp_app_set_vf_trust(struct net_device *netdev, int vf, bool setting); vf 55 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.h int nfp_app_set_vf_link_state(struct net_device *netdev, int vf, vf 57 drivers/net/ethernet/netronome/nfp/nfp_net_sriov.h int nfp_app_get_vf_config(struct net_device *netdev, int vf, vf 73 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c struct nfp_net_vf *vf; vf 81 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c vf = kzalloc(sizeof(*vf), GFP_KERNEL); vf 82 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c if (!vf) vf 84 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c pci_set_drvdata(pdev, vf); vf 180 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c vf->nn = nn; vf 203 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c vf->q_bar = ioremap_nocache(map_addr, bar_sz); vf 204 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c if (!vf->q_bar) { vf 211 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c nn->tx_bar = vf->q_bar + (tx_bar_off - bar_off); vf 213 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c nn->rx_bar = vf->q_bar + (rx_bar_off - bar_off); vf 238 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c num_irqs = nfp_net_irqs_alloc(pdev, vf->irq_entries, vf 247 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c nfp_net_irqs_assign(nn, vf->irq_entries, num_irqs); vf 254 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c vf->ddir = nfp_net_debugfs_device_add(pdev); vf 255 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c nfp_net_debugfs_vnic_add(nn, vf->ddir); vf 262 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c if (!vf->q_bar) vf 265 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c if (!vf->q_bar) vf 268 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c iounmap(vf->q_bar); vf 279 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c kfree(vf); vf 285 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c struct nfp_net_vf *vf; vf 288 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c vf = pci_get_drvdata(pdev); vf 289 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c if (!vf) vf 292 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c nn = vf->nn; vf 298 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c nfp_net_debugfs_dir_clean(&vf->ddir); vf 304 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c if (!vf->q_bar) { vf 308 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c iounmap(vf->q_bar); vf 318 drivers/net/ethernet/netronome/nfp/nfp_netvf_main.c kfree(vf); vf 944 drivers/net/ethernet/qlogic/qed/qed.h u16 qed_get_cm_pq_idx_vf(struct qed_hwfn *p_hwfn, u16 vf); vf 1126 drivers/net/ethernet/qlogic/qed/qed_cxt.c u32 type, vf; vf 1133 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (vf = 0; vf < MAX_NUM_VFS; vf++) { vf 1134 drivers/net/ethernet/qlogic/qed/qed_cxt.c kfree(p_mngr->acquired_vf[type][vf].cid_map); vf 1135 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->acquired_vf[type][vf].max_count = 0; vf 1136 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_mngr->acquired_vf[type][vf].start_cid = 0; vf 1173 drivers/net/ethernet/qlogic/qed/qed_cxt.c u32 type, vf; vf 1186 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (vf = 0; vf < MAX_NUM_VFS; vf++) { vf 1187 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_map = &p_mngr->acquired_vf[type][vf]; vf 1308 drivers/net/ethernet/qlogic/qed/qed_cxt.c u32 vf; vf 1323 drivers/net/ethernet/qlogic/qed/qed_cxt.c for (vf = 0; vf < MAX_NUM_VFS; vf++) { vf 1324 drivers/net/ethernet/qlogic/qed/qed_cxt.c p_map = &p_mngr->acquired_vf[type][vf]; vf 1778 drivers/net/ethernet/qlogic/qed/qed_dev.c u16 qed_get_cm_pq_idx_vf(struct qed_hwfn *p_hwfn, u16 vf) vf 1788 drivers/net/ethernet/qlogic/qed/qed_dev.c if (vf > max_vf) vf 1789 drivers/net/ethernet/qlogic/qed/qed_dev.c DP_ERR(p_hwfn, "vf %d must be smaller than %d\n", vf, max_vf); vf 1791 drivers/net/ethernet/qlogic/qed/qed_dev.c return qed_get_cm_pq_idx(p_hwfn, PQ_FLAGS_VFS) + (vf % max_vf); vf 185 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf = NULL; vf 194 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = &p_hwfn->pf_iov_info->vfs_array[relative_vf_id]; vf 199 drivers/net/ethernet/qlogic/qed/qed_sriov.c return vf; vf 452 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf = &p_iov_info->vfs_array[idx]; vf 455 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->vf_mbx.req_virt = p_req_virt_addr + idx; vf 456 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->vf_mbx.req_phys = req_p + idx * sizeof(union vfpf_tlvs); vf 457 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->vf_mbx.reply_virt = p_reply_virt_addr + idx; vf 458 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->vf_mbx.reply_phys = rply_p + idx * sizeof(union pfvf_tlvs); vf 460 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->state = VF_STOPPED; vf 461 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->b_init = false; vf 463 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->bulletin.phys = idx * vf 466 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->bulletin.p_virt = p_bulletin_virt + idx; vf 467 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->bulletin.size = sizeof(struct qed_bulletin_content); vf 469 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id = idx; vf 470 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id = idx + p_iov->first_vf_in_pf; vf 471 drivers/net/ethernet/qlogic/qed/qed_sriov.c concrete = qed_vfid_to_concrete(p_hwfn, vf->abs_vf_id); vf 472 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->concrete_fid = concrete; vf 473 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->opaque_fid = (p_hwfn->hw_info.opaque_fid & 0xff) | vf 474 drivers/net/ethernet/qlogic/qed/qed_sriov.c (vf->abs_vf_id << 8); vf 475 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->vport_id = idx + 1; vf 477 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_mac_filters = QED_ETH_VF_NUM_MAC_FILTERS; vf 478 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_vlan_filters = QED_ETH_VF_NUM_VLAN_FILTERS; vf 699 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf; vf 705 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_vf_info(p_hwfn, rel_vf_id, false); vf 706 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf) vf 709 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->to_disable = to_disable; vf 733 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_ptt *p_ptt, struct qed_vf_info *vf) vf 738 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_fid_pretend(p_hwfn, p_ptt, (u16) vf->concrete_fid); vf 746 drivers/net/ethernet/qlogic/qed/qed_sriov.c for (i = 0; i < vf->num_sbs; i++) vf 748 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->igu_sbs[i], vf 749 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->opaque_fid, true); vf 754 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf, bool enable) vf 758 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_fid_pretend(p_hwfn, p_ptt, (u16) vf->concrete_fid); vf 804 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 812 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->b_malicious = false; vf 814 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (vf->to_disable) vf 820 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, QED_VF_ABS_ID(p_hwfn, vf)); vf 822 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vf_pglue_clear_err(p_hwfn, p_ptt, QED_VF_ABS_ID(p_hwfn, vf)); vf 824 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vf_igu_reset(p_hwfn, p_ptt, vf); vf 827 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, vf->num_sbs); vf 831 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_fid_pretend(p_hwfn, p_ptt, (u16) vf->concrete_fid); vf 836 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_init_run(p_hwfn, p_ptt, PHASE_VF, vf->abs_vf_id, vf 842 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->state = VF_FREE; vf 861 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf, u8 enable) vf 867 drivers/net/ethernet/qlogic/qed/qed_sriov.c for (qid = 0; qid < vf->num_rxqs; qid++) { vf 868 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_fw_l2_queue(p_hwfn, vf->vf_queues[qid].fw_rx_qid, vf 872 drivers/net/ethernet/qlogic/qed/qed_sriov.c val = enable ? (vf->abs_vf_id | BIT(8)) : 0; vf 879 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 882 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vf_igu_reset(p_hwfn, p_ptt, vf); vf 884 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vf_igu_set_int(p_hwfn, p_ptt, vf, 1); vf 887 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_config_perm_table(p_hwfn, p_ptt, vf, true); vf 892 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf, u16 num_rx_queues) vf 903 drivers/net/ethernet/qlogic/qed/qed_sriov.c SET_FIELD(val, IGU_MAPPING_LINE_FUNCTION_NUMBER, vf->abs_vf_id); vf 909 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->igu_sbs[qid] = p_block->igu_sb_id; vf 919 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_hwfn->rel_pf_id, vf->abs_vf_id, 1); vf 927 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_sbs = (u8) num_rx_queues; vf 929 drivers/net/ethernet/qlogic/qed/qed_sriov.c return vf->num_sbs; vf 934 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 941 drivers/net/ethernet/qlogic/qed/qed_sriov.c for (idx = 0; idx < vf->num_sbs; idx++) { vf 942 drivers/net/ethernet/qlogic/qed/qed_sriov.c igu_id = vf->igu_sbs[idx]; vf 953 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_sbs = 0; vf 1003 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf = NULL; vf 1009 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_vf_info(p_hwfn, p_params->rel_vf_id, false); vf 1010 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf) { vf 1015 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (vf->b_init) { vf 1058 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id, p_params->num_queues, (u16)cids); vf 1063 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf, num_irqs); vf 1070 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_rxqs = num_of_vf_avaiable_chains; vf 1071 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_txqs = num_of_vf_avaiable_chains; vf 1073 drivers/net/ethernet/qlogic/qed/qed_sriov.c for (i = 0; i < vf->num_rxqs; i++) { vf 1074 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_queue *p_queue = &vf->vf_queues[i]; vf 1081 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id, i, vf->igu_sbs[i], vf 1094 drivers/net/ethernet/qlogic/qed/qed_sriov.c rc = qed_iov_enable_vf_access(p_hwfn, p_ptt, vf); vf 1096 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->b_init = true; vf 1111 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf = NULL; vf 1113 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_vf_info(p_hwfn, rel_vf_id, true); vf 1114 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf) { vf 1119 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (vf->bulletin.p_virt) vf 1120 drivers/net/ethernet/qlogic/qed/qed_sriov.c memset(vf->bulletin.p_virt, 0, sizeof(*vf->bulletin.p_virt)); vf 1122 drivers/net/ethernet/qlogic/qed/qed_sriov.c memset(&vf->p_vf_info, 0, sizeof(vf->p_vf_info)); vf 1134 drivers/net/ethernet/qlogic/qed/qed_sriov.c memset(&vf->acquire, 0, sizeof(vf->acquire)); vf 1140 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vf_igu_set_int(p_hwfn, p_ptt, vf, 0); vf 1143 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_config_perm_table(p_hwfn, p_ptt, vf, 0); vf 1145 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_rxqs = 0; vf 1146 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_txqs = 0; vf 1147 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_free_vf_igu_sbs(p_hwfn, p_ptt, vf); vf 1149 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (vf->b_init) { vf 1150 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->b_init = false; vf 1341 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf = NULL; vf 1343 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_vf_info(p_hwfn, relative_vf_id, b_enabled_only); vf 1344 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf) vf 1347 drivers/net/ethernet/qlogic/qed/qed_sriov.c return &vf->p_vf_info; vf 1555 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 1557 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 1574 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (vf->state != VF_FREE && vf->state != VF_STOPPED) { vf 1578 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, vf->state); vf 1590 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id); vf 1596 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, vf 1610 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id); vf 1615 drivers/net/ethernet/qlogic/qed/qed_sriov.c memcpy(&vf->acquire, req, sizeof(vf->acquire)); vf 1617 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->opaque_fid = req->vfdev_info.opaque_fid; vf 1619 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->vf_bulletin = req->bulletin_addr; vf 1620 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->bulletin.size = (vf->bulletin.size < req->bulletin_size) ? vf 1621 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->bulletin.size : req->bulletin_size; vf 1665 drivers/net/ethernet/qlogic/qed/qed_sriov.c vfpf_status = qed_iov_vf_mbx_acquire_resc(p_hwfn, p_ptt, vf, vf 1671 drivers/net/ethernet/qlogic/qed/qed_sriov.c rc = qed_sp_vf_start(p_hwfn, vf); vf 1673 drivers/net/ethernet/qlogic/qed/qed_sriov.c DP_NOTICE(p_hwfn, "Failed to start VF[%02x]\n", vf->abs_vf_id); vf 1679 drivers/net/ethernet/qlogic/qed/qed_sriov.c resp->bulletin_size = vf->bulletin.size; vf 1680 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_post_vf_bulletin(p_hwfn, vf->relative_vf_id, p_ptt); vf 1686 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, vf 1696 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->state = VF_ACQUIRED; vf 1700 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_ACQUIRE, vf 1909 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 1912 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 1920 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf_info = qed_iov_get_vf_info(p_hwfn, (u16) vf->relative_vf_id, true); vf 1924 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id); vf 1928 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->state = VF_ENABLED; vf 1931 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_enable_vf_traffic(p_hwfn, p_ptt, vf); vf 1934 drivers/net/ethernet/qlogic/qed/qed_sriov.c for (sb_id = 0; sb_id < vf->num_sbs; sb_id++) { vf 1938 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id, sb_id); vf 1944 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->igu_sbs[sb_id], vf->abs_vf_id, 1); vf 1947 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->mtu = start->mtu; vf 1948 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->shadow_config.inner_vlan_removal = start->inner_vlan_removal; vf 1968 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.concrete_fid = vf->concrete_fid; vf 1969 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.opaque_fid = vf->opaque_fid; vf 1970 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.vport_id = vf->vport_id; vf 1972 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.mtu = vf->mtu; vf 1975 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.check_mac = !vf->p_vf_info.is_trusted_configured; vf 1983 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->vport_instance++; vf 1986 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_configure_vport_forced(p_hwfn, vf, *p_bitmap); vf 1988 drivers/net/ethernet/qlogic/qed/qed_sriov.c __qed_iov_spoofchk_set(p_hwfn, vf, vf->req_spoofchk_val); vf 1990 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_VPORT_START, vf 1996 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 2001 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->vport_instance--; vf 2002 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->spoof_chk = false; vf 2004 drivers/net/ethernet/qlogic/qed/qed_sriov.c if ((qed_iov_validate_active_rxq(p_hwfn, vf)) || vf 2005 drivers/net/ethernet/qlogic/qed/qed_sriov.c (qed_iov_validate_active_txq(p_hwfn, vf))) { vf 2006 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->b_malicious = true; vf 2009 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id); vf 2014 drivers/net/ethernet/qlogic/qed/qed_sriov.c rc = qed_sp_vport_stop(p_hwfn, vf->opaque_fid, vf->vport_id); vf 2022 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->configured_features = 0; vf 2023 drivers/net/ethernet/qlogic/qed/qed_sriov.c memset(&vf->shadow_config, 0, sizeof(vf->shadow_config)); vf 2026 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_VPORT_TEARDOWN, vf 2032 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf, vf 2035 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 2065 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_send_response(p_hwfn, p_ptt, vf, length, status); vf 2106 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 2110 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 2121 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!qed_iov_validate_rxq(p_hwfn, vf, req->rx_qid, vf 2123 drivers/net/ethernet/qlogic/qed/qed_sriov.c !qed_iov_validate_sb(p_hwfn, vf, req->hw_sb)) vf 2126 drivers/net/ethernet/qlogic/qed/qed_sriov.c qid_usage_idx = qed_iov_vf_mbx_qid(p_hwfn, vf, false); vf 2130 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_queue = &vf->vf_queues[req->rx_qid]; vf 2134 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf_legacy = qed_vf_calculate_legacy(vf); vf 2139 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.vport_id = vf->vport_id; vf 2140 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.stats_id = vf->abs_vf_id + 0x10; vf 2148 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf_params.vfid = vf->relative_vf_id; vf 2152 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_cid = qed_eth_queue_to_cid(p_hwfn, vf->opaque_fid, vf 2163 drivers/net/ethernet/qlogic/qed/qed_sriov.c MSTORM_ETH_VF_PRODS_OFFSET(vf->abs_vf_id, req->rx_qid), vf 2177 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_active_rxqs++; vf 2181 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vf_mbx_start_rxq_resp(p_hwfn, p_ptt, vf, status, vf 2439 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 2443 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 2457 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!qed_iov_validate_txq(p_hwfn, vf, req->tx_qid, vf 2459 drivers/net/ethernet/qlogic/qed/qed_sriov.c !qed_iov_validate_sb(p_hwfn, vf, req->hw_sb)) vf 2462 drivers/net/ethernet/qlogic/qed/qed_sriov.c qid_usage_idx = qed_iov_vf_mbx_qid(p_hwfn, vf, true); vf 2466 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_queue = &vf->vf_queues[req->tx_qid]; vf 2470 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf_legacy = qed_vf_calculate_legacy(vf); vf 2474 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.vport_id = vf->vport_id; vf 2475 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.stats_id = vf->abs_vf_id + 0x10; vf 2484 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf_params.vfid = vf->relative_vf_id; vf 2489 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_cid = qed_eth_queue_to_cid(p_hwfn, vf->opaque_fid, vf 2494 drivers/net/ethernet/qlogic/qed/qed_sriov.c pq = qed_get_cm_pq_idx_vf(p_hwfn, vf->relative_vf_id); vf 2508 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vf_mbx_start_txq_resp(p_hwfn, p_ptt, vf, cid, status); vf 2512 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf, vf 2519 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!qed_iov_validate_rxq(p_hwfn, vf, rxq_id, QED_IOV_VALIDATE_Q_NA)) { vf 2523 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id, rxq_id, qid_usage_idx); vf 2527 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_queue = &vf->vf_queues[rxq_id]; vf 2540 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id, vf 2553 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->num_active_rxqs--; vf 2559 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf, vf 2565 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!qed_iov_validate_txq(p_hwfn, vf, txq_id, QED_IOV_VALIDATE_Q_NA)) vf 2568 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_queue = &vf->vf_queues[txq_id]; vf 2583 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 2586 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 2600 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id); vf 2606 drivers/net/ethernet/qlogic/qed/qed_sriov.c qid_usage_idx = qed_iov_vf_mbx_qid(p_hwfn, vf, false); vf 2610 drivers/net/ethernet/qlogic/qed/qed_sriov.c rc = qed_iov_vf_stop_rxqs(p_hwfn, vf, req->rx_qid, vf 2615 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_STOP_RXQS, vf 2621 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 2624 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 2638 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id); vf 2644 drivers/net/ethernet/qlogic/qed/qed_sriov.c qid_usage_idx = qed_iov_vf_mbx_qid(p_hwfn, vf, true); vf 2648 drivers/net/ethernet/qlogic/qed/qed_sriov.c rc = qed_iov_vf_stop_txqs(p_hwfn, vf, req->tx_qid, qid_usage_idx); vf 2653 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_STOP_TXQS, vf 2659 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 2663 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 2676 drivers/net/ethernet/qlogic/qed/qed_sriov.c qid_usage_idx = qed_iov_vf_mbx_qid(p_hwfn, vf, false); vf 2683 drivers/net/ethernet/qlogic/qed/qed_sriov.c if ((vf->acquire.vfdev_info.capabilities & vf 2687 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id); vf 2695 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!qed_iov_validate_rxq(p_hwfn, vf, i, vf 2697 drivers/net/ethernet/qlogic/qed/qed_sriov.c !vf->vf_queues[i].cids[qid_usage_idx].p_cid || vf 2698 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->vf_queues[i].cids[qid_usage_idx].b_is_tx) { vf 2701 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id, req->rx_qid, vf 2711 drivers/net/ethernet/qlogic/qed/qed_sriov.c handlers[i] = vf->vf_queues[qid].cids[qid_usage_idx].p_cid; vf 2724 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_UPDATE_RXQ, vf 2885 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf, vf 2916 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_rss->rss_eng_id = vf->relative_vf_id + 1; vf 2928 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!qed_iov_validate_rxq(p_hwfn, vf, q_idx, vf 2933 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->relative_vf_id, q_idx); vf 2938 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_cid = qed_iov_get_vf_rx_queue_cid(&vf->vf_queues[q_idx]); vf 2951 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf, vf 3032 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 3036 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 3044 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf->vport_instance) { vf 3048 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id); vf 3059 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.opaque_fid = vf->opaque_fid; vf 3060 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.vport_id = vf->vport_id; vf 3067 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vp_update_vlan_param(p_hwfn, ¶ms, vf, mbx, &tlvs_mask); vf 3072 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vp_update_sge_tpa_param(p_hwfn, vf, ¶ms, vf 3081 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vp_update_rss_param(p_hwfn, vf, ¶ms, p_rss_params, vf 3084 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (qed_iov_pre_update_vport(p_hwfn, vf->relative_vf_id, vf 3109 drivers/net/ethernet/qlogic/qed/qed_sriov.c length = qed_iov_prep_vp_update_resp_tlvs(p_hwfn, vf, mbx, status, vf 3111 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_send_response(p_hwfn, p_ptt, vf, length, status); vf 3252 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_public_vf_info *vf; vf 3254 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_public_vf_info(hwfn, vfid, true); vf 3255 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf) vf 3261 drivers/net/ethernet/qlogic/qed/qed_sriov.c ether_addr_copy(vf->mac, params->mac); vf 3263 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (vf->is_trusted_configured) { vf 3264 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_bulletin_set_mac(hwfn, vf->mac, vfid); vf 3276 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 3278 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_bulletin_content *p_bulletin = vf->bulletin.p_virt; vf 3279 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 3293 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.vport_to_remove_from = vf->vport_id; vf 3294 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.vport_to_add_to = vf->vport_id; vf 3301 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, params.opcode, params.type, vf 3309 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf->vport_instance) { vf 3313 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id); vf 3319 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (qed_iov_vf_update_unicast_shadow(p_hwfn, vf, ¶ms)) { vf 3347 drivers/net/ethernet/qlogic/qed/qed_sriov.c rc = qed_iov_chk_ucast(p_hwfn, vf->relative_vf_id, ¶ms); vf 3353 drivers/net/ethernet/qlogic/qed/qed_sriov.c rc = qed_sp_eth_filter_ucast(p_hwfn, vf->opaque_fid, ¶ms, vf 3359 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_UCAST_FILTER, vf 3365 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 3370 drivers/net/ethernet/qlogic/qed/qed_sriov.c for (i = 0; i < vf->num_sbs; i++) vf 3372 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->igu_sbs[i], vf 3373 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->opaque_fid, false); vf 3375 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_INT_CLEANUP, vf 3381 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_ptt *p_ptt, struct qed_vf_info *vf) vf 3387 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_vf_igu_set_int(p_hwfn, p_ptt, vf, 0); vf 3390 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_config_perm_table(p_hwfn, p_ptt, vf, 0); vf 3392 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_CLOSE, vf 3495 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf) vf 3497 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_iov_vf_mbx *mbx = &vf->vf_mbx; vf 3511 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!qed_iov_validate_rxq(p_hwfn, vf, qid, vf 3515 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, qid); vf 3519 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!qed_iov_validate_txq(p_hwfn, vf, qid, vf 3523 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, qid); vf 3530 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, rx_coal, tx_coal, qid); vf 3533 drivers/net/ethernet/qlogic/qed/qed_sriov.c p_cid = qed_iov_get_vf_rx_queue_cid(&vf->vf_queues[qid]); vf 3540 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id, vf->vf_queues[qid].fw_rx_qid); vf 3543 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->rx_coal = rx_coal; vf 3547 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_queue *p_queue = &vf->vf_queues[qid]; vf 3563 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->abs_vf_id); vf 3567 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->tx_coal = tx_coal; vf 3572 drivers/net/ethernet/qlogic/qed/qed_sriov.c qed_iov_prepare_resp(p_hwfn, p_ptt, vf, CHANNEL_TLV_COALESCE_UPDATE, vf 4283 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf; vf 4292 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_vf_info(p_hwfn, (u16) vfid, true); vf 4293 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf) vf 4298 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->req_spoofchk_val = val; vf 4303 drivers/net/ethernet/qlogic/qed/qed_sriov.c rc = __qed_iov_spoofchk_set(p_hwfn, vf, val); vf 4358 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf; vf 4362 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_vf_info(p_hwfn, (u16)vfid, true); vf 4363 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf) vf 4366 drivers/net/ethernet/qlogic/qed/qed_sriov.c rc = qed_fw_vport(p_hwfn, vf->vport_id, &abs_vp_id); vf 4379 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf; vf 4393 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_vf_info(QED_LEADING_HWFN(cdev), (u16)vfid, true); vf 4394 drivers/net/ethernet/qlogic/qed/qed_sriov.c vport_id = vf->vport_id; vf 4702 drivers/net/ethernet/qlogic/qed/qed_sriov.c ivi->vf = vf_id; vf 4811 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_public_vf_info *vf; vf 4813 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_public_vf_info(hwfn, vf_id, true); vf 4814 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf) vf 4817 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (vf->link_state == link_state) vf 4820 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->link_state = link_state; vf 4848 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_public_vf_info *vf; vf 4856 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_public_vf_info(p_hwfn, vfid, true); vf 4858 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->tx_rate = rate; vf 4889 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_public_vf_info *vf; vf 4897 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_public_vf_info(hwfn, vfid, true); vf 4899 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (vf->is_trusted_request == trust) vf 4901 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->is_trusted_request = trust; vf 5045 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf; vf 5050 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_vf_info(hwfn, vf_id, true); vf 5052 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf_info || !vf) vf 5057 drivers/net/ethernet/qlogic/qed/qed_sriov.c (vf->bulletin.p_virt->valid_bitmap & BIT(MAC_ADDR_FORCED))) { vf 5065 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (ether_addr_equal(vf->shadow_config.macs[i], vf 5067 drivers/net/ethernet/qlogic/qed/qed_sriov.c memset(vf->shadow_config.macs[i], 0, vf 5078 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf->bulletin.p_virt->valid_bitmap &= vf 5090 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (ether_addr_equal(vf->shadow_config.macs[i], vf 5092 drivers/net/ethernet/qlogic/qed/qed_sriov.c ether_addr_copy(vf->shadow_config.macs[i], vf 5113 drivers/net/ethernet/qlogic/qed/qed_sriov.c struct qed_vf_info *vf; vf 5135 drivers/net/ethernet/qlogic/qed/qed_sriov.c vf = qed_iov_get_vf_info(hwfn, i, true); vf 5136 drivers/net/ethernet/qlogic/qed/qed_sriov.c if (!vf->vport_instance) vf 5140 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.opaque_fid = vf->opaque_fid; vf 5141 drivers/net/ethernet/qlogic/qed/qed_sriov.c params.vport_id = vf->vport_id; vf 1764 drivers/net/ethernet/qlogic/qede/qede_filter.c if (act->queue.vf) vf 143 drivers/net/ethernet/qlogic/qede/qede_main.c static int qede_set_vf_vlan(struct net_device *ndev, int vf, u16 vlan, u8 qos, vf 157 drivers/net/ethernet/qlogic/qede/qede_main.c vlan, vf); vf 159 drivers/net/ethernet/qlogic/qede/qede_main.c return edev->ops->iov->set_vlan(edev->cdev, vlan, vf); vf 90 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov.h struct qlcnic_vf_info *vf; vf 268 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov.h struct qlcnic_vf_info *vf) {} vf 271 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov.h struct qlcnic_vf_info *vf) vf 147 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf; vf 191 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf = &sriov->vf_info[i]; vf 192 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->adapter = adapter; vf 193 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->pci_func = qlcnic_sriov_virtid_fn(adapter, i); vf 194 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c mutex_init(&vf->send_cmd_lock); vf 195 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock_init(&vf->vlan_list_lock); vf 196 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c INIT_LIST_HEAD(&vf->rcv_act.wait_list); vf 197 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c INIT_LIST_HEAD(&vf->rcv_pend.wait_list); vf 198 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock_init(&vf->rcv_act.lock); vf 199 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock_init(&vf->rcv_pend.lock); vf 200 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c init_completion(&vf->ch_free_cmpl); vf 202 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c INIT_WORK(&vf->trans_work, qlcnic_sriov_process_bc_cmd); vf 264 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf; vf 274 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf = &sriov->vf_info[i]; vf 275 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_cleanup_list(&vf->rcv_pend); vf 276 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c cancel_work_sync(&vf->trans_work); vf 277 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_cleanup_list(&vf->rcv_act); vf 822 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c static int qlcnic_sriov_clear_trans(struct qlcnic_vf_info *vf, vf 830 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c t_list = &vf->rcv_act; vf 839 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c while (test_and_set_bit(QLC_BC_VF_SEND, &vf->state)) vf 841 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->send_cmd = NULL; vf 842 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c clear_bit(QLC_BC_VF_SEND, &vf->state); vf 848 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf, vf 851 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (test_bit(QLC_BC_VF_FLR, &vf->state) || vf 852 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->adapter->need_fw_reset) vf 855 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c queue_work(sriov->bc.bc_trans_wq, &vf->trans_work); vf 891 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf = trans->vf; vf 892 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct completion *cmpl = &vf->ch_free_cmpl; vf 899 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c clear_bit(QLC_BC_VF_CHANNEL, &vf->state); vf 918 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c static int __qlcnic_sriov_issue_bc_post(struct qlcnic_vf_info *vf) vf 924 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (!test_and_set_bit(QLC_BC_VF_CHANNEL, &vf->state)) { vf 936 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf = trans->vf; vf 942 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (__qlcnic_sriov_issue_bc_post(vf)) vf 959 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c ret = qlcnic_sriov_post_bc_msg(vf->adapter, hdr, pay, vf 965 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf, u8 type) vf 971 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (test_bit(QLC_BC_VF_FLR, &vf->state) || vf 972 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->adapter->need_fw_reset) vf 994 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c clear_bit(QLC_BC_VF_CHANNEL, &vf->state); vf 1007 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf; vf 1013 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf = &adapter->ahw->sriov->vf_info[index]; vf 1014 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c trans->vf = vf; vf 1017 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (!test_bit(QLC_BC_VF_STATE, &vf->state)) { vf 1025 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c mutex_lock(&vf->send_cmd_lock); vf 1026 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->send_cmd = trans; vf 1027 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c err = __qlcnic_sriov_send_bc_msg(trans, vf, QLC_BC_COMMAND); vf 1028 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_clear_trans(vf, trans, QLC_BC_COMMAND); vf 1029 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c mutex_unlock(&vf->send_cmd_lock); vf 1049 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf = container_of(work, struct qlcnic_vf_info, vf 1052 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_adapter *adapter = vf->adapter; vf 1059 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (test_bit(QLC_BC_VF_FLR, &vf->state)) vf 1063 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c trans = list_first_entry(&vf->rcv_act.wait_list, vf 1065 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c adapter = vf->adapter; vf 1073 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c __qlcnic_sriov_send_bc_msg(trans, vf, QLC_BC_RESPONSE); vf 1077 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c req = qlcnic_sriov_clear_trans(vf, trans, QLC_BC_RESPONSE); vf 1080 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_schedule_bc_cmd(adapter->ahw->sriov, vf, vf 1085 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf) vf 1090 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (test_and_set_bit(QLC_BC_VF_SEND, &vf->state)) vf 1093 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c trans = vf->send_cmd; vf 1103 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_pull_bc_msg(vf->adapter, vf 1113 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c clear_bit(QLC_BC_VF_SEND, &vf->state); vf 1117 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf, vf 1120 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_trans_list *t_list = &vf->rcv_act; vf 1125 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_schedule_bc_cmd(sriov, vf, vf 1131 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf, vf 1134 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_trans_list *t_list = &vf->rcv_act; vf 1138 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c __qlcnic_sriov_add_act_list(sriov, vf, trans); vf 1145 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf, vf 1153 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock(&vf->rcv_pend.lock); vf 1154 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (vf->rcv_pend.count > 0) { vf 1155 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c list_for_each(node, &vf->rcv_pend.wait_list) { vf 1168 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_pull_bc_msg(vf->adapter, vf 1174 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->rcv_pend.count--; vf 1179 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_unlock(&vf->rcv_pend.lock); vf 1182 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (qlcnic_sriov_add_act_list(sriov, vf, trans)) vf 1190 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf) vf 1193 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_adapter *adapter = vf->adapter; vf 1202 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (!test_bit(QLC_BC_VF_STATE, &vf->state) && vf 1208 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_handle_pending_trans(sriov, vf, hdr); vf 1237 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_pull_bc_msg(vf->adapter, vf 1241 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c trans->func_id = vf->pci_func; vf 1242 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c trans->vf = vf; vf 1246 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (qlcnic_sriov_soft_flr_check(adapter, trans, vf)) vf 1250 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (qlcnic_sriov_add_act_list(sriov, vf, trans)) { vf 1255 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock(&vf->rcv_pend.lock); vf 1256 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c list_add_tail(&trans->list, &vf->rcv_pend.wait_list); vf 1257 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->rcv_pend.count++; vf 1258 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_unlock(&vf->rcv_pend.lock); vf 1263 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf) vf 1270 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c ptr[i - 2] = readl(QLCNIC_MBX_FW(vf->adapter->ahw, i)); vf 1275 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_handle_bc_cmd(sriov, &hdr, vf); vf 1278 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_handle_bc_resp(&hdr, vf); vf 1284 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf) vf 1286 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_adapter *adapter = vf->adapter; vf 1289 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_pf_handle_flr(sriov, vf); vf 1297 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf; vf 1309 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf = &sriov->vf_info[index]; vf 1310 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->pci_func = pci_func; vf 1313 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c complete(&vf->ch_free_cmpl); vf 1316 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_handle_flr_event(sriov, vf); vf 1321 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_handle_msg_event(sriov, vf); vf 1359 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c clear_bit(QLC_BC_VF_CHANNEL, &trans->vf->state); vf 1467 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf = &adapter->ahw->sriov->vf_info[0]; vf 1486 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c set_bit(QLC_BC_VF_STATE, &vf->state); vf 1488 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c clear_bit(QLC_BC_VF_STATE, &vf->state); vf 1500 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf; vf 1504 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf = &adapter->ahw->sriov->vf_info[0]; vf 1506 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (!qlcnic_sriov_check_any_vlan(vf)) { vf 1509 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock(&vf->vlan_list_lock); vf 1511 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vlan_id = vf->sriov_vlans[i]; vf 1516 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_unlock(&vf->vlan_list_lock); vf 1948 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf, u16 vlan_id) vf 1952 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (!vf->sriov_vlans) vf 1955 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock_bh(&vf->vlan_list_lock); vf 1958 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (vf->sriov_vlans[i] == vlan_id) { vf 1964 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_unlock_bh(&vf->vlan_list_lock); vf 1969 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf) vf 1973 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock_bh(&vf->vlan_list_lock); vf 1975 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (vf->num_vlan >= sriov->num_allowed_vlans) vf 1978 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_unlock_bh(&vf->vlan_list_lock); vf 1986 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf; vf 1991 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf = &adapter->ahw->sriov->vf_info[0]; vf 1992 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vlan_exist = qlcnic_sriov_check_any_vlan(vf); vf 2000 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (qlcnic_sriov_validate_num_vlans(sriov, vf)) vf 2013 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (!vlan_exist || qlcnic_sriov_check_vlan_id(sriov, vf, vid)) vf 2020 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c static void qlcnic_sriov_vlan_operation(struct qlcnic_vf_info *vf, u16 vlan_id, vf 2023 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_adapter *adapter = vf->adapter; vf 2028 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (!vf->sriov_vlans) vf 2031 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock_bh(&vf->vlan_list_lock); vf 2035 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_add_vlan_id(sriov, vf, vlan_id); vf 2038 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_del_vlan_id(sriov, vf, vlan_id); vf 2044 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_unlock_bh(&vf->vlan_list_lock); vf 2053 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf; vf 2061 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf = &adapter->ahw->sriov->vf_info[0]; vf 2084 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_vlan_operation(vf, vid, QLC_VLAN_ADD); vf 2086 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c qlcnic_sriov_vlan_operation(vf, vid, QLC_VLAN_DELETE); vf 2166 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf; vf 2170 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf = &sriov->vf_info[i]; vf 2171 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->sriov_vlans = kcalloc(sriov->num_allowed_vlans, vf 2172 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c sizeof(*vf->sriov_vlans), GFP_KERNEL); vf 2179 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf; vf 2183 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf = &sriov->vf_info[i]; vf 2184 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c kfree(vf->sriov_vlans); vf 2185 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->sriov_vlans = NULL; vf 2190 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf, u16 vlan_id) vf 2195 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (!vf->sriov_vlans[i]) { vf 2196 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->sriov_vlans[i] = vlan_id; vf 2197 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->num_vlan++; vf 2204 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c struct qlcnic_vf_info *vf, u16 vlan_id) vf 2209 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (vf->sriov_vlans[i] == vlan_id) { vf 2210 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->sriov_vlans[i] = 0; vf 2211 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c vf->num_vlan--; vf 2217 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c bool qlcnic_sriov_check_any_vlan(struct qlcnic_vf_info *vf) vf 2221 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_lock_bh(&vf->vlan_list_lock); vf 2223 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c if (vf->num_vlan) vf 2226 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c spin_unlock_bh(&vf->vlan_list_lock); vf 742 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 743 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vport *vp = vf->vp; vf 746 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c u16 func = vf->pci_func; vf 750 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c adapter = vf->adapter; vf 762 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c size = sizeof(*vf->sriov_vlans); vf 764 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c memset(vf->sriov_vlans, 0, size); vf 776 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c set_bit(QLC_BC_VF_STATE, &vf->state); vf 778 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c clear_bit(QLC_BC_VF_STATE, &vf->state); vf 788 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf, vf 799 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vp = vf->vp; vf 810 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vpid = qlcnic_sriov_pf_get_vport_handle(adapter, vf->pci_func); vf 855 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf, vf 864 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c spin_lock_bh(&vf->vlan_list_lock); vf 865 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (vf->num_vlan) { vf 867 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vlan = vf->sriov_vlans[i]; vf 869 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_cfg_vf_def_mac(adapter, vf, vlan, vf 873 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c spin_unlock_bh(&vf->vlan_list_lock); vf 875 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (vf->vp->vlan_mode != QLC_PVID_MODE) { vf 877 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_check_any_vlan(vf)) vf 879 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_cfg_vf_def_mac(adapter, vf, 0, opcode); vf 886 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = tran->vf; vf 887 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 897 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd->req.arg[6] = vf->vp->handle; vf 902 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->rx_ctx_id = mbx_out->ctx_id; vf 903 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_83xx_cfg_default_mac_vlan(adapter, vf, QLCNIC_MAC_ADD); vf 905 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->rx_ctx_id = 0; vf 914 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 925 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c mac = vf->vp->mac; vf 946 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 947 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 957 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd->req.arg[5] |= vf->vp->handle << 16; vf 961 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->tx_ctx_id = mbx_out->ctx_id; vf 963 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->tx_ctx_id = 0; vf 969 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c static int qlcnic_sriov_validate_del_rx_ctx(struct qlcnic_vf_info *vf, vf 975 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if ((cmd->req.arg[1] & 0xffff) != vf->rx_ctx_id) vf 984 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 985 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 988 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_del_rx_ctx(vf, cmd); vf 994 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_83xx_cfg_default_mac_vlan(adapter, vf, QLCNIC_MAC_DEL); vf 995 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd->req.arg[1] |= vf->vp->handle << 16; vf 999 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->rx_ctx_id = 0; vf 1004 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c static int qlcnic_sriov_validate_del_tx_ctx(struct qlcnic_vf_info *vf, vf 1010 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if ((cmd->req.arg[1] & 0xffff) != vf->tx_ctx_id) vf 1019 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1020 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1023 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_del_tx_ctx(vf, cmd); vf 1029 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd->req.arg[1] |= vf->vp->handle << 16; vf 1033 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->tx_ctx_id = 0; vf 1038 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c static int qlcnic_sriov_validate_cfg_lro(struct qlcnic_vf_info *vf, vf 1041 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if ((cmd->req.arg[1] >> 16) != vf->rx_ctx_id) vf 1050 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1051 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1054 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_cfg_lro(vf, cmd); vf 1067 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1068 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1071 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd->req.arg[1] |= vf->vp->handle << 16; vf 1078 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c static int qlcnic_sriov_validate_cfg_intrpt(struct qlcnic_vf_info *vf, vf 1081 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (((cmd->req.arg[1] >> 8) & 0xff) != vf->pci_func) vf 1096 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1097 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1100 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_cfg_intrpt(vf, cmd); vf 1110 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf, vf 1113 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (cmd->req.arg[1] != vf->rx_ctx_id) vf 1125 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1126 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1129 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_mtu(adapter, vf, cmd); vf 1138 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c static int qlcnic_sriov_validate_get_nic_info(struct qlcnic_vf_info *vf, vf 1142 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (((cmd->req.arg[1] >> 16) & 0x7fff) != vf->pci_func) vf 1145 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd->req.arg[1] |= vf->vp->handle << 16; vf 1154 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1155 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1158 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_get_nic_info(vf, cmd); vf 1168 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c static int qlcnic_sriov_validate_cfg_rss(struct qlcnic_vf_info *vf, vf 1171 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (cmd->req.arg[1] != vf->rx_ctx_id) vf 1180 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1181 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1184 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_cfg_rss(vf, cmd); vf 1194 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf, vf 1209 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (ctx_id != vf->rx_ctx_id || pkts > coal->rx_packets || vf 1214 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (ctx_id != vf->tx_ctx_id || pkts > coal->tx_packets || vf 1228 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->rx_ctx_id, coal->rx_packets, coal->rx_time_us, vf 1229 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->tx_ctx_id, coal->tx_packets, coal->tx_time_us); vf 1239 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = tran->vf; vf 1240 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1243 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_cfg_intrcoal(adapter, vf, cmd); vf 1254 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf, vf 1257 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vport *vp = vf->vp; vf 1263 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd->req.arg[1] |= (vf->vp->handle << 16); vf 1281 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1282 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1285 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_cfg_macvlan(adapter, vf, cmd); vf 1295 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c static int qlcnic_sriov_validate_linkevent(struct qlcnic_vf_info *vf, vf 1298 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if ((cmd->req.arg[1] >> 16) != vf->rx_ctx_id) vf 1307 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1308 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1311 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_validate_linkevent(vf, cmd); vf 1324 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1325 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1328 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd->req.arg[1] |= vf->vp->handle << 16; vf 1337 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = trans->vf; vf 1338 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vport *vp = vf->vp; vf 1343 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c adapter = vf->adapter; vf 1368 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf, vf 1374 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (!qlcnic_sriov_check_any_vlan(vf)) vf 1378 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (!vf->rx_ctx_id) { vf 1379 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_del_vlan_id(sriov, vf, vlan); vf 1383 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_cfg_vf_def_mac(adapter, vf, vlan, QLCNIC_MAC_DEL); vf 1384 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_del_vlan_id(sriov, vf, vlan); vf 1387 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_cfg_vf_def_mac(adapter, vf, vf 1393 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf, vf 1400 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (qlcnic_83xx_pf_check(adapter) && qlcnic_sriov_check_any_vlan(vf)) vf 1405 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (!vf->rx_ctx_id) { vf 1406 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_add_vlan_id(sriov, vf, vlan); vf 1411 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_cfg_vf_def_mac(adapter, vf, 0, vf 1417 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_cfg_vf_def_mac(adapter, vf, vlan, QLCNIC_MAC_ADD); vf 1421 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_cfg_vf_def_mac(adapter, vf, 0, vf 1426 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_add_vlan_id(sriov, vf, vlan); vf 1433 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf = tran->vf; vf 1434 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1435 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vport *vp = vf->vp; vf 1447 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_pf_add_guest_vlan(adapter, vf, cmd); vf 1449 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c err = qlcnic_sriov_pf_del_guest_vlan(adapter, vf, cmd); vf 1595 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf) vf 1600 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (!vf->rx_ctx_id) vf 1606 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vpid = qlcnic_sriov_pf_get_vport_handle(adapter, vf->pci_func); vf 1608 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd.req.arg[1] = vf->rx_ctx_id | (vpid & 0xffff) << 16; vf 1612 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->pci_func); vf 1614 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->rx_ctx_id = 0; vf 1621 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf) vf 1626 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (!vf->tx_ctx_id) vf 1632 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vpid = qlcnic_sriov_pf_get_vport_handle(adapter, vf->pci_func); vf 1634 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cmd.req.arg[1] |= vf->tx_ctx_id | (vpid & 0xffff) << 16; vf 1638 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->pci_func); vf 1640 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->tx_ctx_id = 0; vf 1647 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf, vf 1650 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_trans_list *t_list = &vf->rcv_act; vf 1655 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c __qlcnic_sriov_add_act_list(sriov, vf, trans); vf 1661 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c static void __qlcnic_sriov_process_flr(struct qlcnic_vf_info *vf) vf 1663 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_adapter *adapter = vf->adapter; vf 1665 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_cleanup_list(&vf->rcv_pend); vf 1666 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cancel_work_sync(&vf->trans_work); vf 1667 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_cleanup_list(&vf->rcv_act); vf 1669 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (test_bit(QLC_BC_VF_SOFT_FLR, &vf->state)) { vf 1670 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_del_tx_ctx(adapter, vf); vf 1671 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_del_rx_ctx(adapter, vf); vf 1674 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_pf_config_vport(adapter, 0, vf->pci_func); vf 1676 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c clear_bit(QLC_BC_VF_FLR, &vf->state); vf 1677 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (test_bit(QLC_BC_VF_SOFT_FLR, &vf->state)) { vf 1678 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_add_act_list_irqsave(adapter->ahw->sriov, vf, vf 1679 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->flr_trans); vf 1680 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c clear_bit(QLC_BC_VF_SOFT_FLR, &vf->state); vf 1681 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->flr_trans = NULL; vf 1687 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf; vf 1689 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf = container_of(work, struct qlcnic_vf_info, flr_work); vf 1690 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c __qlcnic_sriov_process_flr(vf); vf 1695 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf, vf 1698 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (test_bit(__QLCNIC_RESETTING, &vf->adapter->state)) vf 1701 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c INIT_WORK(&vf->flr_work, func); vf 1702 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c queue_work(sriov->bc.bc_flr_wq, &vf->flr_work); vf 1707 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf) vf 1711 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c set_bit(QLC_BC_VF_FLR, &vf->state); vf 1712 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c clear_bit(QLC_BC_VF_STATE, &vf->state); vf 1713 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c set_bit(QLC_BC_VF_SOFT_FLR, &vf->state); vf 1714 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->flr_trans = trans; vf 1715 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_schedule_flr(sriov, vf, qlcnic_sriov_pf_process_flr); vf 1717 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->pci_func); vf 1722 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf) vf 1728 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c test_bit(QLC_BC_VF_STATE, &vf->state)) { vf 1729 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_handle_soft_flr(adapter, trans, vf); vf 1737 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf) vf 1739 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct net_device *dev = vf->adapter->netdev; vf 1740 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vport *vp = vf->vp; vf 1742 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (!test_and_clear_bit(QLC_BC_VF_STATE, &vf->state)) { vf 1743 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c clear_bit(QLC_BC_VF_FLR, &vf->state); vf 1747 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (test_and_set_bit(QLC_BC_VF_FLR, &vf->state)) { vf 1749 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->pci_func); vf 1754 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c memset(vf->sriov_vlans, 0, vf 1755 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c sizeof(*vf->sriov_vlans) * sriov->num_allowed_vlans); vf 1757 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c qlcnic_sriov_schedule_flr(sriov, vf, qlcnic_sriov_pf_process_flr); vf 1758 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c netdev_info(dev, "FLR received for PCI func %d\n", vf->pci_func); vf 1765 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vf_info *vf; vf 1770 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf = &sriov->vf_info[i]; vf 1771 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->rx_ctx_id = 0; vf 1772 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf->tx_ctx_id = 0; vf 1773 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c cancel_work_sync(&vf->flr_work); vf 1774 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c __qlcnic_sriov_process_flr(vf); vf 1775 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c clear_bit(QLC_BC_VF_STATE, &vf->state); vf 1801 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c int qlcnic_sriov_set_vf_mac(struct net_device *netdev, int vf, u8 *mac) vf 1814 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (!is_valid_ether_addr(mac) || vf >= num_vfs) vf 1832 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf_info = &sriov->vf_info[vf]; vf 1838 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf); vf 1844 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c mac, vf); vf 1848 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c int qlcnic_sriov_set_vf_tx_rate(struct net_device *netdev, int vf, vf 1861 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (vf >= sriov->num_vfs) vf 1864 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf_info = &sriov->vf_info[vf]; vf 1905 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c max_tx_rate, vp->max_tx_bw, vf); vf 1909 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c min_tx_rate, vp->min_tx_bw, vf); vf 1913 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c int qlcnic_sriov_set_vf_vlan(struct net_device *netdev, int vf, vf 1924 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (vf >= sriov->num_vfs || qos > 7) vf 1937 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf_info = &sriov->vf_info[vf]; vf 1942 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf); vf 1965 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vlan, qos, vf); vf 1970 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c struct qlcnic_vport *vp, int vf) vf 1986 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vp->vlan_mode, vf); vf 1993 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c int vf, struct ifla_vf_info *ivi) vf 2002 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (vf >= sriov->num_vfs) vf 2005 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vp = sriov->vf_info[vf].vp; vf 2007 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c ivi->vlan = qlcnic_sriov_get_vf_vlan(adapter, vp, vf); vf 2019 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c ivi->vf = vf; vf 2023 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c int qlcnic_sriov_set_vf_spoofchk(struct net_device *netdev, int vf, bool chk) vf 2033 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c if (vf >= sriov->num_vfs) vf 2036 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf_info = &sriov->vf_info[vf]; vf 2041 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c vf); vf 1063 drivers/net/ethernet/sfc/ef10.c struct ef10_vf *vf; vf 1070 drivers/net/ethernet/sfc/ef10.c vf = nic_data_pf->vf + nic_data->vf_index; vf 1071 drivers/net/ethernet/sfc/ef10.c vf->efx = NULL; vf 1214 drivers/net/ethernet/sfc/ef10.c if (!nic_data_pf->vf) { vf 1237 drivers/net/ethernet/sfc/ef10.c nic_data_p->vf[nic_data->vf_index].efx = efx; vf 1238 drivers/net/ethernet/sfc/ef10.c nic_data_p->vf[nic_data->vf_index].pci_dev = vf 1509 drivers/net/ethernet/sfc/ef10.c if (nic_data->vf) vf 1511 drivers/net/ethernet/sfc/ef10.c nic_data->vf[i].vport_id = 0; vf 5894 drivers/net/ethernet/sfc/ef10.c struct ef10_vf *vf = nic_data->vf + i; vf 5896 drivers/net/ethernet/sfc/ef10.c if (vf->efx == efx) { vf 5897 drivers/net/ethernet/sfc/ef10.c ether_addr_copy(vf->mac, vf 118 drivers/net/ethernet/sfc/ef10_sriov.c if (!nic_data->vf) vf 122 drivers/net/ethernet/sfc/ef10_sriov.c struct ef10_vf *vf = nic_data->vf + i; vf 125 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->pci_dev && vf 126 drivers/net/ethernet/sfc/ef10_sriov.c vf->pci_dev->dev_flags & PCI_DEV_FLAGS_ASSIGNED) vf 129 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->vport_assigned) { vf 131 drivers/net/ethernet/sfc/ef10_sriov.c vf->vport_assigned = 0; vf 134 drivers/net/ethernet/sfc/ef10_sriov.c if (!is_zero_ether_addr(vf->mac)) { vf 135 drivers/net/ethernet/sfc/ef10_sriov.c efx_ef10_vport_del_mac(efx, vf->vport_id, vf->mac); vf 136 drivers/net/ethernet/sfc/ef10_sriov.c eth_zero_addr(vf->mac); vf 139 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->vport_id) { vf 140 drivers/net/ethernet/sfc/ef10_sriov.c efx_ef10_vport_free(efx, vf->vport_id); vf 141 drivers/net/ethernet/sfc/ef10_sriov.c vf->vport_id = 0; vf 144 drivers/net/ethernet/sfc/ef10_sriov.c vf->efx = NULL; vf 153 drivers/net/ethernet/sfc/ef10_sriov.c kfree(nic_data->vf); vf 154 drivers/net/ethernet/sfc/ef10_sriov.c nic_data->vf = NULL; vf 161 drivers/net/ethernet/sfc/ef10_sriov.c struct ef10_vf *vf = nic_data->vf + vf_i; vf 164 drivers/net/ethernet/sfc/ef10_sriov.c if (WARN_ON_ONCE(!nic_data->vf)) vf 169 drivers/net/ethernet/sfc/ef10_sriov.c vf->vlan, &vf->vport_id); vf 173 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_vport_add_mac(efx, vf->vport_id, vf->mac); vf 175 drivers/net/ethernet/sfc/ef10_sriov.c eth_zero_addr(vf->mac); vf 179 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_evb_port_assign(efx, vf->vport_id, vf_i); vf 183 drivers/net/ethernet/sfc/ef10_sriov.c vf->vport_assigned = 1; vf 193 drivers/net/ethernet/sfc/ef10_sriov.c nic_data->vf = kcalloc(efx->vf_count, sizeof(struct ef10_vf), vf 195 drivers/net/ethernet/sfc/ef10_sriov.c if (!nic_data->vf) vf 199 drivers/net/ethernet/sfc/ef10_sriov.c eth_random_addr(nic_data->vf[i].mac); vf 200 drivers/net/ethernet/sfc/ef10_sriov.c nic_data->vf[i].efx = NULL; vf 201 drivers/net/ethernet/sfc/ef10_sriov.c nic_data->vf[i].vlan = EFX_EF10_NO_VLAN; vf 211 drivers/net/ethernet/sfc/ef10_sriov.c kfree(nic_data->vf); vf 212 drivers/net/ethernet/sfc/ef10_sriov.c nic_data->vf = NULL; vf 446 drivers/net/ethernet/sfc/ef10_sriov.c if (!nic_data->vf) { vf 455 drivers/net/ethernet/sfc/ef10_sriov.c struct efx_nic *vf_efx = nic_data->vf[i].efx; vf 489 drivers/net/ethernet/sfc/ef10_sriov.c struct ef10_vf *vf; vf 492 drivers/net/ethernet/sfc/ef10_sriov.c if (!nic_data->vf) vf 497 drivers/net/ethernet/sfc/ef10_sriov.c vf = nic_data->vf + vf_i; vf 499 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->efx) { vf 500 drivers/net/ethernet/sfc/ef10_sriov.c efx_device_detach_sync(vf->efx); vf 501 drivers/net/ethernet/sfc/ef10_sriov.c efx_net_stop(vf->efx->net_dev); vf 503 drivers/net/ethernet/sfc/ef10_sriov.c down_write(&vf->efx->filter_sem); vf 504 drivers/net/ethernet/sfc/ef10_sriov.c vf->efx->type->filter_table_remove(vf->efx); vf 506 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_vadaptor_free(vf->efx, EVB_PORT_ID_ASSIGNED); vf 508 drivers/net/ethernet/sfc/ef10_sriov.c up_write(&vf->efx->filter_sem); vf 517 drivers/net/ethernet/sfc/ef10_sriov.c if (!is_zero_ether_addr(vf->mac)) { vf 518 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_vport_del_vf_mac(efx, vf->vport_id, vf->mac); vf 524 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_vport_add_mac(efx, vf->vport_id, mac); vf 526 drivers/net/ethernet/sfc/ef10_sriov.c eth_zero_addr(vf->mac); vf 529 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->efx) vf 530 drivers/net/ethernet/sfc/ef10_sriov.c ether_addr_copy(vf->efx->net_dev->dev_addr, mac); vf 533 drivers/net/ethernet/sfc/ef10_sriov.c ether_addr_copy(vf->mac, mac); vf 535 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_evb_port_assign(efx, vf->vport_id, vf_i); vf 539 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->efx) { vf 541 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_vadaptor_alloc(vf->efx, EVB_PORT_ID_ASSIGNED); vf 543 drivers/net/ethernet/sfc/ef10_sriov.c up_write(&vf->efx->filter_sem); vf 546 drivers/net/ethernet/sfc/ef10_sriov.c vf->efx->type->filter_table_probe(vf->efx); vf 547 drivers/net/ethernet/sfc/ef10_sriov.c up_write(&vf->efx->filter_sem); vf 548 drivers/net/ethernet/sfc/ef10_sriov.c efx_net_open(vf->efx->net_dev); vf 549 drivers/net/ethernet/sfc/ef10_sriov.c efx_device_attach_if_not_resetting(vf->efx); vf 555 drivers/net/ethernet/sfc/ef10_sriov.c eth_zero_addr(vf->mac); vf 563 drivers/net/ethernet/sfc/ef10_sriov.c struct ef10_vf *vf; vf 572 drivers/net/ethernet/sfc/ef10_sriov.c vf = nic_data->vf + vf_i; vf 575 drivers/net/ethernet/sfc/ef10_sriov.c if (new_vlan == vf->vlan) vf 578 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->efx) { vf 579 drivers/net/ethernet/sfc/ef10_sriov.c efx_device_detach_sync(vf->efx); vf 580 drivers/net/ethernet/sfc/ef10_sriov.c efx_net_stop(vf->efx->net_dev); vf 582 drivers/net/ethernet/sfc/ef10_sriov.c mutex_lock(&vf->efx->mac_lock); vf 583 drivers/net/ethernet/sfc/ef10_sriov.c down_write(&vf->efx->filter_sem); vf 584 drivers/net/ethernet/sfc/ef10_sriov.c vf->efx->type->filter_table_remove(vf->efx); vf 586 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_vadaptor_free(vf->efx, EVB_PORT_ID_ASSIGNED); vf 591 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->vport_assigned) { vf 602 drivers/net/ethernet/sfc/ef10_sriov.c vf->vport_assigned = 0; vf 605 drivers/net/ethernet/sfc/ef10_sriov.c if (!is_zero_ether_addr(vf->mac)) { vf 606 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_vport_del_mac(efx, vf->vport_id, vf->mac); vf 611 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->vport_id) { vf 612 drivers/net/ethernet/sfc/ef10_sriov.c rc = efx_ef10_vport_free(efx, vf->vport_id); vf 615 drivers/net/ethernet/sfc/ef10_sriov.c vf->vport_id = 0; vf 619 drivers/net/ethernet/sfc/ef10_sriov.c vf->vlan = new_vlan; vf 624 drivers/net/ethernet/sfc/ef10_sriov.c vf->vlan, &vf->vport_id); vf 629 drivers/net/ethernet/sfc/ef10_sriov.c if (!is_zero_ether_addr(vf->mac)) { vf 630 drivers/net/ethernet/sfc/ef10_sriov.c rc2 = efx_ef10_vport_add_mac(efx, vf->vport_id, vf->mac); vf 632 drivers/net/ethernet/sfc/ef10_sriov.c eth_zero_addr(vf->mac); vf 638 drivers/net/ethernet/sfc/ef10_sriov.c rc2 = efx_ef10_evb_port_assign(efx, vf->vport_id, vf_i); vf 642 drivers/net/ethernet/sfc/ef10_sriov.c vf->vport_assigned = 1; vf 645 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->efx) { vf 646 drivers/net/ethernet/sfc/ef10_sriov.c rc2 = efx_ef10_vadaptor_alloc(vf->efx, EVB_PORT_ID_ASSIGNED); vf 652 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->efx) { vf 653 drivers/net/ethernet/sfc/ef10_sriov.c rc2 = vf->efx->type->filter_table_probe(vf->efx); vf 657 drivers/net/ethernet/sfc/ef10_sriov.c up_write(&vf->efx->filter_sem); vf 658 drivers/net/ethernet/sfc/ef10_sriov.c mutex_unlock(&vf->efx->mac_lock); vf 660 drivers/net/ethernet/sfc/ef10_sriov.c rc2 = efx_net_open(vf->efx->net_dev); vf 664 drivers/net/ethernet/sfc/ef10_sriov.c efx_device_attach_if_not_resetting(vf->efx); vf 669 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->efx) { vf 670 drivers/net/ethernet/sfc/ef10_sriov.c up_write(&vf->efx->filter_sem); vf 671 drivers/net/ethernet/sfc/ef10_sriov.c mutex_unlock(&vf->efx->mac_lock); vf 674 drivers/net/ethernet/sfc/ef10_sriov.c if (vf->efx) { vf 677 drivers/net/ethernet/sfc/ef10_sriov.c efx_schedule_reset(vf->efx, RESET_TYPE_DATAPATH); vf 723 drivers/net/ethernet/sfc/ef10_sriov.c struct ef10_vf *vf; vf 730 drivers/net/ethernet/sfc/ef10_sriov.c if (!nic_data->vf) vf 733 drivers/net/ethernet/sfc/ef10_sriov.c vf = nic_data->vf + vf_i; vf 735 drivers/net/ethernet/sfc/ef10_sriov.c ivf->vf = vf_i; vf 738 drivers/net/ethernet/sfc/ef10_sriov.c ether_addr_copy(ivf->mac, vf->mac); vf 739 drivers/net/ethernet/sfc/ef10_sriov.c ivf->vlan = (vf->vlan == EFX_EF10_NO_VLAN) ? 0 : vf->vlan; vf 42 drivers/net/ethernet/sfc/ef10_sriov.h int efx_ef10_sriov_set_vf_mac(struct efx_nic *efx, int vf, u8 *mac); vf 47 drivers/net/ethernet/sfc/ef10_sriov.h int efx_ef10_sriov_set_vf_spoofchk(struct efx_nic *efx, int vf, vf 242 drivers/net/ethernet/sfc/nic.h struct siena_vf *vf; vf 432 drivers/net/ethernet/sfc/nic.h struct ef10_vf *vf; vf 190 drivers/net/ethernet/sfc/siena_sriov.c static unsigned abs_index(struct siena_vf *vf, unsigned index) vf 192 drivers/net/ethernet/sfc/siena_sriov.c return EFX_VI_BASE + vf->index * efx_vf_size(vf->efx) + index; vf 300 drivers/net/ethernet/sfc/siena_sriov.c static void efx_siena_sriov_reset_tx_filter(struct siena_vf *vf) vf 302 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 307 drivers/net/ethernet/sfc/siena_sriov.c if (vf->tx_filter_id != -1) { vf 309 drivers/net/ethernet/sfc/siena_sriov.c vf->tx_filter_id); vf 311 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name, vf->tx_filter_id); vf 312 drivers/net/ethernet/sfc/siena_sriov.c vf->tx_filter_id = -1; vf 315 drivers/net/ethernet/sfc/siena_sriov.c if (is_zero_ether_addr(vf->addr.mac_addr)) vf 321 drivers/net/ethernet/sfc/siena_sriov.c if (vf->tx_filter_mode == VF_TX_FILTER_AUTO && vf_max_tx_channels <= 2) vf 322 drivers/net/ethernet/sfc/siena_sriov.c vf->tx_filter_mode = VF_TX_FILTER_ON; vf 324 drivers/net/ethernet/sfc/siena_sriov.c vlan = ntohs(vf->addr.tci) & VLAN_VID_MASK; vf 325 drivers/net/ethernet/sfc/siena_sriov.c efx_filter_init_tx(&filter, abs_index(vf, 0)); vf 328 drivers/net/ethernet/sfc/siena_sriov.c vf->addr.mac_addr); vf 335 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name); vf 338 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name, rc); vf 339 drivers/net/ethernet/sfc/siena_sriov.c vf->tx_filter_id = rc; vf 344 drivers/net/ethernet/sfc/siena_sriov.c static void efx_siena_sriov_reset_rx_filter(struct siena_vf *vf) vf 346 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 351 drivers/net/ethernet/sfc/siena_sriov.c if (vf->rx_filter_id != -1) { vf 353 drivers/net/ethernet/sfc/siena_sriov.c vf->rx_filter_id); vf 355 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name, vf->rx_filter_id); vf 356 drivers/net/ethernet/sfc/siena_sriov.c vf->rx_filter_id = -1; vf 359 drivers/net/ethernet/sfc/siena_sriov.c if (!vf->rx_filtering || is_zero_ether_addr(vf->addr.mac_addr)) vf 362 drivers/net/ethernet/sfc/siena_sriov.c vlan = ntohs(vf->addr.tci) & VLAN_VID_MASK; vf 364 drivers/net/ethernet/sfc/siena_sriov.c vf->rx_filter_flags, vf 365 drivers/net/ethernet/sfc/siena_sriov.c abs_index(vf, vf->rx_filter_qid)); vf 368 drivers/net/ethernet/sfc/siena_sriov.c vf->addr.mac_addr); vf 375 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name); vf 378 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name, rc); vf 379 drivers/net/ethernet/sfc/siena_sriov.c vf->rx_filter_id = rc; vf 383 drivers/net/ethernet/sfc/siena_sriov.c static void __efx_siena_sriov_update_vf_addr(struct siena_vf *vf) vf 385 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 388 drivers/net/ethernet/sfc/siena_sriov.c efx_siena_sriov_reset_tx_filter(vf); vf 389 drivers/net/ethernet/sfc/siena_sriov.c efx_siena_sriov_reset_rx_filter(vf); vf 398 drivers/net/ethernet/sfc/siena_sriov.c static void __efx_siena_sriov_push_vf_status(struct siena_vf *vf) vf 400 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 409 drivers/net/ethernet/sfc/siena_sriov.c WARN_ON(!mutex_is_locked(&vf->status_lock)); vf 410 drivers/net/ethernet/sfc/siena_sriov.c WARN_ON(!vf->status_addr); vf 412 drivers/net/ethernet/sfc/siena_sriov.c status->local = vf->addr; vf 418 drivers/net/ethernet/sfc/siena_sriov.c copy[0].to_rid = vf->pci_rid; vf 419 drivers/net/ethernet/sfc/siena_sriov.c copy[0].to_addr = vf->status_addr + offsetof(struct vfdi_status, vf 429 drivers/net/ethernet/sfc/siena_sriov.c copy[1].to_rid = vf->pci_rid; vf 430 drivers/net/ethernet/sfc/siena_sriov.c copy[1].to_addr = vf->status_addr + data_offset; vf 437 drivers/net/ethernet/sfc/siena_sriov.c if (count == vf->peer_page_count) { vf 446 drivers/net/ethernet/sfc/siena_sriov.c copy[pos].to_rid = vf->pci_rid; vf 447 drivers/net/ethernet/sfc/siena_sriov.c copy[pos].to_addr = vf->peer_page_addrs[count]; vf 459 drivers/net/ethernet/sfc/siena_sriov.c copy[pos].to_rid = vf->pci_rid; vf 460 drivers/net/ethernet/sfc/siena_sriov.c copy[pos].to_addr = vf->status_addr + offsetof(struct vfdi_status, vf 468 drivers/net/ethernet/sfc/siena_sriov.c VFDI_EV_SEQ, (vf->msg_seqno & 0xff), vf 470 drivers/net/ethernet/sfc/siena_sriov.c ++vf->msg_seqno; vf 472 drivers/net/ethernet/sfc/siena_sriov.c EFX_VI_BASE + vf->index * efx_vf_size(efx), vf 522 drivers/net/ethernet/sfc/siena_sriov.c *vf_out = nic_data->vf + vf_i; vf 528 drivers/net/ethernet/sfc/siena_sriov.c static int efx_vfdi_init_evq(struct siena_vf *vf) vf 530 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 531 drivers/net/ethernet/sfc/siena_sriov.c struct vfdi_req *req = vf->buf.addr; vf 534 drivers/net/ethernet/sfc/siena_sriov.c unsigned abs_evq = abs_index(vf, vf_evq); vf 535 drivers/net/ethernet/sfc/siena_sriov.c unsigned buftbl = EFX_BUFTBL_EVQ_BASE(vf, vf_evq); vf 543 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name, vf_evq, buf_count); vf 561 drivers/net/ethernet/sfc/siena_sriov.c memcpy(vf->evq0_addrs, req->u.init_evq.addr, vf 563 drivers/net/ethernet/sfc/siena_sriov.c vf->evq0_count = buf_count; vf 569 drivers/net/ethernet/sfc/siena_sriov.c static int efx_vfdi_init_rxq(struct siena_vf *vf) vf 571 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 572 drivers/net/ethernet/sfc/siena_sriov.c struct vfdi_req *req = vf->buf.addr; vf 576 drivers/net/ethernet/sfc/siena_sriov.c unsigned buftbl = EFX_BUFTBL_RXQ_BASE(vf, vf_rxq); vf 586 drivers/net/ethernet/sfc/siena_sriov.c "buf_count %d\n", vf->pci_name, vf_rxq, vf 590 drivers/net/ethernet/sfc/siena_sriov.c if (__test_and_set_bit(req->u.init_rxq.index, vf->rxq_mask)) vf 591 drivers/net/ethernet/sfc/siena_sriov.c ++vf->rxq_count; vf 597 drivers/net/ethernet/sfc/siena_sriov.c FRF_AZ_RX_DESCQ_EVQ_ID, abs_index(vf, vf_evq), vf 605 drivers/net/ethernet/sfc/siena_sriov.c abs_index(vf, vf_rxq)); vf 610 drivers/net/ethernet/sfc/siena_sriov.c static int efx_vfdi_init_txq(struct siena_vf *vf) vf 612 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 613 drivers/net/ethernet/sfc/siena_sriov.c struct vfdi_req *req = vf->buf.addr; vf 617 drivers/net/ethernet/sfc/siena_sriov.c unsigned buftbl = EFX_BUFTBL_TXQ_BASE(vf, vf_txq); vf 627 drivers/net/ethernet/sfc/siena_sriov.c "buf_count %d\n", vf->pci_name, vf_txq, vf 632 drivers/net/ethernet/sfc/siena_sriov.c mutex_lock(&vf->txq_lock); vf 633 drivers/net/ethernet/sfc/siena_sriov.c if (__test_and_set_bit(req->u.init_txq.index, vf->txq_mask)) vf 634 drivers/net/ethernet/sfc/siena_sriov.c ++vf->txq_count; vf 635 drivers/net/ethernet/sfc/siena_sriov.c mutex_unlock(&vf->txq_lock); vf 638 drivers/net/ethernet/sfc/siena_sriov.c eth_filt_en = vf->tx_filter_mode == VF_TX_FILTER_ON; vf 646 drivers/net/ethernet/sfc/siena_sriov.c FRF_AZ_TX_DESCQ_EVQ_ID, abs_index(vf, vf_evq), vf 651 drivers/net/ethernet/sfc/siena_sriov.c abs_index(vf, vf_txq)); vf 657 drivers/net/ethernet/sfc/siena_sriov.c static bool efx_vfdi_flush_wake(struct siena_vf *vf) vf 662 drivers/net/ethernet/sfc/siena_sriov.c return (!vf->txq_count && !vf->rxq_count) || vf 663 drivers/net/ethernet/sfc/siena_sriov.c atomic_read(&vf->rxq_retry_count); vf 666 drivers/net/ethernet/sfc/siena_sriov.c static void efx_vfdi_flush_clear(struct siena_vf *vf) vf 668 drivers/net/ethernet/sfc/siena_sriov.c memset(vf->txq_mask, 0, sizeof(vf->txq_mask)); vf 669 drivers/net/ethernet/sfc/siena_sriov.c vf->txq_count = 0; vf 670 drivers/net/ethernet/sfc/siena_sriov.c memset(vf->rxq_mask, 0, sizeof(vf->rxq_mask)); vf 671 drivers/net/ethernet/sfc/siena_sriov.c vf->rxq_count = 0; vf 672 drivers/net/ethernet/sfc/siena_sriov.c memset(vf->rxq_retry_mask, 0, sizeof(vf->rxq_retry_mask)); vf 673 drivers/net/ethernet/sfc/siena_sriov.c atomic_set(&vf->rxq_retry_count, 0); vf 676 drivers/net/ethernet/sfc/siena_sriov.c static int efx_vfdi_fini_all_queues(struct siena_vf *vf) vf 678 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 681 drivers/net/ethernet/sfc/siena_sriov.c unsigned vf_offset = EFX_VI_BASE + vf->index * efx_vf_size(efx); vf 697 drivers/net/ethernet/sfc/siena_sriov.c if (test_bit(index, vf->txq_mask)) { vf 704 drivers/net/ethernet/sfc/siena_sriov.c if (test_bit(index, vf->rxq_mask)) { vf 712 drivers/net/ethernet/sfc/siena_sriov.c atomic_set(&vf->rxq_retry_count, 0); vf 713 drivers/net/ethernet/sfc/siena_sriov.c while (timeout && (vf->rxq_count || vf->txq_count)) { vf 719 drivers/net/ethernet/sfc/siena_sriov.c timeout = wait_event_timeout(vf->flush_waitq, vf 720 drivers/net/ethernet/sfc/siena_sriov.c efx_vfdi_flush_wake(vf), vf 724 drivers/net/ethernet/sfc/siena_sriov.c if (test_and_clear_bit(index, vf->rxq_retry_mask)) { vf 725 drivers/net/ethernet/sfc/siena_sriov.c atomic_dec(&vf->rxq_retry_count); vf 750 drivers/net/ethernet/sfc/siena_sriov.c efx_siena_sriov_bufs(efx, vf->buftbl_base, NULL, vf 752 drivers/net/ethernet/sfc/siena_sriov.c efx_vfdi_flush_clear(vf); vf 754 drivers/net/ethernet/sfc/siena_sriov.c vf->evq0_count = 0; vf 759 drivers/net/ethernet/sfc/siena_sriov.c static int efx_vfdi_insert_filter(struct siena_vf *vf) vf 761 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 763 drivers/net/ethernet/sfc/siena_sriov.c struct vfdi_req *req = vf->buf.addr; vf 767 drivers/net/ethernet/sfc/siena_sriov.c if (bad_vf_index(efx, vf_rxq) || vf->rx_filtering) { vf 771 drivers/net/ethernet/sfc/siena_sriov.c "flags 0x%x\n", vf->pci_name, vf_rxq, vf 781 drivers/net/ethernet/sfc/siena_sriov.c vf->rx_filter_flags = flags; vf 782 drivers/net/ethernet/sfc/siena_sriov.c vf->rx_filter_qid = vf_rxq; vf 783 drivers/net/ethernet/sfc/siena_sriov.c vf->rx_filtering = true; vf 785 drivers/net/ethernet/sfc/siena_sriov.c efx_siena_sriov_reset_rx_filter(vf); vf 791 drivers/net/ethernet/sfc/siena_sriov.c static int efx_vfdi_remove_all_filters(struct siena_vf *vf) vf 793 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 796 drivers/net/ethernet/sfc/siena_sriov.c vf->rx_filtering = false; vf 797 drivers/net/ethernet/sfc/siena_sriov.c efx_siena_sriov_reset_rx_filter(vf); vf 803 drivers/net/ethernet/sfc/siena_sriov.c static int efx_vfdi_set_status_page(struct siena_vf *vf) vf 805 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 807 drivers/net/ethernet/sfc/siena_sriov.c struct vfdi_req *req = vf->buf.addr; vf 818 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name); vf 823 drivers/net/ethernet/sfc/siena_sriov.c mutex_lock(&vf->status_lock); vf 824 drivers/net/ethernet/sfc/siena_sriov.c vf->status_addr = req->u.set_status_page.dma_addr; vf 826 drivers/net/ethernet/sfc/siena_sriov.c kfree(vf->peer_page_addrs); vf 827 drivers/net/ethernet/sfc/siena_sriov.c vf->peer_page_addrs = NULL; vf 828 drivers/net/ethernet/sfc/siena_sriov.c vf->peer_page_count = 0; vf 831 drivers/net/ethernet/sfc/siena_sriov.c vf->peer_page_addrs = kcalloc(page_count, sizeof(u64), vf 833 drivers/net/ethernet/sfc/siena_sriov.c if (vf->peer_page_addrs) { vf 834 drivers/net/ethernet/sfc/siena_sriov.c memcpy(vf->peer_page_addrs, vf 837 drivers/net/ethernet/sfc/siena_sriov.c vf->peer_page_count = page_count; vf 841 drivers/net/ethernet/sfc/siena_sriov.c __efx_siena_sriov_push_vf_status(vf); vf 842 drivers/net/ethernet/sfc/siena_sriov.c mutex_unlock(&vf->status_lock); vf 848 drivers/net/ethernet/sfc/siena_sriov.c static int efx_vfdi_clear_status_page(struct siena_vf *vf) vf 850 drivers/net/ethernet/sfc/siena_sriov.c mutex_lock(&vf->status_lock); vf 851 drivers/net/ethernet/sfc/siena_sriov.c vf->status_addr = 0; vf 852 drivers/net/ethernet/sfc/siena_sriov.c mutex_unlock(&vf->status_lock); vf 857 drivers/net/ethernet/sfc/siena_sriov.c typedef int (*efx_vfdi_op_t)(struct siena_vf *vf); vf 872 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf = container_of(work, struct siena_vf, req); vf 873 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 874 drivers/net/ethernet/sfc/siena_sriov.c struct vfdi_req *req = vf->buf.addr; vf 880 drivers/net/ethernet/sfc/siena_sriov.c copy[0].from_rid = vf->pci_rid; vf 881 drivers/net/ethernet/sfc/siena_sriov.c copy[0].from_addr = vf->req_addr; vf 883 drivers/net/ethernet/sfc/siena_sriov.c copy[0].to_addr = vf->buf.dma_addr; vf 891 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name, -rc); vf 892 drivers/net/ethernet/sfc/siena_sriov.c vf->busy = false; vf 897 drivers/net/ethernet/sfc/siena_sriov.c rc = vfdi_ops[req->op](vf); vf 901 drivers/net/ethernet/sfc/siena_sriov.c req->op, vf->pci_name); vf 906 drivers/net/ethernet/sfc/siena_sriov.c "%llx\n", req->op, vf->pci_name, vf 907 drivers/net/ethernet/sfc/siena_sriov.c (unsigned long long)vf->req_addr); vf 912 drivers/net/ethernet/sfc/siena_sriov.c vf->busy = false; vf 921 drivers/net/ethernet/sfc/siena_sriov.c copy[0].to_rid = vf->pci_rid; vf 922 drivers/net/ethernet/sfc/siena_sriov.c copy[0].to_addr = vf->req_addr + offsetof(struct vfdi_req, rc); vf 925 drivers/net/ethernet/sfc/siena_sriov.c copy[1].to_rid = vf->pci_rid; vf 926 drivers/net/ethernet/sfc/siena_sriov.c copy[1].to_addr = vf->req_addr + offsetof(struct vfdi_req, op); vf 939 drivers/net/ethernet/sfc/siena_sriov.c static void efx_siena_sriov_reset_vf(struct siena_vf *vf, vf 942 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 952 drivers/net/ethernet/sfc/siena_sriov.c if (!vf->evq0_count) vf 954 drivers/net/ethernet/sfc/siena_sriov.c BUG_ON(vf->evq0_count & (vf->evq0_count - 1)); vf 956 drivers/net/ethernet/sfc/siena_sriov.c mutex_lock(&vf->status_lock); vf 959 drivers/net/ethernet/sfc/siena_sriov.c VFDI_EV_SEQ, vf->msg_seqno, vf 961 drivers/net/ethernet/sfc/siena_sriov.c vf->msg_seqno++; vf 965 drivers/net/ethernet/sfc/siena_sriov.c for (pos = 0; pos < vf->evq0_count; pos += count) { vf 966 drivers/net/ethernet/sfc/siena_sriov.c count = min_t(unsigned, vf->evq0_count - pos, vf 972 drivers/net/ethernet/sfc/siena_sriov.c copy_req[k].to_rid = vf->pci_rid; vf 973 drivers/net/ethernet/sfc/siena_sriov.c copy_req[k].to_addr = vf->evq0_addrs[pos + k]; vf 981 drivers/net/ethernet/sfc/siena_sriov.c ": %d\n", vf->pci_name, -rc); vf 987 drivers/net/ethernet/sfc/siena_sriov.c abs_evq = abs_index(vf, 0); vf 988 drivers/net/ethernet/sfc/siena_sriov.c buftbl = EFX_BUFTBL_EVQ_BASE(vf, 0); vf 989 drivers/net/ethernet/sfc/siena_sriov.c efx_siena_sriov_bufs(efx, buftbl, vf->evq0_addrs, vf->evq0_count); vf 998 drivers/net/ethernet/sfc/siena_sriov.c FRF_AZ_EVQ_SIZE, __ffs(vf->evq0_count), vf 1004 drivers/net/ethernet/sfc/siena_sriov.c mutex_unlock(&vf->status_lock); vf 1009 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf = container_of(work, struct siena_vf, req); vf 1010 drivers/net/ethernet/sfc/siena_sriov.c struct efx_nic *efx = vf->efx; vf 1014 drivers/net/ethernet/sfc/siena_sriov.c efx_siena_sriov_reset_vf(vf, &buf); vf 1082 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1104 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + pos; vf 1106 drivers/net/ethernet/sfc/siena_sriov.c mutex_lock(&vf->status_lock); vf 1107 drivers/net/ethernet/sfc/siena_sriov.c if (vf->rx_filtering && !is_zero_ether_addr(vf->addr.mac_addr)) { vf 1108 drivers/net/ethernet/sfc/siena_sriov.c *peer++ = vf->addr; vf 1113 drivers/net/ethernet/sfc/siena_sriov.c mutex_unlock(&vf->status_lock); vf 1160 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + pos; vf 1162 drivers/net/ethernet/sfc/siena_sriov.c mutex_lock(&vf->status_lock); vf 1163 drivers/net/ethernet/sfc/siena_sriov.c if (vf->status_addr) vf 1164 drivers/net/ethernet/sfc/siena_sriov.c __efx_siena_sriov_push_vf_status(vf); vf 1165 drivers/net/ethernet/sfc/siena_sriov.c mutex_unlock(&vf->status_lock); vf 1195 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1198 drivers/net/ethernet/sfc/siena_sriov.c nic_data->vf = kcalloc(efx->vf_count, sizeof(*nic_data->vf), vf 1200 drivers/net/ethernet/sfc/siena_sriov.c if (!nic_data->vf) vf 1204 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + index; vf 1206 drivers/net/ethernet/sfc/siena_sriov.c vf->efx = efx; vf 1207 drivers/net/ethernet/sfc/siena_sriov.c vf->index = index; vf 1208 drivers/net/ethernet/sfc/siena_sriov.c vf->rx_filter_id = -1; vf 1209 drivers/net/ethernet/sfc/siena_sriov.c vf->tx_filter_mode = VF_TX_FILTER_AUTO; vf 1210 drivers/net/ethernet/sfc/siena_sriov.c vf->tx_filter_id = -1; vf 1211 drivers/net/ethernet/sfc/siena_sriov.c INIT_WORK(&vf->req, efx_siena_sriov_vfdi); vf 1212 drivers/net/ethernet/sfc/siena_sriov.c INIT_WORK(&vf->reset_work, efx_siena_sriov_reset_vf_work); vf 1213 drivers/net/ethernet/sfc/siena_sriov.c init_waitqueue_head(&vf->flush_waitq); vf 1214 drivers/net/ethernet/sfc/siena_sriov.c mutex_init(&vf->status_lock); vf 1215 drivers/net/ethernet/sfc/siena_sriov.c mutex_init(&vf->txq_lock); vf 1224 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1228 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + pos; vf 1230 drivers/net/ethernet/sfc/siena_sriov.c efx_nic_free_buffer(efx, &vf->buf); vf 1231 drivers/net/ethernet/sfc/siena_sriov.c kfree(vf->peer_page_addrs); vf 1232 drivers/net/ethernet/sfc/siena_sriov.c vf->peer_page_addrs = NULL; vf 1233 drivers/net/ethernet/sfc/siena_sriov.c vf->peer_page_count = 0; vf 1235 drivers/net/ethernet/sfc/siena_sriov.c vf->evq0_count = 0; vf 1245 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1258 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + index; vf 1261 drivers/net/ethernet/sfc/siena_sriov.c vf->buftbl_base = buftbl_base; vf 1264 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_rid = devfn; vf 1265 drivers/net/ethernet/sfc/siena_sriov.c snprintf(vf->pci_name, sizeof(vf->pci_name), vf 1270 drivers/net/ethernet/sfc/siena_sriov.c rc = efx_nic_alloc_buffer(efx, &vf->buf, EFX_PAGE_SIZE, vf 1358 drivers/net/ethernet/sfc/siena_sriov.c kfree(nic_data->vf); vf 1369 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1385 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + pos; vf 1386 drivers/net/ethernet/sfc/siena_sriov.c cancel_work_sync(&vf->req); vf 1387 drivers/net/ethernet/sfc/siena_sriov.c cancel_work_sync(&vf->reset_work); vf 1396 drivers/net/ethernet/sfc/siena_sriov.c kfree(nic_data->vf); vf 1404 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1419 drivers/net/ethernet/sfc/siena_sriov.c if (map_vi_index(efx, qid, &vf, NULL)) vf 1421 drivers/net/ethernet/sfc/siena_sriov.c if (vf->busy) vf 1426 drivers/net/ethernet/sfc/siena_sriov.c vf->req_type = VFDI_EV_TYPE_REQ_WORD0; vf 1427 drivers/net/ethernet/sfc/siena_sriov.c vf->req_seqno = seq + 1; vf 1428 drivers/net/ethernet/sfc/siena_sriov.c vf->req_addr = 0; vf 1429 drivers/net/ethernet/sfc/siena_sriov.c } else if (seq != (vf->req_seqno++ & 0xff) || type != vf->req_type) vf 1432 drivers/net/ethernet/sfc/siena_sriov.c switch (vf->req_type) { vf 1436 drivers/net/ethernet/sfc/siena_sriov.c vf->req_addr |= (u64)data << (vf->req_type << 4); vf 1437 drivers/net/ethernet/sfc/siena_sriov.c ++vf->req_type; vf 1441 drivers/net/ethernet/sfc/siena_sriov.c vf->req_addr |= (u64)data << 48; vf 1442 drivers/net/ethernet/sfc/siena_sriov.c vf->req_type = VFDI_EV_TYPE_REQ_WORD0; vf 1443 drivers/net/ethernet/sfc/siena_sriov.c vf->busy = true; vf 1444 drivers/net/ethernet/sfc/siena_sriov.c queue_work(vfdi_workqueue, &vf->req); vf 1452 drivers/net/ethernet/sfc/siena_sriov.c vf->pci_name); vf 1454 drivers/net/ethernet/sfc/siena_sriov.c vf->req_type = VFDI_EV_TYPE_REQ_WORD0; vf 1455 drivers/net/ethernet/sfc/siena_sriov.c vf->req_seqno = seq + 1; vf 1461 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1465 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + vf_i; vf 1467 drivers/net/ethernet/sfc/siena_sriov.c "FLR on VF %s\n", vf->pci_name); vf 1469 drivers/net/ethernet/sfc/siena_sriov.c vf->status_addr = 0; vf 1470 drivers/net/ethernet/sfc/siena_sriov.c efx_vfdi_remove_all_filters(vf); vf 1471 drivers/net/ethernet/sfc/siena_sriov.c efx_vfdi_flush_clear(vf); vf 1473 drivers/net/ethernet/sfc/siena_sriov.c vf->evq0_count = 0; vf 1492 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1496 drivers/net/ethernet/sfc/siena_sriov.c if (map_vi_index(efx, queue, &vf, &qid)) vf 1499 drivers/net/ethernet/sfc/siena_sriov.c if (!test_bit(qid, vf->txq_mask)) vf 1502 drivers/net/ethernet/sfc/siena_sriov.c __clear_bit(qid, vf->txq_mask); vf 1503 drivers/net/ethernet/sfc/siena_sriov.c --vf->txq_count; vf 1505 drivers/net/ethernet/sfc/siena_sriov.c if (efx_vfdi_flush_wake(vf)) vf 1506 drivers/net/ethernet/sfc/siena_sriov.c wake_up(&vf->flush_waitq); vf 1511 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1517 drivers/net/ethernet/sfc/siena_sriov.c if (map_vi_index(efx, queue, &vf, &qid)) vf 1519 drivers/net/ethernet/sfc/siena_sriov.c if (!test_bit(qid, vf->rxq_mask)) vf 1523 drivers/net/ethernet/sfc/siena_sriov.c set_bit(qid, vf->rxq_retry_mask); vf 1524 drivers/net/ethernet/sfc/siena_sriov.c atomic_inc(&vf->rxq_retry_count); vf 1526 drivers/net/ethernet/sfc/siena_sriov.c __clear_bit(qid, vf->rxq_mask); vf 1527 drivers/net/ethernet/sfc/siena_sriov.c --vf->rxq_count; vf 1529 drivers/net/ethernet/sfc/siena_sriov.c if (efx_vfdi_flush_wake(vf)) vf 1530 drivers/net/ethernet/sfc/siena_sriov.c wake_up(&vf->flush_waitq); vf 1536 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1539 drivers/net/ethernet/sfc/siena_sriov.c if (map_vi_index(efx, dmaq, &vf, &rel)) vf 1545 drivers/net/ethernet/sfc/siena_sriov.c vf->index, rel); vf 1546 drivers/net/ethernet/sfc/siena_sriov.c queue_work(vfdi_workqueue, &vf->reset_work); vf 1555 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1569 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + vf_i; vf 1570 drivers/net/ethernet/sfc/siena_sriov.c efx_siena_sriov_reset_vf(vf, &buf); vf 1596 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1600 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + vf_i; vf 1602 drivers/net/ethernet/sfc/siena_sriov.c mutex_lock(&vf->status_lock); vf 1603 drivers/net/ethernet/sfc/siena_sriov.c ether_addr_copy(vf->addr.mac_addr, mac); vf 1604 drivers/net/ethernet/sfc/siena_sriov.c __efx_siena_sriov_update_vf_addr(vf); vf 1605 drivers/net/ethernet/sfc/siena_sriov.c mutex_unlock(&vf->status_lock); vf 1614 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1619 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + vf_i; vf 1621 drivers/net/ethernet/sfc/siena_sriov.c mutex_lock(&vf->status_lock); vf 1623 drivers/net/ethernet/sfc/siena_sriov.c vf->addr.tci = htons(tci); vf 1624 drivers/net/ethernet/sfc/siena_sriov.c __efx_siena_sriov_update_vf_addr(vf); vf 1625 drivers/net/ethernet/sfc/siena_sriov.c mutex_unlock(&vf->status_lock); vf 1634 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1639 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + vf_i; vf 1641 drivers/net/ethernet/sfc/siena_sriov.c mutex_lock(&vf->txq_lock); vf 1642 drivers/net/ethernet/sfc/siena_sriov.c if (vf->txq_count == 0) { vf 1643 drivers/net/ethernet/sfc/siena_sriov.c vf->tx_filter_mode = vf 1650 drivers/net/ethernet/sfc/siena_sriov.c mutex_unlock(&vf->txq_lock); vf 1658 drivers/net/ethernet/sfc/siena_sriov.c struct siena_vf *vf; vf 1663 drivers/net/ethernet/sfc/siena_sriov.c vf = nic_data->vf + vf_i; vf 1665 drivers/net/ethernet/sfc/siena_sriov.c ivi->vf = vf_i; vf 1666 drivers/net/ethernet/sfc/siena_sriov.c ether_addr_copy(ivi->mac, vf->addr.mac_addr); vf 1669 drivers/net/ethernet/sfc/siena_sriov.c tci = ntohs(vf->addr.tci); vf 1672 drivers/net/ethernet/sfc/siena_sriov.c ivi->spoofchk = vf->tx_filter_mode == VF_TX_FILTER_ON; vf 49 drivers/net/ethernet/sfc/siena_sriov.h int efx_siena_sriov_set_vf_mac(struct efx_nic *efx, int vf, u8 *mac); vf 50 drivers/net/ethernet/sfc/siena_sriov.h int efx_siena_sriov_set_vf_vlan(struct efx_nic *efx, int vf, vf 52 drivers/net/ethernet/sfc/siena_sriov.h int efx_siena_sriov_set_vf_spoofchk(struct efx_nic *efx, int vf, vf 54 drivers/net/ethernet/sfc/siena_sriov.h int efx_siena_sriov_get_vf_config(struct efx_nic *efx, int vf, vf 224 drivers/net/hyperv/hyperv_net.h void netvsc_switch_datapath(struct net_device *nv_dev, bool vf); vf 33 drivers/net/hyperv/netvsc.c void netvsc_switch_datapath(struct net_device *ndev, bool vf) vf 42 drivers/net/hyperv/netvsc.c if (vf) vf 81 drivers/net/netdevsim/netdev.c static int nsim_set_vf_mac(struct net_device *dev, int vf, u8 *mac) vf 87 drivers/net/netdevsim/netdev.c if (vf >= nsim_bus_dev->num_vfs || is_multicast_ether_addr(mac)) vf 89 drivers/net/netdevsim/netdev.c memcpy(nsim_bus_dev->vfconfigs[vf].vf_mac, mac, ETH_ALEN); vf 94 drivers/net/netdevsim/netdev.c static int nsim_set_vf_vlan(struct net_device *dev, int vf, vf 100 drivers/net/netdevsim/netdev.c if (vf >= nsim_bus_dev->num_vfs || vlan > 4095 || qos > 7) vf 103 drivers/net/netdevsim/netdev.c nsim_bus_dev->vfconfigs[vf].vlan = vlan; vf 104 drivers/net/netdevsim/netdev.c nsim_bus_dev->vfconfigs[vf].qos = qos; vf 105 drivers/net/netdevsim/netdev.c nsim_bus_dev->vfconfigs[vf].vlan_proto = vlan_proto; vf 110 drivers/net/netdevsim/netdev.c static int nsim_set_vf_rate(struct net_device *dev, int vf, int min, int max) vf 115 drivers/net/netdevsim/netdev.c if (vf >= nsim_bus_dev->num_vfs) vf 118 drivers/net/netdevsim/netdev.c nsim_bus_dev->vfconfigs[vf].min_tx_rate = min; vf 119 drivers/net/netdevsim/netdev.c nsim_bus_dev->vfconfigs[vf].max_tx_rate = max; vf 124 drivers/net/netdevsim/netdev.c static int nsim_set_vf_spoofchk(struct net_device *dev, int vf, bool val) vf 129 drivers/net/netdevsim/netdev.c if (vf >= nsim_bus_dev->num_vfs) vf 131 drivers/net/netdevsim/netdev.c nsim_bus_dev->vfconfigs[vf].spoofchk_enabled = val; vf 136 drivers/net/netdevsim/netdev.c static int nsim_set_vf_rss_query_en(struct net_device *dev, int vf, bool val) vf 141 drivers/net/netdevsim/netdev.c if (vf >= nsim_bus_dev->num_vfs) vf 143 drivers/net/netdevsim/netdev.c nsim_bus_dev->vfconfigs[vf].rss_query_enabled = val; vf 148 drivers/net/netdevsim/netdev.c static int nsim_set_vf_trust(struct net_device *dev, int vf, bool val) vf 153 drivers/net/netdevsim/netdev.c if (vf >= nsim_bus_dev->num_vfs) vf 155 drivers/net/netdevsim/netdev.c nsim_bus_dev->vfconfigs[vf].trusted = val; vf 161 drivers/net/netdevsim/netdev.c nsim_get_vf_config(struct net_device *dev, int vf, struct ifla_vf_info *ivi) vf 166 drivers/net/netdevsim/netdev.c if (vf >= nsim_bus_dev->num_vfs) vf 169 drivers/net/netdevsim/netdev.c ivi->vf = vf; vf 170 drivers/net/netdevsim/netdev.c ivi->linkstate = nsim_bus_dev->vfconfigs[vf].link_state; vf 171 drivers/net/netdevsim/netdev.c ivi->min_tx_rate = nsim_bus_dev->vfconfigs[vf].min_tx_rate; vf 172 drivers/net/netdevsim/netdev.c ivi->max_tx_rate = nsim_bus_dev->vfconfigs[vf].max_tx_rate; vf 173 drivers/net/netdevsim/netdev.c ivi->vlan = nsim_bus_dev->vfconfigs[vf].vlan; vf 174 drivers/net/netdevsim/netdev.c ivi->vlan_proto = nsim_bus_dev->vfconfigs[vf].vlan_proto; vf 175 drivers/net/netdevsim/netdev.c ivi->qos = nsim_bus_dev->vfconfigs[vf].qos; vf 176 drivers/net/netdevsim/netdev.c memcpy(&ivi->mac, nsim_bus_dev->vfconfigs[vf].vf_mac, ETH_ALEN); vf 177 drivers/net/netdevsim/netdev.c ivi->spoofchk = nsim_bus_dev->vfconfigs[vf].spoofchk_enabled; vf 178 drivers/net/netdevsim/netdev.c ivi->trusted = nsim_bus_dev->vfconfigs[vf].trusted; vf 179 drivers/net/netdevsim/netdev.c ivi->rss_query_en = nsim_bus_dev->vfconfigs[vf].rss_query_enabled; vf 184 drivers/net/netdevsim/netdev.c static int nsim_set_vf_link_state(struct net_device *dev, int vf, int state) vf 189 drivers/net/netdevsim/netdev.c if (vf >= nsim_bus_dev->num_vfs) vf 201 drivers/net/netdevsim/netdev.c nsim_bus_dev->vfconfigs[vf].link_state = state; vf 288 drivers/s390/cio/chsc.c u8 vf; /* validity flags */ vf 452 drivers/s390/cio/chsc.c if ((sei_area->vf & 0xc0) != 0) { vf 454 drivers/s390/cio/chsc.c if ((sei_area->vf & 0xc0) == 0xc0) vf 1456 drivers/scsi/bfa/bfa_fcs.c bfa_fcs_vf_get_ports(bfa_fcs_vf_t *vf, wwn_t lpwwn[], int *nlports) vf 1463 drivers/scsi/bfa/bfa_fcs.c if (vf == NULL || lpwwn == NULL || *nlports == 0) vf 1466 drivers/scsi/bfa/bfa_fcs.c fcs = vf->fcs; vf 1468 drivers/scsi/bfa/bfa_fcs.c bfa_trc(fcs, vf->vf_id); vf 1471 drivers/scsi/bfa/bfa_fcs.c lpwwn[i++] = vf->bport.port_cfg.pwwn; vf 1473 drivers/scsi/bfa/bfa_fcs.c list_for_each(qe, &vf->vport_q) { vf 798 drivers/scsi/bfa/bfa_fcs.h void bfa_fcs_vf_get_ports(bfa_fcs_vf_t *vf, wwn_t vpwwn[], int *nports); vf 5869 drivers/scsi/bfa/bfa_fcs_lport.c bfa_fcs_vf_t *vf; vf 5873 drivers/scsi/bfa/bfa_fcs_lport.c vf = bfa_fcs_vf_lookup(fcs, vf_id); vf 5874 drivers/scsi/bfa/bfa_fcs_lport.c if (vf == NULL) { vf 5879 drivers/scsi/bfa/bfa_fcs_lport.c if (!lpwwn || (vf->bport.port_cfg.pwwn == lpwwn)) vf 5880 drivers/scsi/bfa/bfa_fcs_lport.c return &vf->bport; vf 5882 drivers/scsi/bfa/bfa_fcs_lport.c vport = bfa_fcs_fabric_vport_lookup(vf, lpwwn); vf 194 drivers/scsi/csiostor/csio_mb.c unsigned int pf, unsigned int vf, unsigned int nparams, vf 209 drivers/scsi/csiostor/csio_mb.c FW_PARAMS_CMD_VFN_V(vf)); vf 8126 drivers/scsi/lpfc/lpfc_init.c lpfc_sli4_bar2_register_memmap(struct lpfc_hba *phba, uint32_t vf) vf 8128 drivers/scsi/lpfc/lpfc_init.c if (vf > LPFC_VIR_FUNC_MAX) vf 8132 drivers/scsi/lpfc/lpfc_init.c vf * LPFC_VFR_PAGE_SIZE + vf 8135 drivers/scsi/lpfc/lpfc_init.c vf * LPFC_VFR_PAGE_SIZE + vf 8138 drivers/scsi/lpfc/lpfc_init.c vf * LPFC_VFR_PAGE_SIZE + vf 8142 drivers/scsi/lpfc/lpfc_init.c vf * LPFC_VFR_PAGE_SIZE + LPFC_MQ_DOORBELL); vf 8144 drivers/scsi/lpfc/lpfc_init.c vf * LPFC_VFR_PAGE_SIZE + LPFC_BMBX); vf 1608 drivers/staging/media/ipu3/ipu3-css.c const struct v4l2_pix_format_mplane *vf = vf 1695 drivers/staging/media/ipu3/ipu3-css.c if (vf->width < bi->info.isp.sp.output.min_width || vf 1696 drivers/staging/media/ipu3/ipu3-css.c vf->width > bi->info.isp.sp.output.max_width || vf 1697 drivers/staging/media/ipu3/ipu3-css.c vf->height < bi->info.isp.sp.output.min_height || vf 1698 drivers/staging/media/ipu3/ipu3-css.c vf->height > bi->info.isp.sp.output.max_height) vf 1748 drivers/staging/media/ipu3/ipu3-css.c struct v4l2_pix_format_mplane *in, *out, *vf; vf 1757 drivers/staging/media/ipu3/ipu3-css.c vf = &q[IPU3_CSS_QUEUE_VF].fmt.mpix; vf 1826 drivers/staging/media/ipu3/ipu3-css.c vf->width = imgu_css_adjust(vf->width, VF_ALIGN_W); vf 1827 drivers/staging/media/ipu3/ipu3-css.c vf->height = imgu_css_adjust(vf->height, 1); vf 1867 drivers/staging/media/ipu3/ipu3-css.c out->width, out->height, vf->width, vf->height); vf 84 drivers/video/fbdev/acornfb.h u_int vf; vf 2243 drivers/video/fbdev/omap2/omapfb/dss/dispc.c unsigned int hf, vf; vf 2259 drivers/video/fbdev/omap2/omapfb/dss/dispc.c vf = 2; vf 2261 drivers/video/fbdev/omap2/omapfb/dss/dispc.c vf = 1; vf 2263 drivers/video/fbdev/omap2/omapfb/dss/dispc.c return pclk * vf * hf; vf 21 include/linux/if_link.h __u32 vf; vf 311 include/linux/mlx4/cmd.h int mlx4_set_vf_mac(struct mlx4_dev *dev, int port, int vf, u8 *mac); vf 312 include/linux/mlx4/cmd.h int mlx4_set_vf_vlan(struct mlx4_dev *dev, int port, int vf, u16 vlan, vf 314 include/linux/mlx4/cmd.h int mlx4_set_vf_rate(struct mlx4_dev *dev, int port, int vf, int min_tx_rate, vf 316 include/linux/mlx4/cmd.h int mlx4_set_vf_spoofchk(struct mlx4_dev *dev, int port, int vf, bool setting); vf 317 include/linux/mlx4/cmd.h int mlx4_get_vf_config(struct mlx4_dev *dev, int port, int vf, struct ifla_vf_info *ivf); vf 318 include/linux/mlx4/cmd.h int mlx4_set_vf_link_state(struct mlx4_dev *dev, int port, int vf, int link_state); vf 130 include/linux/mlx5/vport.h int vf, u8 port_num, void *out, vf 134 include/linux/mlx5/vport.h int vf, vf 1302 include/linux/netdevice.h int vf, int min_tx_rate, vf 1305 include/linux/netdevice.h int vf, bool setting); vf 1307 include/linux/netdevice.h int vf, bool setting); vf 1309 include/linux/netdevice.h int vf, vf 1312 include/linux/netdevice.h int vf, int link_state); vf 1314 include/linux/netdevice.h int vf, vf 1318 include/linux/netdevice.h int vf, vf 1321 include/linux/netdevice.h int vf, struct sk_buff *skb); vf 1323 include/linux/netdevice.h int vf, u64 guid, vf 1327 include/linux/netdevice.h int vf, bool setting); vf 60 include/net/devlink.h u16 vf; /* Associated PCI VF for of the PCI PF for this port. */ vf 802 include/net/devlink.h u16 pf, u16 vf); vf 184 include/net/flow_offload.h u8 vf; vf 2444 include/rdma/ib_verbs.h int (*set_vf_link_state)(struct ib_device *device, int vf, u8 port, vf 2446 include/rdma/ib_verbs.h int (*get_vf_config)(struct ib_device *device, int vf, u8 port, vf 2448 include/rdma/ib_verbs.h int (*get_vf_stats)(struct ib_device *device, int vf, u8 port, vf 2450 include/rdma/ib_verbs.h int (*set_vf_guid)(struct ib_device *device, int vf, u8 port, u64 guid, vf 3303 include/rdma/ib_verbs.h int ib_set_vf_link_state(struct ib_device *device, int vf, u8 port, vf 3305 include/rdma/ib_verbs.h int ib_get_vf_config(struct ib_device *device, int vf, u8 port, vf 3307 include/rdma/ib_verbs.h int ib_get_vf_stats(struct ib_device *device, int vf, u8 port, vf 3309 include/rdma/ib_verbs.h int ib_set_vf_guid(struct ib_device *device, int vf, u8 port, u64 guid, vf 705 include/uapi/linux/if_link.h __u32 vf; vf 714 include/uapi/linux/if_link.h __u32 vf; vf 729 include/uapi/linux/if_link.h __u32 vf; vf 736 include/uapi/linux/if_link.h __u32 vf; vf 741 include/uapi/linux/if_link.h __u32 vf; vf 747 include/uapi/linux/if_link.h __u32 vf; vf 752 include/uapi/linux/if_link.h __u32 vf; vf 764 include/uapi/linux/if_link.h __u32 vf; vf 769 include/uapi/linux/if_link.h __u32 vf; vf 789 include/uapi/linux/if_link.h __u32 vf; vf 2104 kernel/trace/trace_events_filter.c #define DATA_REC(m, va, vb, vc, vd, ve, vf, vg, vh, nvisit) \ vf 2108 kernel/trace/trace_events_filter.c .e = ve, .f = vf, .g = vg, .h = vh }, \ vf 525 net/core/devlink.c attrs->pci_vf.vf)) vf 6556 net/core/devlink.c u16 pf, u16 vf) vf 6567 net/core/devlink.c attrs->pci_vf.vf = vf; vf 6601 net/core/devlink.c attrs->pci_vf.pf, attrs->pci_vf.vf); vf 3102 net/core/ethtool.c act->queue.vf = ethtool_get_flow_spec_ring_vf(fs->ring_cookie); vf 1037 net/core/rtnetlink.c int vf; vf 1044 net/core/rtnetlink.c for (vf = 0; vf < dev_num_vf(dev->dev.parent); vf++) { vf 1048 net/core/rtnetlink.c if (nla_put_u32(skb, IFLA_PORT_VF, vf)) vf 1050 net/core/rtnetlink.c err = dev->netdev_ops->ndo_get_vf_port(dev, vf, skb); vf 1195 net/core/rtnetlink.c struct nlattr *vf, *vfstats, *vfvlanlist; vf 1229 net/core/rtnetlink.c vf_mac.vf = vf 1230 net/core/rtnetlink.c vf_vlan.vf = vf 1231 net/core/rtnetlink.c vf_vlan_info.vf = vf 1232 net/core/rtnetlink.c vf_rate.vf = vf 1233 net/core/rtnetlink.c vf_tx_rate.vf = vf 1234 net/core/rtnetlink.c vf_spoofchk.vf = vf 1235 net/core/rtnetlink.c vf_linkstate.vf = vf 1236 net/core/rtnetlink.c vf_rss_query_en.vf = vf 1237 net/core/rtnetlink.c vf_trust.vf = ivi.vf; vf 1253 net/core/rtnetlink.c vf = nla_nest_start_noflag(skb, IFLA_VF_INFO); vf 1254 net/core/rtnetlink.c if (!vf) vf 1309 net/core/rtnetlink.c nla_nest_end(skb, vf); vf 1313 net/core/rtnetlink.c nla_nest_cancel(skb, vf); vf 2179 net/core/rtnetlink.c return ops->ndo_set_vf_guid(dev, ivt->vf, ivt->guid, guid_type); vf 2198 net/core/rtnetlink.c if (ivm->vf >= INT_MAX) vf 2202 net/core/rtnetlink.c err = ops->ndo_set_vf_mac(dev, ivm->vf, vf 2211 net/core/rtnetlink.c if (ivv->vf >= INT_MAX) vf 2215 net/core/rtnetlink.c err = ops->ndo_set_vf_vlan(dev, ivv->vf, ivv->vlan, vf 2245 net/core/rtnetlink.c if (ivvl[0]->vf >= INT_MAX) vf 2247 net/core/rtnetlink.c err = ops->ndo_set_vf_vlan(dev, ivvl[0]->vf, ivvl[0]->vlan, vf 2257 net/core/rtnetlink.c if (ivt->vf >= INT_MAX) vf 2261 net/core/rtnetlink.c err = ops->ndo_get_vf_config(dev, ivt->vf, &ivf); vf 2267 net/core/rtnetlink.c err = ops->ndo_set_vf_rate(dev, ivt->vf, vf 2277 net/core/rtnetlink.c if (ivt->vf >= INT_MAX) vf 2281 net/core/rtnetlink.c err = ops->ndo_set_vf_rate(dev, ivt->vf, vf 2291 net/core/rtnetlink.c if (ivs->vf >= INT_MAX) vf 2295 net/core/rtnetlink.c err = ops->ndo_set_vf_spoofchk(dev, ivs->vf, vf 2304 net/core/rtnetlink.c if (ivl->vf >= INT_MAX) vf 2308 net/core/rtnetlink.c err = ops->ndo_set_vf_link_state(dev, ivl->vf, vf 2319 net/core/rtnetlink.c if (ivrssq_en->vf >= INT_MAX) vf 2322 net/core/rtnetlink.c err = ops->ndo_set_vf_rss_query_en(dev, ivrssq_en->vf, vf 2331 net/core/rtnetlink.c if (ivt->vf >= INT_MAX) vf 2335 net/core/rtnetlink.c err = ops->ndo_set_vf_trust(dev, ivt->vf, ivt->setting); vf 2343 net/core/rtnetlink.c if (ivt->vf >= INT_MAX) vf 2353 net/core/rtnetlink.c if (ivt->vf >= INT_MAX) vf 2617 net/core/rtnetlink.c int vf; vf 2640 net/core/rtnetlink.c vf = nla_get_u32(port[IFLA_PORT_VF]); vf 2641 net/core/rtnetlink.c err = ops->ndo_set_vf_port(dev, vf, port); vf 705 tools/include/uapi/linux/if_link.h __u32 vf; vf 714 tools/include/uapi/linux/if_link.h __u32 vf; vf 729 tools/include/uapi/linux/if_link.h __u32 vf; vf 736 tools/include/uapi/linux/if_link.h __u32 vf; vf 741 tools/include/uapi/linux/if_link.h __u32 vf; vf 747 tools/include/uapi/linux/if_link.h __u32 vf; vf 752 tools/include/uapi/linux/if_link.h __u32 vf; vf 764 tools/include/uapi/linux/if_link.h __u32 vf; vf 769 tools/include/uapi/linux/if_link.h __u32 vf; vf 789 tools/include/uapi/linux/if_link.h __u32 vf; vf 1198 tools/perf/util/probe-finder.c struct local_vars_finder *vf = data; vf 1199 tools/perf/util/probe-finder.c struct probe_finder *pf = vf->pf; vf 1204 tools/perf/util/probe-finder.c (tag == DW_TAG_variable && vf->vars)) { vf 1205 tools/perf/util/probe-finder.c if (convert_variable_location(die_mem, vf->pf->addr, vf 1206 tools/perf/util/probe-finder.c vf->pf->fb_ops, &pf->sp_die, vf 1208 tools/perf/util/probe-finder.c vf->args[vf->nargs].var = (char *)dwarf_diename(die_mem); vf 1209 tools/perf/util/probe-finder.c if (vf->args[vf->nargs].var == NULL) { vf 1210 tools/perf/util/probe-finder.c vf->ret = -ENOMEM; vf 1213 tools/perf/util/probe-finder.c pr_debug(" %s", vf->args[vf->nargs].var); vf 1214 tools/perf/util/probe-finder.c vf->nargs++; vf 1218 tools/perf/util/probe-finder.c if (dwarf_haspc(die_mem, vf->pf->addr)) vf 1230 tools/perf/util/probe-finder.c struct local_vars_finder vf = {.pf = pf, .args = args, .vars = false, vf 1236 tools/perf/util/probe-finder.c vf.vars = true; vf 1244 tools/perf/util/probe-finder.c vf.nargs = n; vf 1246 tools/perf/util/probe-finder.c die_find_child(sc_die, copy_variables_cb, (void *)&vf, vf 1248 tools/perf/util/probe-finder.c pr_debug(" (%d)\n", vf.nargs - n); vf 1249 tools/perf/util/probe-finder.c if (vf.ret < 0) vf 1250 tools/perf/util/probe-finder.c return vf.ret; vf 1251 tools/perf/util/probe-finder.c n = vf.nargs;