Lines Matching defs:sriov

142 	struct qlcnic_sriov *sriov;
152 sriov = kzalloc(sizeof(struct qlcnic_sriov), GFP_KERNEL);
153 if (!sriov)
156 adapter->ahw->sriov = sriov;
157 sriov->num_vfs = num_vfs;
158 bc = &sriov->bc;
159 sriov->vf_info = kcalloc(num_vfs, sizeof(struct qlcnic_vf_info),
161 if (!sriov->vf_info) {
190 vf = &sriov->vf_info[i];
209 sriov->vf_info[i].vp = vp;
225 kfree(sriov->vf_info[i].vp);
232 kfree(sriov->vf_info);
235 kfree(adapter->ahw->sriov);
263 struct qlcnic_sriov *sriov = adapter->ahw->sriov;
264 struct qlcnic_back_channel *bc = &sriov->bc;
274 for (i = 0; i < sriov->num_vfs; i++) {
275 vf = &sriov->vf_info[i];
283 for (i = 0; i < sriov->num_vfs; i++)
284 kfree(sriov->vf_info[i].vp);
286 kfree(sriov->vf_info);
287 kfree(adapter->ahw->sriov);
436 struct qlcnic_sriov *sriov = adapter->ahw->sriov;
440 if (sriov->allowed_vlans)
443 sriov->any_vlan = cmd->rsp.arg[2] & 0xf;
444 sriov->num_allowed_vlans = cmd->rsp.arg[2] >> 16;
446 sriov->num_allowed_vlans);
452 if (!sriov->any_vlan)
455 num_vlans = sriov->num_allowed_vlans;
456 sriov->allowed_vlans = kcalloc(num_vlans, sizeof(u16), GFP_KERNEL);
457 if (!sriov->allowed_vlans)
462 sriov->allowed_vlans[i] = vlans[i];
469 struct qlcnic_sriov *sriov = adapter->ahw->sriov;
483 sriov->vlan_mode = cmd.rsp.arg[1] & 0x3;
484 switch (sriov->vlan_mode) {
684 struct qlcnic_vf_info *vf_info = adapter->ahw->sriov->vf_info;
690 for (i = 0; i < adapter->ahw->sriov->num_vfs; i++) {
849 static void qlcnic_sriov_schedule_bc_cmd(struct qlcnic_sriov *sriov,
857 queue_work(sriov->bc.bc_trans_wq, &vf->trans_work);
1015 vf = &adapter->ahw->sriov->vf_info[index];
1082 qlcnic_sriov_schedule_bc_cmd(adapter->ahw->sriov, vf,
1118 int __qlcnic_sriov_add_act_list(struct qlcnic_sriov *sriov,
1127 qlcnic_sriov_schedule_bc_cmd(sriov, vf,
1132 static int qlcnic_sriov_add_act_list(struct qlcnic_sriov *sriov,
1140 __qlcnic_sriov_add_act_list(sriov, vf, trans);
1146 static void qlcnic_sriov_handle_pending_trans(struct qlcnic_sriov *sriov,
1184 if (qlcnic_sriov_add_act_list(sriov, vf, trans))
1190 static void qlcnic_sriov_handle_bc_cmd(struct qlcnic_sriov *sriov,
1210 qlcnic_sriov_handle_pending_trans(sriov, vf, hdr);
1252 if (qlcnic_sriov_add_act_list(sriov, vf, trans)) {
1264 static void qlcnic_sriov_handle_msg_event(struct qlcnic_sriov *sriov,
1277 qlcnic_sriov_handle_bc_cmd(sriov, &hdr, vf);
1285 static void qlcnic_sriov_handle_flr_event(struct qlcnic_sriov *sriov,
1291 qlcnic_sriov_pf_handle_flr(sriov, vf);
1300 struct qlcnic_sriov *sriov;
1304 sriov = adapter->ahw->sriov;
1311 vf = &sriov->vf_info[index];
1318 qlcnic_sriov_handle_flr_event(sriov, vf);
1323 qlcnic_sriov_handle_msg_event(sriov, vf);
1381 u16 seq = ++adapter->ahw->sriov->bc.trans_counter;
1469 struct qlcnic_vf_info *vf = &adapter->ahw->sriov->vf_info[0];
1501 struct qlcnic_sriov *sriov = adapter->ahw->sriov;
1506 vf = &adapter->ahw->sriov->vf_info[0];
1512 for (i = 0; i < sriov->num_allowed_vlans; i++) {
1664 struct qlcnic_back_channel *bc = &adapter->ahw->sriov->bc;
1949 static int qlcnic_sriov_check_vlan_id(struct qlcnic_sriov *sriov,
1959 for (i = 0; i < sriov->num_allowed_vlans; i++) {
1970 static int qlcnic_sriov_validate_num_vlans(struct qlcnic_sriov *sriov,
1977 if (vf->num_vlan >= sriov->num_allowed_vlans)
1987 struct qlcnic_sriov *sriov = adapter->ahw->sriov;
1993 vf = &adapter->ahw->sriov->vf_info[0];
1995 if (sriov->vlan_mode != QLC_GUEST_VLAN_MODE)
2002 if (qlcnic_sriov_validate_num_vlans(sriov, vf))
2005 if (sriov->any_vlan) {
2006 for (i = 0; i < sriov->num_allowed_vlans; i++) {
2007 if (sriov->allowed_vlans[i] == vid)
2015 if (!vlan_exist || qlcnic_sriov_check_vlan_id(sriov, vf, vid))
2026 struct qlcnic_sriov *sriov;
2028 sriov = adapter->ahw->sriov;
2037 qlcnic_sriov_add_vlan_id(sriov, vf, vlan_id);
2040 qlcnic_sriov_del_vlan_id(sriov, vf, vlan_id);
2053 struct qlcnic_sriov *sriov = adapter->ahw->sriov;
2063 vf = &adapter->ahw->sriov->vf_info[0];
2075 qlcnic_sriov_cleanup_async_list(&sriov->bc);
2162 struct qlcnic_sriov *sriov = adapter->ahw->sriov;
2166 for (i = 0; i < sriov->num_vfs; i++) {
2167 vf = &sriov->vf_info[i];
2168 vf->sriov_vlans = kcalloc(sriov->num_allowed_vlans,
2179 struct qlcnic_sriov *sriov = adapter->ahw->sriov;
2183 for (i = 0; i < sriov->num_vfs; i++) {
2184 vf = &sriov->vf_info[i];
2190 void qlcnic_sriov_add_vlan_id(struct qlcnic_sriov *sriov,
2195 for (i = 0; i < sriov->num_allowed_vlans; i++) {
2204 void qlcnic_sriov_del_vlan_id(struct qlcnic_sriov *sriov,
2209 for (i = 0; i < sriov->num_allowed_vlans; i++) {