[PATCH] irqchip: build IMX_MU_MSI only on ARM

From: Arnd Bergmann
Date: Thu Dec 15 2022 - 11:41:24 EST


From: Arnd Bergmann <arnd@xxxxxxxx>

compile-testing IMX_MU_MSI on x86 without PCI_MSI support results
in a build failure:

arch/x86/kernel/hpet.c:520:46: error: 'msi_alloc_info_t' {aka 'struct irq_alloc_info'} has no member named 'hwirq'
520 | irq_domain_set_info(domain, virq, arg->hwirq, info->chip, NULL,
| ^~
arch/x86/kernel/hpet.c:521:49: error: 'msi_alloc_info_t' {aka 'struct irq_alloc_info'} has no member named 'data'
521 | handle_edge_irq, arg->data, "edge");
| ^~
arch/x86/kernel/hpet.c: In function 'hpet_create_irq_domain':
arch/x86/kernel/hpet.c:550:13: error: 'x86_vector_domain' undeclared (first use in this function)
550 | if (x86_vector_domain == NULL)
| ^~~~~~~~~~~~~~~~~
arch/x86/kernel/hpet.c:550:13: note: each undeclared identifier is reported only once for each function it appears in
arch/x86/kernel/hpet.c: In function 'hpet_assign_irq':
arch/x86/kernel/hpet.c:600:9: error: implicit declaration of function 'init_irq_alloc_info' [-Werror=implicit-function-declaration]
600 | init_irq_alloc_info(&info, NULL);

Tighten the dependency further to only allow compile testing on Arm.
This could be refined further to allow certain x86 configs.

Fixes: 6c9f7434159b ("irqchip: IMX_MU_MSI should depend on ARCH_MXC")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
drivers/irqchip/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig
index caa952c40ff9..4ebf4d566e6f 100644
--- a/drivers/irqchip/Kconfig
+++ b/drivers/irqchip/Kconfig
@@ -484,7 +484,7 @@ config IMX_INTMUX
config IMX_MU_MSI
tristate "i.MX MU used as MSI controller"
depends on OF && HAS_IOMEM
- depends on ARCH_MXC || COMPILE_TEST
+ depends on ARCH_MXC || ((ARM || ARM64) && COMPILE_TEST)
default m if ARCH_MXC
select IRQ_DOMAIN
select IRQ_DOMAIN_HIERARCHY
--
2.35.1