Lines Matching full:irqs
341 * ID. A block of IRQs is pre-allocated and maintained in a pool
347 * It allocates a block of IRQs from the GIC-ITS.
409 * It frees the IRQs that were allocated to the pool, back to the GIC-ITS.
435 * Allocate the IRQs required by a given fsl-mc device.
443 struct fsl_mc_device_irq **irqs = NULL; in fsl_mc_allocate_irqs() local
447 if (mc_dev->irqs) in fsl_mc_allocate_irqs()
465 "Not able to allocate %u irqs for device\n", irq_count); in fsl_mc_allocate_irqs()
469 irqs = devm_kcalloc(&mc_dev->dev, irq_count, sizeof(irqs[0]), in fsl_mc_allocate_irqs()
471 if (!irqs) in fsl_mc_allocate_irqs()
482 irqs[i] = to_fsl_mc_irq(resource); in fsl_mc_allocate_irqs()
485 irqs[i]->mc_dev = mc_dev; in fsl_mc_allocate_irqs()
486 irqs[i]->dev_irq_index = i; in fsl_mc_allocate_irqs()
489 mc_dev->irqs = irqs; in fsl_mc_allocate_irqs()
494 irqs[i]->mc_dev = NULL; in fsl_mc_allocate_irqs()
495 fsl_mc_resource_free(&irqs[i]->resource); in fsl_mc_allocate_irqs()
503 * Frees the IRQs that were allocated for an fsl-mc device.
510 struct fsl_mc_device_irq **irqs = mc_dev->irqs; in fsl_mc_free_irqs() local
512 if (!irqs) in fsl_mc_free_irqs()
526 irqs[i]->mc_dev = NULL; in fsl_mc_free_irqs()
527 fsl_mc_resource_free(&irqs[i]->resource); in fsl_mc_free_irqs()
530 mc_dev->irqs = NULL; in fsl_mc_free_irqs()