Lines Matching full:pf

13  * @pf: pointer to PF struct
16 * pf->adev.dev to avoid race conditions.
18 static struct iidc_auxiliary_drv *ice_get_auxiliary_drv(struct ice_pf *pf) in ice_get_auxiliary_drv() argument
22 adev = pf->adev; in ice_get_auxiliary_drv()
32 * @pf: pointer to PF struct
35 void ice_send_event_to_aux(struct ice_pf *pf, struct iidc_event *event) in ice_send_event_to_aux() argument
42 mutex_lock(&pf->adev_mutex); in ice_send_event_to_aux()
43 if (!pf->adev) in ice_send_event_to_aux()
46 device_lock(&pf->adev->dev); in ice_send_event_to_aux()
47 iadrv = ice_get_auxiliary_drv(pf); in ice_send_event_to_aux()
49 iadrv->event_handler(pf, event); in ice_send_event_to_aux()
50 device_unlock(&pf->adev->dev); in ice_send_event_to_aux()
52 mutex_unlock(&pf->adev_mutex); in ice_send_event_to_aux()
57 * @pf: PF struct
60 int ice_add_rdma_qset(struct ice_pf *pf, struct iidc_rdma_qset_params *qset) in ice_add_rdma_qset() argument
70 if (WARN_ON(!pf || !qset)) in ice_add_rdma_qset()
73 dev = ice_pf_to_dev(pf); in ice_add_rdma_qset()
75 if (!ice_is_rdma_ena(pf)) in ice_add_rdma_qset()
78 vsi = ice_get_main_vsi(pf); in ice_add_rdma_qset()
112 * @pf: PF struct
115 int ice_del_rdma_qset(struct ice_pf *pf, struct iidc_rdma_qset_params *qset) in ice_del_rdma_qset() argument
121 if (WARN_ON(!pf || !qset)) in ice_del_rdma_qset()
124 vsi = ice_find_vsi(pf, qset->vport_id); in ice_del_rdma_qset()
126 dev_err(ice_pf_to_dev(pf), "RDMA Invalid VSI\n"); in ice_del_rdma_qset()
141 * @pf: struct for PF
144 int ice_rdma_request_reset(struct ice_pf *pf, enum iidc_reset_type reset_type) in ice_rdma_request_reset() argument
148 if (WARN_ON(!pf)) in ice_rdma_request_reset()
162 dev_err(ice_pf_to_dev(pf), "incorrect reset request\n"); in ice_rdma_request_reset()
166 return ice_schedule_reset(pf, reset); in ice_rdma_request_reset()
172 * @pf: pointer to struct for PF
176 int ice_rdma_update_vsi_filter(struct ice_pf *pf, u16 vsi_id, bool enable) in ice_rdma_update_vsi_filter() argument
181 if (WARN_ON(!pf)) in ice_rdma_update_vsi_filter()
184 vsi = ice_find_vsi(pf, vsi_id); in ice_rdma_update_vsi_filter()
188 status = ice_cfg_rdma_fltr(&pf->hw, vsi->idx, enable); in ice_rdma_update_vsi_filter()
190 dev_err(ice_pf_to_dev(pf), "Failed to %sable RDMA filtering\n", in ice_rdma_update_vsi_filter()
205 * @pf: pointer to PF struct
208 void ice_get_qos_params(struct ice_pf *pf, struct iidc_qos_params *qos) in ice_get_qos_params() argument
214 dcbx_cfg = &pf->hw.port_info->qos_cfg.local_dcbx_cfg; in ice_get_qos_params()
215 up2tc = rd32(&pf->hw, PRTDCB_TUP2TC); in ice_get_qos_params()
231 int ice_alloc_rdma_qvector(struct ice_pf *pf, struct msix_entry *entry) in ice_alloc_rdma_qvector() argument
233 struct msi_map map = ice_alloc_irq(pf, true); in ice_alloc_rdma_qvector()
247 * @pf: board private structure to initialize
250 void ice_free_rdma_qvector(struct ice_pf *pf, struct msix_entry *entry) in ice_free_rdma_qvector() argument
256 ice_free_irq(pf, map); in ice_free_rdma_qvector()
274 * @pf: pointer to pf struct
276 int ice_plug_aux_dev(struct ice_pf *pf) in ice_plug_aux_dev() argument
282 /* if this PF doesn't support a technology that requires auxiliary in ice_plug_aux_dev()
285 if (!ice_is_rdma_ena(pf)) in ice_plug_aux_dev()
293 iadev->pf = pf; in ice_plug_aux_dev()
295 adev->id = pf->aux_idx; in ice_plug_aux_dev()
297 adev->dev.parent = &pf->pdev->dev; in ice_plug_aux_dev()
298 adev->name = pf->rdma_mode & IIDC_RDMA_PROTOCOL_ROCEV2 ? "roce" : "iwarp"; in ice_plug_aux_dev()
312 mutex_lock(&pf->adev_mutex); in ice_plug_aux_dev()
313 pf->adev = adev; in ice_plug_aux_dev()
314 mutex_unlock(&pf->adev_mutex); in ice_plug_aux_dev()
320 * @pf: pointer to pf struct
322 void ice_unplug_aux_dev(struct ice_pf *pf) in ice_unplug_aux_dev() argument
326 mutex_lock(&pf->adev_mutex); in ice_unplug_aux_dev()
327 adev = pf->adev; in ice_unplug_aux_dev()
328 pf->adev = NULL; in ice_unplug_aux_dev()
329 mutex_unlock(&pf->adev_mutex); in ice_unplug_aux_dev()
338 * ice_init_rdma - initializes PF for RDMA use
339 * @pf: ptr to ice_pf
341 int ice_init_rdma(struct ice_pf *pf) in ice_init_rdma() argument
343 struct device *dev = &pf->pdev->dev; in ice_init_rdma()
346 if (!ice_is_rdma_ena(pf)) { in ice_init_rdma()
351 ret = xa_alloc(&ice_aux_id, &pf->aux_idx, NULL, XA_LIMIT(1, INT_MAX), in ice_init_rdma()
358 pf->rdma_mode |= IIDC_RDMA_PROTOCOL_ROCEV2; in ice_init_rdma()
359 ret = ice_plug_aux_dev(pf); in ice_init_rdma()
365 pf->adev = NULL; in ice_init_rdma()
366 xa_erase(&ice_aux_id, pf->aux_idx); in ice_init_rdma()
371 * ice_deinit_rdma - deinitialize RDMA on PF
372 * @pf: ptr to ice_pf
374 void ice_deinit_rdma(struct ice_pf *pf) in ice_deinit_rdma() argument
376 if (!ice_is_rdma_ena(pf)) in ice_deinit_rdma()
379 ice_unplug_aux_dev(pf); in ice_deinit_rdma()
380 xa_erase(&ice_aux_id, pf->aux_idx); in ice_deinit_rdma()