Lines Matching refs:accel_dev

18 static int adf_enable_msix(struct adf_accel_dev *accel_dev)  in adf_enable_msix()  argument
20 struct adf_accel_pci *pci_dev_info = &accel_dev->accel_pci_dev; in adf_enable_msix()
21 struct adf_hw_device_data *hw_data = accel_dev->hw_device; in adf_enable_msix()
25 if (!accel_dev->pf.vf_info) { in adf_enable_msix()
39 dev_err(&GET_DEV(accel_dev), "Failed to enable MSI-X IRQ(s)\n"); in adf_enable_msix()
61 struct adf_accel_dev *accel_dev = dev_ptr; in adf_msix_isr_ae() local
65 if (accel_dev->pf.vf_info) { in adf_msix_isr_ae()
66 struct adf_hw_device_data *hw_data = accel_dev->hw_device; in adf_msix_isr_ae()
68 &GET_BARS(accel_dev)[hw_data->get_misc_bar_id(hw_data)]; in adf_msix_isr_ae()
84 adf_disable_vf2pf_interrupts(accel_dev, vf_mask); in adf_msix_isr_ae()
93 vf_info = accel_dev->pf.vf_info + i; in adf_msix_isr_ae()
96 dev_info(&GET_DEV(accel_dev), in adf_msix_isr_ae()
113 dev_dbg(&GET_DEV(accel_dev), "qat_dev%d spurious AE interrupt\n", in adf_msix_isr_ae()
114 accel_dev->accel_id); in adf_msix_isr_ae()
119 static int adf_request_irqs(struct adf_accel_dev *accel_dev) in adf_request_irqs() argument
121 struct adf_accel_pci *pci_dev_info = &accel_dev->accel_pci_dev; in adf_request_irqs()
122 struct adf_hw_device_data *hw_data = accel_dev->hw_device; in adf_request_irqs()
124 struct adf_etr_data *etr_data = accel_dev->transport; in adf_request_irqs()
129 if (!accel_dev->pf.vf_info) { in adf_request_irqs()
136 "qat%d-bundle%d", accel_dev->accel_id, i); in adf_request_irqs()
140 dev_err(&GET_DEV(accel_dev), in adf_request_irqs()
146 cpu = ((accel_dev->accel_id * hw_data->num_banks) + in adf_request_irqs()
156 "qat%d-ae-cluster", accel_dev->accel_id); in adf_request_irqs()
157 ret = request_irq(msixe[i].vector, adf_msix_isr_ae, 0, name, accel_dev); in adf_request_irqs()
159 dev_err(&GET_DEV(accel_dev), in adf_request_irqs()
167 static void adf_free_irqs(struct adf_accel_dev *accel_dev) in adf_free_irqs() argument
169 struct adf_accel_pci *pci_dev_info = &accel_dev->accel_pci_dev; in adf_free_irqs()
170 struct adf_hw_device_data *hw_data = accel_dev->hw_device; in adf_free_irqs()
172 struct adf_etr_data *etr_data = accel_dev->transport; in adf_free_irqs()
182 free_irq(msixe[i].vector, accel_dev); in adf_free_irqs()
185 static int adf_isr_alloc_msix_entry_table(struct adf_accel_dev *accel_dev) in adf_isr_alloc_msix_entry_table() argument
190 struct adf_hw_device_data *hw_data = accel_dev->hw_device; in adf_isr_alloc_msix_entry_table()
194 if (!accel_dev->pf.vf_info) in adf_isr_alloc_msix_entry_table()
198 GFP_KERNEL, dev_to_node(&GET_DEV(accel_dev))); in adf_isr_alloc_msix_entry_table()
212 accel_dev->accel_pci_dev.msix_entries.num_entries = msix_num_entries; in adf_isr_alloc_msix_entry_table()
213 accel_dev->accel_pci_dev.msix_entries.entries = entries; in adf_isr_alloc_msix_entry_table()
214 accel_dev->accel_pci_dev.msix_entries.names = names; in adf_isr_alloc_msix_entry_table()
224 static void adf_isr_free_msix_entry_table(struct adf_accel_dev *accel_dev) in adf_isr_free_msix_entry_table() argument
226 char **names = accel_dev->accel_pci_dev.msix_entries.names; in adf_isr_free_msix_entry_table()
229 kfree(accel_dev->accel_pci_dev.msix_entries.entries); in adf_isr_free_msix_entry_table()
230 for (i = 0; i < accel_dev->accel_pci_dev.msix_entries.num_entries; i++) in adf_isr_free_msix_entry_table()
235 static int adf_setup_bh(struct adf_accel_dev *accel_dev) in adf_setup_bh() argument
237 struct adf_etr_data *priv_data = accel_dev->transport; in adf_setup_bh()
238 struct adf_hw_device_data *hw_data = accel_dev->hw_device; in adf_setup_bh()
248 static void adf_cleanup_bh(struct adf_accel_dev *accel_dev) in adf_cleanup_bh() argument
250 struct adf_etr_data *priv_data = accel_dev->transport; in adf_cleanup_bh()
251 struct adf_hw_device_data *hw_data = accel_dev->hw_device; in adf_cleanup_bh()
266 void adf_isr_resource_free(struct adf_accel_dev *accel_dev) in adf_isr_resource_free() argument
268 adf_free_irqs(accel_dev); in adf_isr_resource_free()
269 adf_cleanup_bh(accel_dev); in adf_isr_resource_free()
270 adf_disable_msix(&accel_dev->accel_pci_dev); in adf_isr_resource_free()
271 adf_isr_free_msix_entry_table(accel_dev); in adf_isr_resource_free()
283 int adf_isr_resource_alloc(struct adf_accel_dev *accel_dev) in adf_isr_resource_alloc() argument
287 ret = adf_isr_alloc_msix_entry_table(accel_dev); in adf_isr_resource_alloc()
290 if (adf_enable_msix(accel_dev)) in adf_isr_resource_alloc()
293 if (adf_setup_bh(accel_dev)) in adf_isr_resource_alloc()
296 if (adf_request_irqs(accel_dev)) in adf_isr_resource_alloc()
301 adf_isr_resource_free(accel_dev); in adf_isr_resource_alloc()