Lines Matching refs:virq
684 static int msi_domain_alloc(struct irq_domain *domain, unsigned int virq, in msi_domain_alloc() argument
696 ret = irq_domain_alloc_irqs_parent(domain, virq, nr_irqs, arg); in msi_domain_alloc()
702 ret = ops->msi_init(domain, info, virq + i, hwirq + i, arg); in msi_domain_alloc()
706 ops->msi_free(domain, info, virq + i); in msi_domain_alloc()
708 irq_domain_free_irqs_top(domain, virq, nr_irqs); in msi_domain_alloc()
716 static void msi_domain_free(struct irq_domain *domain, unsigned int virq, in msi_domain_free() argument
724 info->ops->msi_free(domain, info, virq + i); in msi_domain_free()
726 irq_domain_free_irqs_top(domain, virq, nr_irqs); in msi_domain_free()
757 unsigned int virq, irq_hw_number_t hwirq, in msi_domain_ops_init() argument
760 irq_domain_set_hwirq_and_chip(domain, virq, hwirq, info->chip, in msi_domain_ops_init()
763 __irq_set_handler(virq, info->handler, 0, info->handler_name); in msi_domain_ops_init()
765 irq_set_handler_data(virq, info->handler_data); in msi_domain_ops_init()
1082 int ret, virq; in msi_domain_populate_irqs() local
1097 for (virq = virq_base; virq < virq_base + nvec; virq++) { in msi_domain_populate_irqs()
1098 desc = xa_load(xa, virq); in msi_domain_populate_irqs()
1099 desc->irq = virq; in msi_domain_populate_irqs()
1102 ret = irq_domain_alloc_irqs_hierarchy(domain, virq, 1, arg); in msi_domain_populate_irqs()
1106 irq_set_msi_desc(virq, desc); in msi_domain_populate_irqs()
1112 for (--virq; virq >= virq_base; virq--) { in msi_domain_populate_irqs()
1113 msi_domain_depopulate_descs(dev, virq, 1); in msi_domain_populate_irqs()
1114 irq_domain_free_irqs_common(domain, virq, 1); in msi_domain_populate_irqs()
1208 static int msi_init_virq(struct irq_domain *domain, int virq, unsigned int vflags) in msi_init_virq() argument
1210 struct irq_data *irqd = irq_domain_get_irq_data(domain, virq); in msi_init_virq()
1257 int i, ret, virq; in __msi_domain_alloc_irqs() local
1291 virq = __irq_domain_alloc_irqs(domain, -1, desc->nvec_used, in __msi_domain_alloc_irqs()
1294 if (virq < 0) in __msi_domain_alloc_irqs()
1298 irq_set_msi_desc_off(virq, i, desc); in __msi_domain_alloc_irqs()
1299 irq_debugfs_copy_devname(virq + i, dev); in __msi_domain_alloc_irqs()
1300 ret = msi_init_virq(domain, virq + i, vflags); in __msi_domain_alloc_irqs()
1499 map.virq = desc->irq; in msi_domain_alloc_irq_at()