[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <046e01d993a1$0b8f51e0$22adf5a0$@trustnetic.com>
Date: Wed, 31 May 2023 17:19:47 +0800
From: Jiawen Wu <jiawenwu@...stnetic.com>
To: "'Russell King \(Oracle\)'" <linux@...linux.org.uk>
Cc: <netdev@...r.kernel.org>,
<jarkko.nikula@...ux.intel.com>,
<andriy.shevchenko@...ux.intel.com>,
<mika.westerberg@...ux.intel.com>,
<jsd@...ihalf.com>,
<Jose.Abreu@...opsys.com>,
<andrew@...n.ch>,
<hkallweit1@...il.com>,
<oe-kbuild-all@...ts.linux.dev>,
<linux-i2c@...r.kernel.org>,
<linux-gpio@...r.kernel.org>,
<mengyuanlou@...-swift.com>,
"'Piotr Raczynski'" <piotr.raczynski@...el.com>
Subject: RE: [PATCH net-next v9 5/9] net: txgbe: Add SFP module identify
On Tuesday, May 30, 2023 4:41 PM, Jiawen Wu wrote:
> On Monday, May 29, 2023 10:06 AM, Jiawen Wu wrote:
> > On Friday, May 26, 2023 7:37 PM, Russell King (Oracle) wrote:
> > > On Fri, May 26, 2023 at 07:30:45PM +0800, kernel test robot wrote:
> > > > Kconfig warnings: (for reference only)
> > > > WARNING: unmet direct dependencies detected for I2C_DESIGNWARE_PLATFORM
> > > > Depends on [n]: I2C [=n] && HAS_IOMEM [=y] && (ACPI && COMMON_CLK [=y] || !ACPI)
> > > > Selected by [y]:
> > > > - TXGBE [=y] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_WANGXUN [=y] && PCI [=y]
> > > > WARNING: unmet direct dependencies detected for SFP
> > > > Depends on [n]: NETDEVICES [=y] && PHYLIB [=y] && I2C [=n] && PHYLINK [=y] && (HWMON [=n] || HWMON [=n]=n)
> > > > Selected by [y]:
> > > > - TXGBE [=y] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_WANGXUN [=y] && PCI [=y]
> > >
> > > ... and is basically caused by "select SFP". No. Do not do this unless
> > > you look at the dependencies for SFP and ensure that those are also
> > > satisfied - because if you don't you create messes like the above
> > > build errors.
> >
> > So how do I make sure that the module I need compiles and loads correctly,
> > rely on the user to manually select it?
>
> When I changed the TXGBE config to:
> ...
> depends on SFP
> select PCS_XPCS
> ...
> the compilation gave an error:
>
> drivers/net/phy/Kconfig:16:error: recursive dependency detected!
> drivers/net/phy/Kconfig:16: symbol PHYLIB is selected by PHYLINK
> drivers/net/phy/Kconfig:6: symbol PHYLINK is selected by PCS_XPCS
> drivers/net/pcs/Kconfig:8: symbol PCS_XPCS is selected by TXGBE
> drivers/net/ethernet/wangxun/Kconfig:40: symbol TXGBE depends on SFP
> drivers/net/phy/Kconfig:63: symbol SFP depends on PHYLIB
> For a resolution refer to Documentation/kbuild/kconfig-language.rst
> subsection "Kconfig recursive dependency limitations"
>
> Seems deleting "depends on SFP" is the correct way. But is this normal?
> How do we ensure the dependency between TXGBE and SFP?
Hi Russell,
Could you please give me some suggestions?
I checked "kconfig-language" doc, the practical solution is that swap all
"select FOO" to "depends on FOO" or swap all "depends on FOO" to
"select FOO". Config PCS_XPCS has to be selected in order to load modules
properly, so how should I fix the warning?
Powered by blists - more mailing lists