Re: [PATCH] PCI: Fix CONFIG_PCI_DYNAMIC_OF_NODES kconfig dependencies

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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
> 



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux