On x86_64, when CONFIG_PTP_1588_CLOCK_OPTIONAL=m, CONFIG_LIBWX can be set to 'y' by either of TXGBEVF=y or NGBEVF=y, causing kconfig unmet direct dependencies warning messages: WARNING: unmet direct dependencies detected for LIBWX Depends on [m]: NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_WANGXUN [=y] && PTP_1588_CLOCK_OPTIONAL [=m] Selected by [y]: - TXGBEVF [=y] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_WANGXUN [=y] && PCI [=y] && PCI_MSI [=y] - NGBEVF [=y] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_WANGXUN [=y] && PCI_MSI [=y] and subsequent build errors: ld: vmlinux.o: in function `wx_clean_tx_irq': drivers/net/ethernet/wangxun/libwx/wx_lib.c:757:(.text+0xa48f18): undefined reference to `ptp_schedule_worker' ld: vmlinux.o: in function `wx_get_ts_info': drivers/net/ethernet/wangxun/libwx/wx_ethtool.c:509:(.text+0xa4a58c): undefined reference to `ptp_clock_index' ld: vmlinux.o: in function `wx_ptp_stop': drivers/net/ethernet/wangxun/libwx/wx_ptp.c:838:(.text+0xa4b3dc): undefined reference to `ptp_clock_unregister' ld: vmlinux.o: in function `wx_ptp_reset': drivers/net/ethernet/wangxun/libwx/wx_ptp.c:769:(.text+0xa4b80c): undefined reference to `ptp_schedule_worker' ld: vmlinux.o: in function `wx_ptp_create_clock': drivers/net/ethernet/wangxun/libwx/wx_ptp.c:532:(.text+0xa4b9d1): undefined reference to `ptp_clock_register' Add dependency to PTP_1588_CLOCK_OPTIONAL for both txgbevf and ngbevf. This is needed since both of them select LIBWX and it depends on PTP_1588_CLOCK_OPTIONAL. Drop "depends on PCI" for TXGBEVF since PCI_MSI implies that. Move the driver name help text to the module name help text for both drivers. Fixes: 377d180bd71c ("net: wangxun: add txgbevf build") Fixes: a0008a3658a3 ("net: wangxun: add ngbevf build") Signed-off-by: Randy Dunlap Cc: Jiawen Wu Cc: Mengyuan Lou Cc: netdev@vger.kernel.org Cc: Andrew Lunn Cc: "David S. Miller" Cc: Eric Dumazet Cc: Jakub Kicinski Cc: Paolo Abeni --- drivers/net/ethernet/wangxun/Kconfig | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) --- linux-next-20250710.orig/drivers/net/ethernet/wangxun/Kconfig +++ linux-next-20250710/drivers/net/ethernet/wangxun/Kconfig @@ -66,35 +66,34 @@ config TXGBE config TXGBEVF tristate "Wangxun(R) 10/25/40G Virtual Function Ethernet support" - depends on PCI depends on PCI_MSI + depends on PTP_1588_CLOCK_OPTIONAL select LIBWX select PHYLINK help This driver supports virtual functions for SP1000A, WX1820AL, WX5XXX, WX5XXXAL. - This driver was formerly named txgbevf. - More specific information on configuring the driver is in . - To compile this driver as a module, choose M here. MSI-X interrupt - support is required for this driver to work correctly. + To compile this driver as a module, choose M here. The module + will be called txgbevf. MSI-X interrupt support is required + for this driver to work correctly. config NGBEVF tristate "Wangxun(R) GbE Virtual Function Ethernet support" depends on PCI_MSI + depends on PTP_1588_CLOCK_OPTIONAL select LIBWX help This driver supports virtual functions for WX1860, WX1860AL. - This driver was formerly named ngbevf. - More specific information on configuring the driver is in . - To compile this driver as a module, choose M here. MSI-X interrupt - support is required for this driver to work correctly. + To compile this driver as a module, choose M here. The module + will be called ngbefv. MSI-X interrupt support is required for + this driver to work correctly. endif # NET_VENDOR_WANGXUN