Lines Matching refs:irqd
1212 struct irq_data *irqd; in irq_domain_disconnect_hierarchy() local
1214 irqd = irq_domain_get_irq_data(domain, virq); in irq_domain_disconnect_hierarchy()
1215 if (!irqd) in irq_domain_disconnect_hierarchy()
1218 irqd->chip = ERR_PTR(-ENOTCONN); in irq_domain_disconnect_hierarchy()
1225 struct irq_data *tail, *irqd, *irq_data; in irq_domain_trim_hierarchy() local
1238 for (irqd = irq_data->parent_data; irqd; irq_data = irqd, irqd = irqd->parent_data) { in irq_domain_trim_hierarchy()
1240 if (irqd->chip && tail) in irq_domain_trim_hierarchy()
1244 if (!irqd->chip && !tail) in irq_domain_trim_hierarchy()
1247 if (IS_ERR(irqd->chip)) { in irq_domain_trim_hierarchy()
1249 if (PTR_ERR(irqd->chip) != -ENOTCONN) in irq_domain_trim_hierarchy()
1264 irqd = tail; in irq_domain_trim_hierarchy()
1266 irqd->parent_data = NULL; in irq_domain_trim_hierarchy()
1756 static int __irq_domain_activate_irq(struct irq_data *irqd, bool reserve) in __irq_domain_activate_irq() argument
1760 if (irqd && irqd->domain) { in __irq_domain_activate_irq()
1761 struct irq_domain *domain = irqd->domain; in __irq_domain_activate_irq()
1763 if (irqd->parent_data) in __irq_domain_activate_irq()
1764 ret = __irq_domain_activate_irq(irqd->parent_data, in __irq_domain_activate_irq()
1767 ret = domain->ops->activate(domain, irqd, reserve); in __irq_domain_activate_irq()
1769 if (ret && irqd->parent_data) in __irq_domain_activate_irq()
1770 __irq_domain_deactivate_irq(irqd->parent_data); in __irq_domain_activate_irq()