[PATCH] [v2] irqchip: build IMX_MU_MSI only on ARM

Arnd Bergmann posted 1 patch 1 month, 1 week ago
drivers/irqchip/Kconfig | 1 +
1 file changed, 1 insertion(+)
[PATCH] [v2] irqchip: build IMX_MU_MSI only on ARM
Posted by Arnd Bergmann 1 month, 1 week ago
From: Arnd Bergmann <arnd@arndb.de>

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

drivers/gpio/gpio-sprd.c:8:
include/linux/gpio/driver.h:41:33: error: field 'msiinfo' has incomplete type
drivers/iommu/iommufd/viommu.c:4:
include/linux/msi.h:528:33: error: field 'alloc_info' has incomplete type

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

I submitted this patch before to address a different build failure, which
was fixed independently but has now returned.

Link: https://lore.kernel.org/all/20221215164109.761427-1-arnd@kernel.org/
Fixes: 70afdab904d2d1e6 ("irqchip: Add IMX MU MSI controller driver")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---

It seems to be a recurring problem wiht x86 not using CONFIG_GENERIC_MSI_IRQ,
while all other architectures do. I wonder if that is something that
should be changed by changing the x86 irqchip implementation so that
CONFIG_GENERIC_MSI_IRQ can become the only way to do MSI.
---
 drivers/irqchip/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig
index 96cca93714ef..b0b7143cae2d 100644
--- a/drivers/irqchip/Kconfig
+++ b/drivers/irqchip/Kconfig
@@ -558,6 +558,7 @@ 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 ARM || ARM64
 	default m if ARCH_MXC
 	select IRQ_DOMAIN
 	select IRQ_DOMAIN_HIERARCHY
-- 
2.39.5
Re: [PATCH] [v2] irqchip: build IMX_MU_MSI only on ARM
Posted by Thomas Gleixner 1 month, 1 week ago
On Tue, Aug 05 2025 at 18:09, Arnd Bergmann wrote:
> It seems to be a recurring problem wiht x86 not using CONFIG_GENERIC_MSI_IRQ,
> while all other architectures do. I wonder if that is something that
> should be changed by changing the x86 irqchip implementation so that
> CONFIG_GENERIC_MSI_IRQ can become the only way to do MSI.

Ideally yes. That needs quite some surgery and I didn't have the time,
urge and stomach to tackle it yet. Let me have a look again.
[tip: irq/urgent] irqchip: Build IMX_MU_MSI only on ARM
Posted by tip-bot2 for Arnd Bergmann 1 month, 1 week ago
The following commit has been merged into the irq/urgent branch of tip:

Commit-ID:     3b6a18f0da8720d612d8a682ea5c55870da068e0
Gitweb:        https://git.kernel.org/tip/3b6a18f0da8720d612d8a682ea5c55870da068e0
Author:        Arnd Bergmann <arnd@arndb.de>
AuthorDate:    Tue, 05 Aug 2025 18:09:49 +02:00
Committer:     Thomas Gleixner <tglx@linutronix.de>
CommitterDate: Wed, 06 Aug 2025 10:35:45 +02:00

irqchip: Build IMX_MU_MSI only on ARM

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

drivers/gpio/gpio-sprd.c:8:
include/linux/gpio/driver.h:41:33: error: field 'msiinfo' has incomplete type
drivers/iommu/iommufd/viommu.c:4:
include/linux/msi.h:528:33: error: field 'alloc_info' has incomplete type

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

This was submitted before to address a different build failure, which was
fixed differently, but the problem has now returned in a different form.

Fixes: 70afdab904d2d1e6 ("irqchip: Add IMX MU MSI controller driver")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/20250805160952.4006075-1-arnd@kernel.org
Link: https://lore.kernel.org/all/20221215164109.761427-1-arnd@kernel.org/

---
 drivers/irqchip/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig
index 39a6ae1..6d12c6a 100644
--- a/drivers/irqchip/Kconfig
+++ b/drivers/irqchip/Kconfig
@@ -554,6 +554,7 @@ 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 ARM || ARM64
 	default m if ARCH_MXC
 	select IRQ_DOMAIN
 	select IRQ_DOMAIN_HIERARCHY