summaryrefslogtreecommitdiff
path: root/drivers/net/Kconfig
AgeCommit message (Collapse)Author
11 daysnet: Correct dependencies for HIFEMAC_ETHTom Rini
The HIFEMAC_ETH functionality can only work with both DM_ETH_PHY and DM_MDIO enabled (it calls one of the functions that requires both), so express this dependency in Kconfig. Signed-off-by: Tom Rini <[email protected]>
11 daysnet: Rework dependencies around NET/NET_LWIP and NETDEVICESTom Rini
Functionally, both networking stacks require DM_ETH. This is because they both also require some networking devices to be enabled. Express this more correctly by having both NET and NET_LWIP select NETDEVICES. In turn NETDEVICES no longer depends on NET or NET_LWIP as it's not prompted anymore. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Jerome Forissier <[email protected]>
11 daysnet: Rework some symbol dependenciesTom Rini
As exposed by "make randconfig", we have a few dependency issues with some network drivers: - Both HIFEMAC_ETH and HIGMACV300_ETH functionally require both DM and OF_CONTROL. Further, HIFEMAC_ETH needs DM_CLK not just CLK to be selected. - BNXT_ETH deals with it's PCI requirement in a backwards way. The symbol PCI_INIT_R is board specific, PCI alone is required to build. Signed-off-by: Tom Rini <[email protected]>
2026-03-13Merge tag 'net-20260312' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-net into next Pull request net-20260312. net: - Move network PHY under NETDEVICES - s/DM_CLK/CLK/ in HIFEMAC_{ETH,MDIO} - Add support for Airoha AN8811HB PHY - airoha: PCS and MDIO support for Airoha AN7581 SoC net-lwip: - Fix issue when TFTP blocksize is >8192 - Adjust PBUF_POOL_SIZE/IP_REASS_MAX_PBUFS for better performance and resource usage. - Enable mii command for NET_LWIP
2026-03-13net: Move network PHY under NETDEVICESTom Rini
A number of network PHY drivers have Kconfig dependencies on various network drivers under NETDEVICES. This is in addition to logical dependencies of network PHYs needing network drivers. Resolve the Kconfig problems by moving the network PHY lines to be after the network devices, within the overall NETDEVICES guard. Signed-off-by: Tom Rini <[email protected]> Acked-by: Jerome Forissier <[email protected]>
2026-03-13net: do not use non-existent CONFIG_DM_CLKHeinrich Schuchardt
For enabling the clock driver we use symbol CONFIG_CLK. Select this symbol for the HiSilicon Fast Ethernet Controller driver. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2026-03-12net: airoha: makes PCS support optionalMikhail Kshevetskiy
It's not possible to disable PCS support just now, an7581 u-boot will not compile. This patch fixes an issue. Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2026-03-12net: airoha: fill in support for PCS/PHY in Airoha Ethernet driverChristian Marangi
Add required changes to call PCS function to configure the Serdes Port. The Ethernet driver is adapted following Upstream Kernel node structure. Function calling order is the same of Phylink upstream kernel. With the PCS support, also add support for attaching PHY. With "in-band-status" set in DT for the managed property, a rudimental support for SFP module is present. Signed-off-by: Christian Marangi <[email protected]>
2026-03-12net: airoha: add support for Airoha PCS driverChristian Marangi
Add support for Airoha PCS driver present on AN7581 SoC. This is needed to configure the Serdes port for the different PHY mode. Signed-off-by: Christian Marangi <[email protected]>
2026-02-14Replace TARGET namespace and cleanup properlyTien Fong Chee
TARGET namespace is for machines / boards / what-have-you that building U-Boot for. Simply replace from TARGET to ARCH make things more clear and proper for ALL SoCFPGA. Signed-off-by: Brian Sune <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]> # Conflicts: # drivers/ddr/altera/Makefile
2026-02-09Merge tag 'net-20260209' of https://source.denx.de/u-boot/custodians/u-boot-netTom Rini
Pull request net-20260209. net: - airoha: mdio support for the switch - phy: mscc: allow RGMII with internal delay for the VSC8541 - dwc_eth_qos: Update tail pointer handling net-legacy: - Stop conflating return value with file size in net_loop() net-lwip: - wget: rework the '#' printing - tftp: add support of tsize option to client
2026-02-06net: fec_mxc: Add support for i.MX91Primoz Fiser
The i.MX91 SoC reuses the ENET FEC from i.MX93. Add all required driver checks to make it work also on the i.MX91 based platforms. Signed-off-by: Primoz Fiser <[email protected]>
2026-02-06net: airoha_eth: fix mdio binding to switch deviceMikhail Kshevetskiy
Commit d2145a89bcf6 ("net: airoha: bind MDIO controller on Ethernet load") refers to non-present CONFIG_MDIO_MT7531 and non-present "mt7531-mdio" driver. It should use CONFIG_MDIO_MT7531_MMIO and "mt7531-mdio-mmio" instead. Fixes: d2145a89bcf6 ("net: airoha: bind MDIO controller on Ethernet load") Signed-off-by: Mikhail Kshevetskiy <[email protected]>
2026-01-21arm: Remove remainder of ARCH_ORION5XTom Rini
With commit 5663b137e682 ("arm: Remove edminiv2 board") the last ARCH_ORION5X platform was removed. Remove the rest of the architecture code which is now unused. Reviewed-by: Tony Dinh <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2026-01-15net: add Microsemi/Microchip MDIO driverRobert Marko
Add Microsemi/Microchip MDIO driver for interfaces found in their network switches. Driver is based on the Linux version. Signed-off-by: Robert Marko <[email protected]> Acked-by: Jerome Forissier <[email protected]>
2026-01-09dm: core: Default to using DEVRES outside of xPLTom Rini
The devm alloc functions that we have may follow the Linux kernel model where allocations are (almost always) automatically free()'d. However, quite often we don't enable, in full U-Boot, the tracking and free()'ing functionality. This in turn leads to memory leaks because the driver author expects that since the functions have the same name as in the Linux Kernel they have the same behavior. In turn we then get functionally correct commits such as commit 00e1fed93c8c ("firmware: ti_sci: Fix memory leaks in devm_ti_sci_get_of_resource") that manually add these calls. Rather than manually tracking allocations and implementing free()s, rework things so that we follow expectations by enabling the DEVRES functionality (outside of xPL phases). This turns DEVRES from a prompted symbol to a symbol that must be select'd, and we now remove our non-managed alloc/free functions from outside of xPL builds. Reviewed-by: Michael Trimarchi <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-12-01net: airoha: bind MDIO controller on Ethernet loadChristian Marangi
Bind MDIO controller on Ethernet Controller load. The Airoha AN7581 SoC have an integrated Switch based on MT7531 (or more saying MT7988). Attach it to the mdio node in the switch node to support scanning for MDIO devices on the BUS with DM API. Signed-off-by: Christian Marangi <[email protected]>
2025-11-06net: rswitch: Add Renesas R-Car X5H Ethernet Switch3 supportMarek Vasut
Add support for the Renesas Ethernet Switch3 (RSW3) controller, present in R-Car Gen5 SoCs such as R-Car X5H (R8A78000). The hardware offset differences are handled via driver match data. The driver newly detects whether the switch prot is connected to xPCS or not, and if so, turns on MIOC bit 3. This is new on R-Car X5H. GWCKSC register is also programmed only on X5H. The rest of the operation is identical to RSwitch2. Signed-off-by: Marek Vasut <[email protected]> Signed-off-by: Tam Nguyen <[email protected]> Signed-off-by: Phong Hoang <[email protected]> Signed-off-by: Thanh Quan <[email protected]> Signed-off-by: Hai Pham <[email protected]>
2025-11-04net: fsl_enetc: Add i.MX94 support to NETC block control driverYe Li
Extend the NETC block control driver to support the i.MX94 SoC. Acked-by: Peng Fan <[email protected]> Reviewed-by: Jacky Bai <[email protected]> Signed-off-by: Ye Li <[email protected]> Signed-off-by: Alice Guo <[email protected]>
2025-10-22net: mediatek: move MT7531 MMIO MDIO to dedicated driverChristian Marangi
In preparation for support of MDIO on AN7581, move the MT7531 MMIO logic to a dedicated driver and permit usage of the mdio read/write function to the mtk_eth driver. This only affect MT7988 that can use MMIO operation to access the Switch register. The MT7988 code is updated to make use of the external driver. This permits Airoha driver to make use of DM_MDIO to bind for the MT7531 driver that have the same exact register. Signed-off-by: Christian Marangi <[email protected]>
2025-10-22net: Tighten more driver dependenciesTom Rini
In this case, the mediatek network drivers cannot build outside of ARCH_MEDIATEK or ARCH_MTMIPS, and so express this requirement in Kconfig as well. In the case of DWC_ETH_XGMAC / DWC_ETH_XGMAC_SOCFPGA, the file controlled by the DWC_ETH_XGMAC option references a socfpga-specific array defined in the file controlled by DWC_ETH_XGMAC_SOCFPGA. Rework these options in Kconfig to handle this dependency. Signed-off-by: Tom Rini <[email protected]>
2025-10-22arm: socfpga: Tighten a few more driver dependenciesTom Rini
Some drivers which depend on SoCFPGA specific headers had not had appropriate dependencies list in Kconfig. Add ARCH_SOCFPGA or TARGET_SOCFPGA_SOC64 where appropriate. Signed-off-by: Tom Rini <[email protected]>
2025-09-30net: fix RMII help textYegor Yefremov
Replace MII with RMII as it is a Reduced Media-Independent Interface. Signed-off-by: Yegor Yefremov <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2025-08-01arm: bcm281xx: Remove ethernet driverTom Rini
As no platforms enable the ethernet driver, remove it. Signed-off-by: Tom Rini <[email protected]>
2025-08-01net: Tighten some network driver dependenciesTom Rini
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 <[email protected]>
2025-07-17drivers: net: Add T-Head DWMAC glue layerYao Zi
The Designware IP integrated in TH1520 SoC requires extra clock configuration to operate correctly. The Linux kernel's T-Head DWMAC glue driver is ported and adapted to U-Boot's API. Signed-off-by: Yao Zi <[email protected]> Acked-by: Leo Yu-Chi Liang <[email protected]>
2025-05-04net: ravb: Add RZ/G2L SupportPaul Barker
The Renesas R9A07G044L (RZ/G2L) SoC includes two Gigabit Ethernet interfaces which can be supported using the ravb driver. Some RZ/G2L specific steps need to be taken during initialization due to differences between this SoC and previously supported SoCs. We also need to ensure that the module reset is de-asserted after the module clock is enabled but before any Ethernet register reads/writes take place. Signed-off-by: Paul Barker <[email protected]>
2025-04-23net: lwip: allow DM_DSA=y when NET_LWIP=yJerome Forissier
Now that the DSA tests in test/dm/dsa.c are compatible with NET_LWIP, remove the dependency of DM_DSA on NET. Signed-off-by: Jerome Forissier <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2025-04-23drivers: net: sandbox: add support for NET_LWIPJerome Forissier
Make the sandbox mock ethernet driver (drivers/net/sandbox.c) compatible with NET_LWIP by not relying on any of the structures or functions defined in net-legacy.h. This is done by providing local definitions of the various protocol structures (Ethernet, ARP, IPv4, ICMP). Drop the stub driver that was introduced specifically for NET_LWIP (drivers/net/sandbox-lwip.c). Signed-off-by: Jerome Forissier <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2025-04-16net: airoha: Add Airoha Ethernet driverChristian Marangi
Add airoha Ethernet driver for Airoha AN7581 SoC. This is a majorly rewritten and simplified version of the Linux airoha_eth.c driver. It's has been modified to support a single RX/TX ring to reflect U-Boot implementation with recv and send API. The struct and the define are kept as similar as possible to upstream one to not diverge too much. The AN7581 SoC include an Ethernet Switch based on the Mediatek MT753x but doesn't require any modification aside from setting the CPU port and applying the Flood configuration hence it can be handled entirely in the Ethernet driver. Signed-off-by: Christian Marangi <[email protected]>
2025-03-12Merge patch series "drivers: Driver support for ADI SC5xx SoCs"Tom Rini
Greg Malysa <[email protected]> says: This series adds all of the supported peripheral drivers for the sc5xx series of SoCs from Analog Devices and other drivers that are used by the evaluation kits, such as a GPIO expander used by the EZLITE carrier boards. This series passes gitlab CI tests. Link: https://lore.kernel.org/r/[email protected]
2025-03-12net: Add support for ADI SC5xx SoCs with DWC QoS ethernetGreg Malysa
The ADI SC598 includes a Designware QoS 5.20a IP block. This commit adds support for using the existing ethernet QoS driver with the SC598 SoC. Co-developed-by: Ian Roberts <[email protected]> Signed-off-by: Ian Roberts <[email protected]> Co-developed-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Nathan Barrett-Morrison <[email protected]> Signed-off-by: Vasileios Bimpikas <[email protected]> Signed-off-by: Utsav Agarwal <[email protected]> Signed-off-by: Arturs Artamonovs <[email protected]> Signed-off-by: Oliver Gaskell <[email protected]> Signed-off-by: Greg Malysa <[email protected]>
2025-03-11net: ravb: Add dependency on CONFIG_BITBANGMIIPaul Barker
The Renesas RAVB driver always requires bitbang MDIO bus support. Fixes: 8ae51b6f324e ("net: ravb: Add Renesas Ethernet RAVB driver") Signed-off-by: Paul Barker <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2025-01-23Merge patch series "MediaTek ethernet driver refactor and updates"Tom Rini
Weijie Gao <[email protected]> says: This patch series will split the switch initialization code from mtk_eth driver into their own files and then add new SoC and switch support. Link: https://lore.kernel.org/r/[email protected]
2025-01-23net: mediatek: split ethernet switch code from mtk_eth.cWeijie Gao
mtk_eth.c contains not only the ethernet GMAC/DMA driver, but also some ethernet switch initialization code. As we may add more switch support in the future, it's better to move them out of mtk_eth.c to avoid increasing the code complexity. Since not all switches are supported for a particular board, Kconfig options are added to allow user to select which switch should be built into u-boot. If multiple switches are selected, auto-detecting can also be enabled. Signed-off-by: Weijie Gao <[email protected]>
2025-01-20net: fsl_enetc: Add initial netc-blk-ctrl driver supportMarek Vasut
The netc-blk-ctrl driver is used to configure Integrated Endpoint Register Block (IERB) and Privileged Register Block (PRB) of NETC. For i.MX platforms, it is also used to configure the NETCMIX block. The IERB contains registers that are used for pre-boot initialization, debug, and non-customer configuration. The PRB controls global reset and global error handling for NETC. The NETCMIX block is mainly used to set MII protocol and PCS protocol of the links, it also contains settings for some other functions. Note the IERB configuration registers can only be written after being unlocked by PRB, otherwise, all write operations are inhibited. A warm reset is performed when the IERB is unlocked, and it results in an FLR to all NETC devices. Therefore, all NETC device drivers must be probed or initialized after the warm reset is finished. Ported from Linux 6.13-rc as of commit fe5ba6bf91b3 ("net: enetc: add initial netc-blk-ctrl driver support") Signed-off-by: Marek Vasut <[email protected]>
2025-01-01Bitbanging MDIO driver for DM framework.Markus Gothe
Linux DTS compatible MDIO bitbanging driver. Both clause 22 and clause 45 MDIO supported and validated. Heavily based on the Linux drivers (more or less the same code base). Signed-off-by: Markus Gothe <[email protected]>
2024-12-31net: mediatek: make sgmii/usxgmii optionalWeijie Gao
Not all platforms supports sgmii and/or usxgmii. So we add Kconfig options for these features and enable them only for supported platforms. Signed-off-by: Weijie Gao <[email protected]>
2024-10-27Merge a patch series to improve dc2114x supportTom Rini
This patch series by Hanyuan Zhao <[email protected]> provides a number of improvements to the dc2114x driver. Link: https://lore.kernel.org/r/[email protected]
2024-10-27Merge patch series "net: ksz9477: add support for KSZ GbE switches using SPI ↵Tom Rini
bus" Romain Naour <[email protected]> says: We are using a custom board where an ethernet switch device KSZ9896 is available. This family of devices can use several types of serial bus as management interface: mdio, i2c or SPI. Due to board design constraints and because we initially planned to use this device only from Linux, the SPI bus was used. Luckily we are using a recent enough u-boot release where KSZ9477 driver is available... but only for the i2c interface. Indeed, unlike the kernel driver, the KSZ9477 driver doesn't use the regmap API to access the underlying bus since the regmap API is limited to direct memory access [1]. Until regmap API with bus support is available in U-boot, we introduced struct ksz_phy_ops to store low-level ksz bus operations (I2C or SPI). This series has been tested on the current master branch (after v2024.10 release). [1] https://source.denx.de/u-boot/u-boot/-/blob/v2024.10-rc5/drivers/core/Kconfig?ref_type=tags#L188 Link: https://lore.kernel.org/r/[email protected]
2024-10-27net: ksz9477: add support for KSZ GbE switches using SPI busRomain Naour
The Microchip KSZ Gigabit Ethernet Switches support SGMII/RGMII/MII/RMII with register access via SPI, I2C, or MDIO. Since this driver is now able to check the underlying bus type, handle the case when the SPI bus is used. The SPI bus is only used for 8/16/32 wide access of registers. Reword Kconfig option to include SPI bus support. Signed-off-by: Romain Naour <[email protected]>
2024-10-27net: dc2114x: allow users to decide how to tx packets according to IP coreHanyuan Zhao
Some IP cores of dc2114x or its variants do not comply so well with the behaviors described by the official document. Originally this driver uses only one tx descriptor and organizes it as a ring buffer, which would lead to a problem that one packet would be sent twice. This commit adds support to prevent this bug if you are using IP cores with this issue, by using multiple tx descriptors and organizing them as a real well-defined ring buffer. Signed-off-by: Hanyuan Zhao <[email protected]>
2024-10-27net: dc2114x: allow users to decide whether to detect the tx No Carrier errorsHanyuan Zhao
Some IP cores of dc2114x or its variants do not comply so well with the behaviors described by the official document. A packet could be sent successfully but reported with No Carrier error. Latest drivers of this IP core have not detect this error anymore. Signed-off-by: Hanyuan Zhao <[email protected]>
2024-10-27net: dc2114x: add support for platforms that don't have pci controllersHanyuan Zhao
There're a few ethernet IP cores which have the same functions with dc2114x, and can be connected to CPU by AXI or other buses. This commit adds support for the platforms that do not have PCI controllers, using MMIO to communicate with the dc2114x IP core. Signed-off-by: Hanyuan Zhao <[email protected]>
2024-10-16net: lwip: add DHCP support and dhcp commmandJerome Forissier
Add what it takes to enable NETDEVICES with NET_LWIP and enable DHCP as well as the dhcp command. CMD_TFTPBOOT is selected by BOOTMETH_EFI due to this code having an implicit dependency on do_tftpb(). Note that PXE is likely non-fonctional with NET_LWIP (or at least not 100% functional) because DHCP option 209 is not supported by the lwIP library. Therefore, BOOTP_PXE_DHCP_OPTION cannot be enabled. Signed-off-by: Jerome Forissier <[email protected]> Tested-by: Ilias Apalodimas <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2024-10-16net: introduce alternative implementation as net/lwip/Jerome Forissier
Prepare the introduction of the lwIP (lightweight IP) TCP/IP stack by adding a new net/lwip/ directory and the NET_LWIP symbol. Network support is either NO_NET, NET (legacy stack) or NET_LWIP. Subsequent commits will introduce the lwIP code, re-work the NETDEVICE integration and port some of the NET commands and features to lwIP. SPL_NET cannot be enabled when NET_LWIP=y. SPL_NET pulls some symbols that are part of NET (such as arp_init(), arp_timeout_check(), arp_receive(), net_arp_wait_packet_ip()). lwIP support in SPL may be added later. Similarly, DFU_TFTP and FASTBOOT are not compatible with NET_LWIP because of dependencies on net_loop(), tftp_timeout_ms, tftp_timeout_count_max and other NET things. Let's add a dependency on !NET_LWIP for now. SANDBOX can select NET_LWIP but doing so will currently disable the eth dm tests as well as the wget tests which have strong dependencies on the NET code. Other adjustments to Kconfig files are made to fix "unmet direct dependencies detected" for USB_FUNCTION_SDP and CMD_FASTBOOT when the default networking stack is set to NET_LWIP ("default NET_LWIP" instead of "default NET" in Kconfig). The networking stack is now a choice between NO_NET, NET and NET_LWIP. Therefore '# CONFIG_NET is not set' should be 'CONFIG_NO_NET=y'. Adjust the defconfigs accordingly. Signed-off-by: Jerome Forissier <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2024-10-16sandbox: add dummy driver ETH_SANDBOX_LWIPJerome Forissier
Introduce ETH_SANDBOX_LWIP which enables a mock driver similar to ETH_SANDOX but without the dependencies on the legacy network stack (NET) so that it may be enabled when the lwIP stack (NET_LWIP) is introduced. The driver does nothing at this stage but its presence will allow dm_test_iommu_noiommu [1] to pass. [1] ./u-boot -T -c "ut dm dm_test_iommu_noiommu" Signed-off-by: Jerome Forissier <[email protected]> Acked-by: Ilias Apalodimas <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-10-11Merge patch series "Tidy up use of 'SPL' and CONFIG_SPL_BUILD"Tom Rini
Simon Glass <[email protected]> says: When the SPL build-phase was first created it was designed to solve a particular problem (the need to init SDRAM so that U-Boot proper could be loaded). It has since expanded to become an important part of U-Boot, with three phases now present: TPL, VPL and SPL Due to this history, the term 'SPL' is used to mean both a particular phase (the one before U-Boot proper) and all the non-proper phases. This has become confusing. For a similar reason CONFIG_SPL_BUILD is set to 'y' for all 'SPL' phases, not just SPL. So code which can only be compiled for actual SPL, for example, must use something like this: #if defined(CONFIG_SPL_BUILD) && !defined(CONFIG_TPL_BUILD) In Makefiles we have similar issues. SPL_ has been used as a variable which expands to either SPL_ or nothing, to chose between options like CONFIG_BLK and CONFIG_SPL_BLK. When TPL appeared, a new SPL_TPL variable was created which expanded to 'SPL_', 'TPL_' or nothing. Later it was updated to support 'VPL_' as well. This series starts a change in terminology and usage to resolve the above issues: - The word 'xPL' is used instead of 'SPL' to mean a non-proper build - A new CONFIG_XPL_BUILD define indicates that the current build is an 'xPL' build - The existing CONFIG_SPL_BUILD is changed to mean SPL; it is not now defined for TPL and VPL phases - The existing SPL_ Makefile variable is renamed to SPL_ - The existing SPL_TPL Makefile variable is renamed to PHASE_ It should be noted that xpl_phase() can generally be used instead of the above CONFIGs without a code-space or run-time penalty. This series does not attempt to convert all of U-Boot to use this new terminology but it makes a start. In particular, renaming spl.h and common/spl seems like a bridge too far at this point. The series is fully bisectable. It has also been checked to ensure there are no code-size changes on any commit.
2024-10-11net: freescale: Drop use of SPL_BUILD dependencySimon Glass
SPL_BUILD is not a Kconfig symbol. Perhaps the intent here is to use SPL instead. However, this causes build errors, e.g. with T1024RDB_NAND So drop the dependency on !SPL_BUILD since it does nothing. Signed-off-by: Simon Glass <[email protected]>
2024-09-24net: ftgmac100: depend on NETJerome Forissier
FTGMAC100 enables drivers/net/ftgmac100.c which uses PHY_INTERFACE_MODE_NCSI, which is defined only when PHY_NCSI is enabled. Therefore FTGMAC100 depends on PHY_NCSI. However adding such a dependency causes a "recursive dependency detected!" message, so add a dependency on NET instead (PHY_NCSI depends on NET). All in all, either the stack is NET and FTGMAC100 can be enabled, or it is NET_LWIP (or NO_NET) and it cannot. Signed-off-by: Jerome Forissier <[email protected]> Reviewed-by: Peter Robinson <[email protected]> Reviewed-by: Simon Glass <[email protected]>