Exemple #1
0
/*
 * adf_isr_resource_free
 * Free up the required resources
 */
int adf_isr_resource_free(icp_accel_dev_t *accel_dev)
{
        int status = SUCCESS;
        free_irq(accel_dev->pciAccelDev.irq, (void*) accel_dev);
        adf_disable_msi(&accel_dev->pciAccelDev);
        /* Clean bottom half handlers */
        adf_cleanup_bh(accel_dev);
        adf_cleanup_pf2vf_bh(accel_dev);
        return status;
}
Exemple #2
0
/**
 * adf_vf_isr_resource_free() - Free IRQ for acceleration device
 * @accel_dev:  Pointer to acceleration device.
 *
 * Function frees interrupts for acceleration device virtual function.
 */
void adf_vf_isr_resource_free(struct adf_accel_dev *accel_dev)
{
	struct pci_dev *pdev = accel_to_pci_dev(accel_dev);

	irq_set_affinity_hint(pdev->irq, NULL);
	free_irq(pdev->irq, (void *)accel_dev);
	adf_cleanup_bh(accel_dev);
	adf_cleanup_pf2vf_bh(accel_dev);
	adf_disable_msi(accel_dev);
}