Thread (6 messages) 6 messages, 4 authors, 2024-02-15

Re: [PATCH v2] of: OF_IRQ: select IRQ_DOMAIN instead of depending on it

From: "Arnd Bergmann" <arnd@arndb.de>
Date: 2024-02-14 17:23:27
Also in: lkml

On Wed, Feb 14, 2024, at 17:35, Marc Zyngier wrote:
On Wed, 14 Feb 2024 16:06:06 +0000,
"Arnd Bergmann" [off-list ref] wrote:
quoted
On Wed, Feb 14, 2024, at 10:52, Marc Zyngier wrote:
quoted
On Tue, 13 Feb 2024 22:56:19 +0000, Randy Dunlap [off-list ref] wrote:
quoted
diff -- a/drivers/of/Kconfig b/drivers/of/Kconfig
--- a/drivers/of/Kconfig
+++ b/drivers/of/Kconfig
@@ -80,7 +80,8 @@ config OF_ADDRESS
 
 config OF_IRQ
 	def_bool y
-	depends on !SPARC && IRQ_DOMAIN
+	depends on !SPARC
+	select IRQ_DOMAIN

This seems to be moving is the right direction.
Can we move the 'select IRQ_DOMAIN' under CONFIG_IRQCHIP
then and remove the individual selects from the irqchip
drivers? It looks like CONFIG_OF (other than sparc) now
unconditionally enables OF_IRQ and IRQCHIP anyway.
As long as it also works ACPI, it should be OK.
Out of the four architectures that have ACPI support (x86,
arm64, loongarch, rv64), only x86 doesn't always select
IRQ_DOMAIN already, and x86 selects it for almost all
configs:

config X86_UP_APIC
        bool "Local APIC support on uniprocessors" if !PCI_MSI
        default PCI_MSI
        depends on X86_32 && !SMP && !X86_32_NON_STANDARD

config X86_LOCAL_APIC
        def_bool y
        depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC || PCI_MSI
        select IRQ_DOMAIN_HIERARCHY

so it's only disabled here with

CONFIG_64BIT=n
CONFIG_SMP=n
CONFIG_X86_32_NON_STANDARD=n
CONFIG_ACPI=y
CONFIG_PCI=y (implied by ACPI)
CONFIG_PCI_MSI=n

As far as I can tell, this specific configuration is
currently able to save a little bit of kernel size
by avoiding IRQ_DOMAIN, but we are probably better off
enabling it here as well for consistency

     Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help