Lines Matching refs:domain
66 static void msi_domain_activate(struct irq_domain *domain, in msi_domain_activate() argument
75 static void msi_domain_deactivate(struct irq_domain *domain, in msi_domain_deactivate() argument
84 static int msi_domain_alloc(struct irq_domain *domain, unsigned int virq, in msi_domain_alloc() argument
87 struct msi_domain_info *info = domain->host_data; in msi_domain_alloc()
92 if (irq_find_mapping(domain, hwirq) > 0) in msi_domain_alloc()
95 ret = irq_domain_alloc_irqs_parent(domain, virq, nr_irqs, arg); in msi_domain_alloc()
100 ret = ops->msi_init(domain, info, virq + i, hwirq + i, arg); in msi_domain_alloc()
104 ops->msi_free(domain, info, virq + i); in msi_domain_alloc()
106 irq_domain_free_irqs_top(domain, virq, nr_irqs); in msi_domain_alloc()
114 static void msi_domain_free(struct irq_domain *domain, unsigned int virq, in msi_domain_free() argument
117 struct msi_domain_info *info = domain->host_data; in msi_domain_free()
122 info->ops->msi_free(domain, info, virq + i); in msi_domain_free()
124 irq_domain_free_irqs_top(domain, virq, nr_irqs); in msi_domain_free()
141 static int msi_domain_ops_prepare(struct irq_domain *domain, struct device *dev, in msi_domain_ops_prepare() argument
159 static int msi_domain_ops_init(struct irq_domain *domain, in msi_domain_ops_init() argument
164 irq_domain_set_hwirq_and_chip(domain, virq, hwirq, info->chip, in msi_domain_ops_init()
174 static int msi_domain_ops_check(struct irq_domain *domain, in msi_domain_ops_check() argument
251 int msi_domain_alloc_irqs(struct irq_domain *domain, struct device *dev, in msi_domain_alloc_irqs() argument
254 struct msi_domain_info *info = domain->host_data; in msi_domain_alloc_irqs()
260 ret = ops->msi_check(domain, info, dev); in msi_domain_alloc_irqs()
262 ret = ops->msi_prepare(domain, dev, nvec, &arg); in msi_domain_alloc_irqs()
273 virq = __irq_domain_alloc_irqs(domain, virq, desc->nvec_used, in msi_domain_alloc_irqs()
278 ret = ops->handle_error(domain, desc, ret); in msi_domain_alloc_irqs()
308 void msi_domain_free_irqs(struct irq_domain *domain, struct device *dev) in msi_domain_free_irqs() argument
332 struct msi_domain_info *msi_get_domain_info(struct irq_domain *domain) in msi_get_domain_info() argument
334 return (struct msi_domain_info *)domain->host_data; in msi_get_domain_info()