diff options
Diffstat (limited to 'kernel/irq/irqdomain.c')
-rw-r--r-- | kernel/irq/irqdomain.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c index 8c0a0ae43521..876e13172dc8 100644 --- a/kernel/irq/irqdomain.c +++ b/kernel/irq/irqdomain.c | |||
@@ -1392,6 +1392,20 @@ static void irq_domain_check_hierarchy(struct irq_domain *domain) | |||
1392 | if (domain->ops->alloc) | 1392 | if (domain->ops->alloc) |
1393 | domain->flags |= IRQ_DOMAIN_FLAG_HIERARCHY; | 1393 | domain->flags |= IRQ_DOMAIN_FLAG_HIERARCHY; |
1394 | } | 1394 | } |
1395 | |||
1396 | /** | ||
1397 | * irq_domain_hierarchical_is_msi_remap - Check if the domain or any | ||
1398 | * parent has MSI remapping support | ||
1399 | * @domain: domain pointer | ||
1400 | */ | ||
1401 | bool irq_domain_hierarchical_is_msi_remap(struct irq_domain *domain) | ||
1402 | { | ||
1403 | for (; domain; domain = domain->parent) { | ||
1404 | if (irq_domain_is_msi_remap(domain)) | ||
1405 | return true; | ||
1406 | } | ||
1407 | return false; | ||
1408 | } | ||
1395 | #else /* CONFIG_IRQ_DOMAIN_HIERARCHY */ | 1409 | #else /* CONFIG_IRQ_DOMAIN_HIERARCHY */ |
1396 | /** | 1410 | /** |
1397 | * irq_domain_get_irq_data - Get irq_data associated with @virq and @domain | 1411 | * irq_domain_get_irq_data - Get irq_data associated with @virq and @domain |