[PATCH] net: Tighten some network driver dependencies

Tom Rini trini at konsulko.com
Fri Jul 18 03:15:40 CEST 2025


A large number of network drivers cannot build without access to some
platform specific header files. Express those requirements in Kconfig as
well. This covers the QUICC engine drivers as that is networking
driver infrastructure.

Signed-off-by: Tom Rini <trini at konsulko.com>
---
 drivers/net/Kconfig         | 28 ++++++++++++++++++++--------
 drivers/net/pfe_eth/Kconfig |  1 +
 drivers/net/qe/Kconfig      |  1 +
 drivers/net/ti/Kconfig      |  3 +++
 drivers/qe/Kconfig          |  1 +
 5 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index f8c7637f0b9c..9f206c0b56de 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -173,6 +173,7 @@ config CORTINA_NI_ENET
 
 config CALXEDA_XGMAC
 	bool "Calxeda XGMAC support"
+	depends on ARCH_HIGHBANK
 	help
 	  This driver supports the XGMAC in Calxeda Highbank and Midway
 	  machines.
@@ -222,14 +223,14 @@ config DWC_ETH_QOS
 
 config DWC_ETH_QOS_ADI
 	bool "Synopsys DWC Ethernet QOS device support for ADI SC59x-64 parts"
-	depends on DWC_ETH_QOS
+	depends on DWC_ETH_QOS && ARCH_SC5XX
 	help
 		The Synopsis Designware Ethernet QoS IP block with the specific
 		configuration used in the ADI ADSP-SC59X 64 bit SoCs
 
 config DWC_ETH_QOS_IMX
 	bool "Synopsys DWC Ethernet QOS device support for IMX"
-	depends on DWC_ETH_QOS
+	depends on DWC_ETH_QOS && MACH_IMX
 	help
 	  The Synopsys Designware Ethernet QOS IP block with the specific
 	  configuration used in IMX soc.
@@ -243,7 +244,7 @@ config DWC_ETH_QOS_INTEL
 
 config DWC_ETH_QOS_ROCKCHIP
 	bool "Synopsys DWC Ethernet QOS device support for Rockchip SoCs"
-	depends on DWC_ETH_QOS
+	depends on DWC_ETH_QOS && ARCH_ROCKCHIP
 	select DM_ETH_PHY
 	help
 	  The Synopsys Designware Ethernet QOS IP block with specific
@@ -251,7 +252,7 @@ config DWC_ETH_QOS_ROCKCHIP
 
 config DWC_ETH_QOS_STM32
 	bool "Synopsys DWC Ethernet QOS device support for STM32"
-	depends on DWC_ETH_QOS
+	depends on DWC_ETH_QOS && ARCH_STM32MP
 	select DM_ETH_PHY
 	default y if ARCH_STM32MP
 	help
@@ -303,7 +304,7 @@ config E1000_SPI_GENERIC
 
 config E1000_SPI
 	bool "Enable SPI bus utility code"
-	depends on E1000
+	depends on E1000 && !E1000_NO_NVM
 	help
 	  Utility code for direct access to the SPI bus on Intel 8257x.
 	  This does not do anything useful unless you set at least one
@@ -319,6 +320,7 @@ config CMD_E1000
 
 config EEPRO100
 	bool "Intel PRO/100 82557/82559/82559ER Fast Ethernet support"
+	depends on !64BIT
 	help
 	  This driver supports Intel(R) PRO/100 82557/82559/82559ER fast
 	  ethernet family of adapters.
@@ -382,7 +384,7 @@ config ETH_DESIGNWARE_SOCFPGA
 
 config ETH_DESIGNWARE_S700
 	bool "Actins S700 glue driver for Synopsys Designware Ethernet MAC"
-	depends on ETH_DESIGNWARE
+	depends on ETH_DESIGNWARE && ARCH_OWL
 	help
 	  This provides glue layer to use Synopsys Designware Ethernet MAC
 	  present on Actions S700 SoC.
@@ -416,7 +418,7 @@ config FEC_MXC
 
 config FMAN_ENET
 	bool "Freescale FMan ethernet support"
-	depends on ARM || PPC
+	depends on FSL_LSCH2 || PPC
 	select SYS_FMAN_V3 if ARCH_B4420 || ARCH_B4860 || ARCH_LS1043A || \
 		ARCH_LS1046A || ARCH_T1024 || ARCH_T1040 || ARCH_T1042 || \
 		ARCH_T2080 || ARCH_T4240
@@ -488,6 +490,7 @@ config SYS_DISCOVER_PHY
 
 config MCFFEC
 	bool "ColdFire Ethernet Support"
+	depends on M68K
 	select PHYLIB
 	select SYS_DISCOVER_PHY
 	help
@@ -551,6 +554,7 @@ config MVPP2
 
 config MACB
 	bool "Cadence MACB/GEM Ethernet Interface"
+	depends on ARM || RISCV
 	select PHYLIB
 	help
 	  The Cadence MACB ethernet interface is found on many Atmel
@@ -587,6 +591,7 @@ config MT7628_ETH
 
 config NET_NPCM750
 	bool "Nuvoton NPCM750 Ethernet MAC"
+	depends on ARCH_NPCM
 	help
 	  support NPCM750 EMAC
 
@@ -661,6 +666,7 @@ source "drivers/net/qe/Kconfig"
 
 config RTL8139
 	bool "Realtek 8139 series Ethernet controller driver"
