On Thu, Aug 31, 2023 at 11:19:07AM -0700, Lizhi Hou wrote: > Generating interrupt-map property depends on of_irq_parse_raw() which > is enabled by CONFIG_OF_IRQ. Change CONFIG_PCI_DYNAMIC_OF_NODES > dependency from CONFIG_OF to CONFIG_OF_IRQ. Most of include/linux/of_irq.h is under #ifdef CONFIG_OF_IRQ, with stubs for the non-CONFIG_OF_IRQ case, with of_irq_parse_raw() being one of a few exceptions. In the PCI_DYNAMIC_OF_NODES case, I think we probably want the Kconfig change in this patch because adding a stub would avoid the build error but the PCI_DYNAMIC_OF_NODES functionality wouldn't work. I dunno about the other uses of of_irq_parse_raw(). arch/powerpc/platforms/fsl_uli1575.c also uses it but has no obvious CONFIG_OF dependency. drivers/bcma/main.c uses it, but the call is under a CONFIG_OF_IRQ guard, and I guess the dead code gets eliminated when building without CONFIG_OF. > Reported-by: Guenter Roeck <groeck7@xxxxxxxxx> > Closes: https://lore.kernel.org/linux-devicetree/2187619d-55bc-41bb-bbb4-6059399db997@xxxxxxxxxxxx/ > Fixes: 407d1a51921e ("PCI: Create device tree node for bridge") > Signed-off-by: Lizhi Hou <lizhi.hou@xxxxxxx> Applied to for-linus for v6.6-rc1. Rob, let me know if you want it. > --- > drivers/pci/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig > index 49bd09c7dd0a..e9ae66cc4189 100644 > --- a/drivers/pci/Kconfig > +++ b/drivers/pci/Kconfig > @@ -196,7 +196,7 @@ config PCI_HYPERV > > config PCI_DYNAMIC_OF_NODES > bool "Create Device tree nodes for PCI devices" > - depends on OF > + depends on OF_IRQ > select OF_DYNAMIC > help > This option enables support for generating device tree nodes for some > -- > 2.34.1 >