Lines Matching full:rf
97 irdma_log_invalid_mtu(l2params.mtu, &iwdev->rf->sc_dev); in irdma_iidc_event_handler()
115 if (iwdev->rf->protocol_used != IRDMA_IWARP_PROTOCOL_ONLY) in irdma_iidc_event_handler()
125 pe_criterr = readl(iwdev->rf->sc_dev.hw_regs[IRDMA_GLPE_CRITERR]); in irdma_iidc_event_handler()
130 iwdev->rf->reset = true; in irdma_iidc_event_handler()
137 iwdev->rf->reset = true; in irdma_iidc_event_handler()
141 iwdev->rf->reset = true; in irdma_iidc_event_handler()
143 if (iwdev->rf->reset) in irdma_iidc_event_handler()
144 iwdev->rf->gen_ops.request_reset(iwdev->rf); in irdma_iidc_event_handler()
150 * @rf: RDMA PCI function
152 static void irdma_request_reset(struct irdma_pci_f *rf) in irdma_request_reset() argument
154 ibdev_warn(&rf->iwdev->ibdev, "Requesting a reset\n"); in irdma_request_reset()
155 ice_rdma_request_reset(rf->cdev, IIDC_FUNC_RESET); in irdma_request_reset()
171 cdev_info = iwdev->rf->cdev; in irdma_lan_register_qset()
199 cdev_info = iwdev->rf->cdev; in irdma_lan_unregister_qset()
209 static int irdma_init_interrupts(struct irdma_pci_f *rf, struct iidc_rdma_core_dev_info *cdev) in irdma_init_interrupts() argument
213 rf->msix_count = num_online_cpus() + IRDMA_NUM_AEQ_MSIX; in irdma_init_interrupts()
214 rf->msix_entries = kcalloc(rf->msix_count, sizeof(*rf->msix_entries), in irdma_init_interrupts()
216 if (!rf->msix_entries) in irdma_init_interrupts()
219 for (i = 0; i < rf->msix_count; i++) in irdma_init_interrupts()
220 if (ice_alloc_rdma_qvector(cdev, &rf->msix_entries[i])) in irdma_init_interrupts()
225 ice_free_rdma_qvector(cdev, &rf->msix_entries[i]); in irdma_init_interrupts()
227 kfree(rf->msix_entries); in irdma_init_interrupts()
231 rf->msix_count = i; in irdma_init_interrupts()
236 static void irdma_deinit_interrupts(struct irdma_pci_f *rf, struct iidc_rdma_core_dev_info *cdev) in irdma_deinit_interrupts() argument
240 for (i = 0; i < rf->msix_count; i++) in irdma_deinit_interrupts()
241 ice_free_rdma_qvector(cdev, &rf->msix_entries[i]); in irdma_deinit_interrupts()
243 kfree(rf->msix_entries); in irdma_deinit_interrupts()
257 irdma_deinit_interrupts(iwdev->rf, cdev_info); in irdma_remove()
259 kfree(iwdev->rf); in irdma_remove()
268 struct irdma_pci_f *rf = iwdev->rf; in irdma_fill_device_info() local
270 rf->sc_dev.hw = &rf->hw; in irdma_fill_device_info()
271 rf->iwdev = iwdev; in irdma_fill_device_info()
272 rf->cdev = cdev_info; in irdma_fill_device_info()
273 rf->hw.hw_addr = iidc_priv->hw_addr; in irdma_fill_device_info()
274 rf->pcidev = cdev_info->pdev; in irdma_fill_device_info()
275 rf->hw.device = &rf->pcidev->dev; in irdma_fill_device_info()
276 rf->pf_id = iidc_priv->pf_id; in irdma_fill_device_info()
277 rf->gen_ops.register_qset = irdma_lan_register_qset; in irdma_fill_device_info()
278 rf->gen_ops.unregister_qset = irdma_lan_unregister_qset; in irdma_fill_device_info()
280 rf->default_vsi.vsi_idx = iidc_priv->vport_id; in irdma_fill_device_info()
281 rf->protocol_used = in irdma_fill_device_info()
284 rf->rdma_ver = IRDMA_GEN_2; in irdma_fill_device_info()
285 rf->rsrc_profile = IRDMA_HMC_PROFILE_DEFAULT; in irdma_fill_device_info()
286 rf->rst_to = IRDMA_RST_TIMEOUT_HZ; in irdma_fill_device_info()
287 rf->gen_ops.request_reset = irdma_request_reset; in irdma_fill_device_info()
288 rf->limits_sel = 7; in irdma_fill_device_info()
289 rf->iwdev = iwdev; in irdma_fill_device_info()
300 if (rf->protocol_used == IRDMA_ROCE_PROTOCOL_ONLY) in irdma_fill_device_info()
311 struct irdma_pci_f *rf; in irdma_probe() local
321 iwdev->rf = kzalloc(sizeof(*rf), GFP_KERNEL); in irdma_probe()
322 if (!iwdev->rf) { in irdma_probe()
328 rf = iwdev->rf; in irdma_probe()
330 err = irdma_init_interrupts(rf, cdev_info); in irdma_probe()
334 err = irdma_ctrl_init_hw(rf); in irdma_probe()
340 if (iwdev->rf->protocol_used != IRDMA_IWARP_PROTOCOL_ONLY) in irdma_probe()
353 ibdev_dbg(&iwdev->ibdev, "INIT: Gen2 PF[%d] device probe success\n", PCI_FUNC(rf->pcidev->devfn)); in irdma_probe()
361 irdma_ctrl_deinit_hw(rf); in irdma_probe()
363 irdma_deinit_interrupts(rf, cdev_info); in irdma_probe()
365 kfree(iwdev->rf); in irdma_probe()