Lines Matching full:irqs
329 * ID. A block of IRQs is pre-allocated and maintained in a pool
335 * It allocates a block of IRQs from the GIC-ITS.
398 * It frees the IRQs that were allocated to the pool, back to the GIC-ITS.
424 * Allocate the IRQs required by a given fsl-mc device.
432 struct fsl_mc_device_irq **irqs = NULL; in fsl_mc_allocate_irqs() local
436 if (mc_dev->irqs) in fsl_mc_allocate_irqs()
454 "Not able to allocate %u irqs for device\n", irq_count); in fsl_mc_allocate_irqs()
458 irqs = devm_kcalloc(&mc_dev->dev, irq_count, sizeof(irqs[0]), in fsl_mc_allocate_irqs()
460 if (!irqs) in fsl_mc_allocate_irqs()
471 irqs[i] = to_fsl_mc_irq(resource); in fsl_mc_allocate_irqs()
474 irqs[i]->mc_dev = mc_dev; in fsl_mc_allocate_irqs()
475 irqs[i]->dev_irq_index = i; in fsl_mc_allocate_irqs()
478 mc_dev->irqs = irqs; in fsl_mc_allocate_irqs()
483 irqs[i]->mc_dev = NULL; in fsl_mc_allocate_irqs()
484 fsl_mc_resource_free(&irqs[i]->resource); in fsl_mc_allocate_irqs()
492 * Frees the IRQs that were allocated for an fsl-mc device.
499 struct fsl_mc_device_irq **irqs = mc_dev->irqs; in fsl_mc_free_irqs() local
501 if (!irqs) in fsl_mc_free_irqs()
515 irqs[i]->mc_dev = NULL; in fsl_mc_free_irqs()
516 fsl_mc_resource_free(&irqs[i]->resource); in fsl_mc_free_irqs()
519 mc_dev->irqs = NULL; in fsl_mc_free_irqs()