void afu_release_irqs(struct cxl_context *ctx) { irq_hw_number_t hwirq; unsigned int virq; int r, i; for (r = 1; r < CXL_IRQ_RANGES; r++) { hwirq = ctx->irqs.offset[r]; for (i = 0; i < ctx->irqs.range[r]; hwirq++, i++) { virq = irq_find_mapping(NULL, hwirq); if (virq) cxl_unmap_irq(virq, ctx); } } cxl_release_irq_ranges(&ctx->irqs, ctx->afu->adapter); }
void cxl_free_afu_irqs(struct cxl_context *ctx) { cxl_release_irq_ranges(&ctx->irqs, ctx->afu->adapter); }