Lines Matching refs:hw
25 static s32 fm10k_iov_msg_error(struct fm10k_hw *hw, u32 **results, in fm10k_iov_msg_error() argument
29 struct fm10k_intfc *interface = hw->back; in fm10k_iov_msg_error()
35 return fm10k_tlv_msg_error(hw, results, mbx); in fm10k_iov_msg_error()
48 struct fm10k_hw *hw = &interface->hw; in fm10k_iov_event() local
65 if (!(fm10k_read_reg(hw, FM10K_EICR) & FM10K_EICR_VFLR)) in fm10k_iov_event()
70 vflre = fm10k_read_reg(hw, FM10K_PFVFLRE(0)); in fm10k_iov_event()
72 vflre |= fm10k_read_reg(hw, FM10K_PFVFLRE(1)); in fm10k_iov_event()
74 vflre |= fm10k_read_reg(hw, FM10K_PFVFLRE(0)); in fm10k_iov_event()
84 hw->iov.ops.reset_resources(hw, vf_info); in fm10k_iov_event()
85 vf_info->mbx.ops.connect(hw, &vf_info->mbx); in fm10k_iov_event()
97 struct fm10k_hw *hw = &interface->hw; in fm10k_iov_mbx() local
130 if (vf_info->vf_flags && !fm10k_glort_valid_pf(hw, glort)) in fm10k_iov_mbx()
131 hw->iov.ops.reset_lport(hw, vf_info); in fm10k_iov_mbx()
135 hw->iov.ops.reset_resources(hw, vf_info); in fm10k_iov_mbx()
136 mbx->ops.connect(hw, mbx); in fm10k_iov_mbx()
140 if (!hw->mbx.ops.tx_ready(&hw->mbx, FM10K_VFMBX_MSG_MTU)) in fm10k_iov_mbx()
144 mbx->ops.process(hw, mbx); in fm10k_iov_mbx()
171 struct fm10k_hw *hw = &interface->hw; in fm10k_iov_suspend() local
178 fm10k_write_reg(hw, FM10K_DGLORTMAP(fm10k_dglort_vf_rss), in fm10k_iov_suspend()
185 hw->iov.ops.reset_resources(hw, vf_info); in fm10k_iov_suspend()
186 hw->iov.ops.reset_lport(hw, vf_info); in fm10k_iov_suspend()
195 struct fm10k_hw *hw = &interface->hw; in fm10k_iov_resume() local
206 hw->iov.ops.assign_resources(hw, num_vfs, num_vfs); in fm10k_iov_resume()
209 dglort.glort = hw->mac.dglort_map & FM10K_DGLORTMAP_NONE; in fm10k_iov_resume()
212 dglort.rss_l = fls(fm10k_queues_per_pool(hw) - 1); in fm10k_iov_resume()
213 dglort.queue_b = fm10k_vf_queue_index(hw, 0); in fm10k_iov_resume()
214 dglort.vsi_l = fls(hw->iov.total_vfs - 1); in fm10k_iov_resume()
217 hw->mac.ops.configure_dglort_map(hw, &dglort); in fm10k_iov_resume()
224 if (i == ((~hw->mac.dglort_map) >> FM10K_DGLORTMAP_MASK_SHIFT)) in fm10k_iov_resume()
228 hw->iov.ops.set_lport(hw, vf_info, i, in fm10k_iov_resume()
232 vf_info->sw_vid = hw->mac.default_vid; in fm10k_iov_resume()
235 hw->iov.ops.assign_default_mac_vlan(hw, vf_info); in fm10k_iov_resume()
238 vf_info->mbx.ops.connect(hw, &vf_info->mbx); in fm10k_iov_resume()
247 struct fm10k_hw *hw = &interface->hw; in fm10k_iov_update_pvid() local
249 u16 vf_idx = (glort - hw->mac.dglort_map) & FM10K_DGLORTMAP_NONE; in fm10k_iov_update_pvid()
263 hw->iov.ops.assign_default_mac_vlan(hw, vf_info); in fm10k_iov_update_pvid()
288 struct fm10k_hw *hw = &interface->hw; in fm10k_iov_alloc_data() local
297 if (!hw->iov.ops.assign_resources) in fm10k_iov_alloc_data()
322 err = fm10k_pfvf_mbx_init(hw, &vf_info->mbx, iov_mbx_data, i); in fm10k_iov_alloc_data()
407 struct fm10k_hw *hw = &interface->hw; in fm10k_ndo_set_vf_mac() local
426 hw->iov.ops.assign_default_mac_vlan(hw, vf_info); in fm10k_ndo_set_vf_mac()
438 struct fm10k_hw *hw = &interface->hw; in fm10k_ndo_set_vf_vlan() local
462 hw->mac.ops.update_vlan(hw, FM10K_VLAN_ALL, vf_info->vsi, false); in fm10k_ndo_set_vf_vlan()
465 hw->iov.ops.assign_default_mac_vlan(hw, vf_info); in fm10k_ndo_set_vf_vlan()
477 struct fm10k_hw *hw = &interface->hw; in fm10k_ndo_set_vf_bw() local
491 hw->iov.ops.configure_tc(hw, vf_idx, rate); in fm10k_ndo_set_vf_bw()