mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] misc: Kconfig: tc9564: fix a circular dependency
@ 2026-10-02  1:33 Alex Elder
  2026-10-02  6:02 ` Arnd Bergmann
  0 siblings, 1 reply; 2+ messages in thread
From: Alex Elder @ 2026-10-02  1:33 UTC (permalink / raw)
  To: arnd, gregkh; +Cc: daniel, bhelgaas, linux-kernel, kernel test robot

The TC9564_PCI config option selects PCI_DYNAMIC_OF_NODES.  But that
depends on OF_IRQ, and TC9564_PCI does not satisfy that dependency.

Simply adding "depends on OF_IRQ" results in a recursive Kconfig
dependency.

A little experimentation shows that the recursion can be avoided
when "depends on OF_IRQ" is added by *depending on* rather than
*selecting* PCI_QUIRKS.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202610020124.ieOiopjQ-lkp@intel.com/
Fixes: 1304b0c47ef81 ("misc: tc9564: introduce base PCI driver")
Signed-off-by: Alex Elder <elder@riscstar.com>
---
 drivers/misc/Kconfig | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
index 9c5b1e9d672e8..87ea92af81dca 100644
--- a/drivers/misc/Kconfig
+++ b/drivers/misc/Kconfig
@@ -571,9 +571,10 @@ config MCHP_LAN966X_PCI
 config TC9564_PCI
 	tristate "Toshiba TC9564 PCI function support"
 	depends on OF
+	depends on OF_IRQ
 	depends on PCI
+	depends on PCI_QUIRKS
 	select PCI_DYNAMIC_OF_NODES
-	select PCI_QUIRKS
 	default m
 	help
 	  This enables support for two PCI functions implemented by the

base-commit: 04434a1d0f311d76b1f15fa987918b471a0b8c6a
-- 
2.53.0


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] misc: Kconfig: tc9564: fix a circular dependency
  2026-10-02  1:33 [PATCH] misc: Kconfig: tc9564: fix a circular dependency Alex Elder
@ 2026-10-02  6:02 ` Arnd Bergmann
  0 siblings, 0 replies; 2+ messages in thread
From: Arnd Bergmann @ 2026-10-02  6:02 UTC (permalink / raw)
  To: Alex Elder, Greg Kroah-Hartman
  Cc: daniel, bhelgaas, linux-kernel, kernel test robot

On Fri, Oct 2, 2026, at 03:33, Alex Elder wrote:
> The TC9564_PCI config option selects PCI_DYNAMIC_OF_NODES.  But that
> depends on OF_IRQ, and TC9564_PCI does not satisfy that dependency.
>
> Simply adding "depends on OF_IRQ" results in a recursive Kconfig
> dependency.
>
> A little experimentation shows that the recursion can be avoided
> when "depends on OF_IRQ" is added by *depending on* rather than
> *selecting* PCI_QUIRKS.

Hi Alex,

This change looks technically correct, but I find the description
misleading as you are not actually fixing a circular dependency
but instead a missing one.

> diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
> index 9c5b1e9d672e8..87ea92af81dca 100644
> --- a/drivers/misc/Kconfig
> +++ b/drivers/misc/Kconfig
> @@ -571,9 +571,10 @@ config MCHP_LAN966X_PCI
>  config TC9564_PCI
>  	tristate "Toshiba TC9564 PCI function support"
>  	depends on OF
> +	depends on OF_IRQ
>  	depends on PCI
> +	depends on PCI_QUIRKS
>  	select PCI_DYNAMIC_OF_NODES
> -	select PCI_QUIRKS
>  	default m

I would go further here and simplify this to

config TC9564_PCI
 	tristate "Toshiba TC9564 PCI function support"
        depends on PCI && PCI_DYNAMIC_OF_NODES && PCI_QUIRKS

(in either one or three lines)

CONFIG_PCI_DYNAMIC_OF_NODES is a user-visible option, so you
should not select it from a driver.

  Arnd

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-10-02  6:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-02  1:33 [PATCH] misc: Kconfig: tc9564: fix a circular dependency Alex Elder
2026-10-02  6:02 ` Arnd Bergmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®