Lines Matching refs:irqd
1210 struct irq_data *irqd; in irq_domain_disconnect_hierarchy() local
1212 irqd = irq_domain_get_irq_data(domain, virq); in irq_domain_disconnect_hierarchy()
1213 if (!irqd) in irq_domain_disconnect_hierarchy()
1216 irqd->chip = ERR_PTR(-ENOTCONN); in irq_domain_disconnect_hierarchy()
1223 struct irq_data *tail, *irqd, *irq_data; in irq_domain_trim_hierarchy() local
1236 for (irqd = irq_data->parent_data; irqd; irq_data = irqd, irqd = irqd->parent_data) { in irq_domain_trim_hierarchy()
1238 if (irqd->chip && tail) in irq_domain_trim_hierarchy()
1242 if (!irqd->chip && !tail) in irq_domain_trim_hierarchy()
1245 if (IS_ERR(irqd->chip)) { in irq_domain_trim_hierarchy()
1247 if (PTR_ERR(irqd->chip) != -ENOTCONN) in irq_domain_trim_hierarchy()
1262 irqd = tail; in irq_domain_trim_hierarchy()
1264 irqd->parent_data = NULL; in irq_domain_trim_hierarchy()
1753 static int __irq_domain_activate_irq(struct irq_data *irqd, bool reserve) in __irq_domain_activate_irq() argument
1757 if (irqd && irqd->domain) { in __irq_domain_activate_irq()
1758 struct irq_domain *domain = irqd->domain; in __irq_domain_activate_irq()
1760 if (irqd->parent_data) in __irq_domain_activate_irq()
1761 ret = __irq_domain_activate_irq(irqd->parent_data, in __irq_domain_activate_irq()
1764 ret = domain->ops->activate(domain, irqd, reserve); in __irq_domain_activate_irq()
1766 if (ret && irqd->parent_data) in __irq_domain_activate_irq()
1767 __irq_domain_deactivate_irq(irqd->parent_data); in __irq_domain_activate_irq()