+	depends on !64BIT
 	help
 	  This driver supports Realtek 8139 series fast ethernet family of
 	  PCI chipsets/adapters.
@@ -714,6 +720,7 @@ config SUN7I_GMAC_FORCE_TXERR
 
 config SUN4I_EMAC
 	bool "Allwinner Sun4i Ethernet MAC support"
+	depends on ARCH_SUNXI
 	select PHYLIB
 	help
 	  This driver supports the Allwinner based SUN4I Ethernet MAC.
@@ -729,6 +736,7 @@ config SUN8I_EMAC
 
 config SH_ETHER
 	bool "Renesas SH Ethernet MAC"
+	depends on ARCH_RENESAS
 	select PHYLIB
 	select PHY_ETHERNET_ID
 	help
@@ -738,6 +746,7 @@ source "drivers/net/ti/Kconfig"
 
 config TULIP
 	bool "DEC Tulip DC2114x Ethernet support"
+	depends on !64BIT
 	help
 	  This driver supports DEC DC2114x Fast ethernet chips.
 
@@ -791,6 +800,7 @@ config XILINX_AXIMRMAC
 
 config VSC7385_ENET
 	bool "Vitesse 7385 Switch Firmware Upload driver"
+	depends on !COMPILE_TEST && PPC
 
 config XILINX_EMACLITE
 	select PHYLIB
@@ -802,6 +812,7 @@ config XILINX_EMACLITE
 config ZYNQ_GEM
 	select PHYLIB
 	bool "Xilinx Ethernet GEM"
+	depends on ARCH_VERSAL || ARCH_VERSAL_NET || ARCH_VERSAL2 || ARCH_ZYNQ || ARCH_ZYNQMP
 	help
 	  This MAC is present in Xilinx Zynq and ZynqMP SoCs.
 
@@ -815,7 +826,7 @@ config PIC32_ETH
 
 config GMAC_ROCKCHIP
 	bool "Rockchip Synopsys Designware Ethernet MAC"
-	depends on ETH_DESIGNWARE
+	depends on ETH_DESIGNWARE && ARCH_ROCKCHIP
 	help
 	  This driver provides Rockchip SoCs network support based on the
 	  Synopsys Designware driver.
@@ -942,6 +953,7 @@ config SYS_FSL_QMAN_V3
 config TSEC_ENET
 	select PHYLIB
 	bool "Enable Three-Speed Ethernet Controller"
+	depends on ARCH_LS1021A || PPC
 	help
 	  This driver implements support for the (Enhanced) Three-Speed
 	  Ethernet Controller found on Freescale SoCs.
diff --git a/drivers/net/pfe_eth/Kconfig b/drivers/net/pfe_eth/Kconfig
index b2724ee3e846..f5947ab5f17f 100644
--- a/drivers/net/pfe_eth/Kconfig
+++ b/drivers/net/pfe_eth/Kconfig
@@ -1,5 +1,6 @@
 menuconfig FSL_PFE
 	bool "NXP PFE Ethernet driver"
+	depends on ARCH_LS1012A
 	help
 	  This driver provides support for NXP's Packet Forwarding Engine.
 
diff --git a/drivers/net/qe/Kconfig b/drivers/net/qe/Kconfig
index e795e913d42d..34de23903100 100644
--- a/drivers/net/qe/Kconfig
+++ b/drivers/net/qe/Kconfig
@@ -4,5 +4,6 @@
 
 config QE_UEC
 	bool "NXP QE UEC Ethernet controller"
+	depends on PPC
 	help
 	  This driver supports the NXP QE UEC ethernet controller
diff --git a/drivers/net/ti/Kconfig b/drivers/net/ti/Kconfig
index ddfa95a0b7e9..52267339de08 100644
--- a/drivers/net/ti/Kconfig
+++ b/drivers/net/ti/Kconfig
@@ -4,6 +4,7 @@
 
 config DRIVER_TI_CPSW
 	bool "TI Common Platform Ethernet Switch"
+	depends on ARCH_OMAP2PLUS
 	select PHYLIB
 	help
 	  This driver supports the TI three port switch gigabit ethernet
@@ -11,6 +12,7 @@ config DRIVER_TI_CPSW
 
 config DRIVER_TI_EMAC
 	bool "TI Davinci EMAC"
+	depends on ARCH_DAVINCI || ARCH_OMAP2PLUS
 	help
 	   Support for davinci emac
 
@@ -22,6 +24,7 @@ config DRIVER_TI_EMAC_USE_RMII
 
 config DRIVER_TI_KEYSTONE_NET
 	bool "TI Keystone 2 Ethernet"
+	depends on ARCH_KEYSTONE
 	help
 	   This driver supports the TI Keystone 2 Ethernet subsystem
 
diff --git a/drivers/qe/Kconfig b/drivers/qe/Kconfig
index 89a75c175b00..22ed80bfc66e 100644
--- a/drivers/qe/Kconfig
+++ b/drivers/qe/Kconfig
@@ -11,6 +11,7 @@ config QE
 
 config U_QE
 	bool "Enable support for U QUICC Engine"
+	depends on PPC || ARCH_LS1012A || ARCH_LS1021A || ARCH_LS1043A
 	default y if (ARCH_LS1021A && !SD_BOOT && !NAND_BOOT && !QSPI_BOOT) \
 		|| (TARGET_T1024QDS) \
 		|| (TARGET_T1024RDB) \
-- 
2.43.0



More information about the U-Boot mailing list