[U-Boot] [PATCHv6 04/28] net: sunxi simplify defconfig

Olliver Schinagl oliver at schinagl.nl
Mon May 15 08:02:20 UTC 2017


We currently have a few dependencies explicitly set in the sunxi
defconfigs. Things such as, RGMII, DESIGNWARE_ETH in combination with
SUN7I_GMAC. When selecting SUN7I_GMAC we already imply DESIGNWARE_ETH
for example.

This patch puts this logic into the Kconfig thus simplifying the
defconfigs. For a user it is also no more logical when enabling one of
the drivers in Kconfig to have the proper dependencies automatically
selected.

One thing to note, the sun7i driver can be connected in two modes,
RGMII and MII mode and we use both throughout the boards. To make this
easy we split up the CONFIG_SUNXI_GMAC symbol into the SUN7I_GMAC and
the SUN7I_EMAC symbol, where the SUN7I_EMAC indicates a MII connected
designware IP.

Signed-off-by: Olliver Schinagl <oliver at schinagl.nl>
---
 configs/A20-OLinuXino-Lime2-eMMC_defconfig |  2 --
 configs/A20-OLinuXino-Lime2_defconfig      |  2 --
 configs/A20-OLinuXino-Lime_defconfig       |  3 +-
 configs/A20-OLinuXino_MICRO_defconfig      |  3 +-
 configs/A20-Olimex-SOM-EVB_defconfig       |  2 --
 configs/Bananapi_defconfig                 |  2 --
 configs/Bananapro_defconfig                |  2 --
 configs/CSQ_CS908_defconfig                |  3 +-
 configs/Colombus_defconfig                 |  2 --
 configs/Cubieboard2_defconfig              |  3 +-
 configs/Cubietruck_defconfig               |  2 --
 configs/Hummingbird_A31_defconfig          |  2 --
 configs/Itead_Ibox_A20_defconfig           |  3 +-
 configs/Lamobo_R1_defconfig                |  2 --
 configs/Linksprite_pcDuino3_Nano_defconfig |  2 --
 configs/Linksprite_pcDuino3_defconfig      |  3 +-
 configs/Mele_A1000G_quad_defconfig         |  3 +-
 configs/Mele_I7_defconfig                  |  3 +-
 configs/Mele_M3_defconfig                  |  3 +-
 configs/Mele_M5_defconfig                  |  3 +-
 configs/Mele_M9_defconfig                  |  3 +-
 configs/Orangepi_defconfig                 |  2 --
 configs/Orangepi_mini_defconfig            |  2 --
 configs/Sinlinx_SinA31s_defconfig          |  3 +-
 configs/Sinovoip_BPI_M2_defconfig          |  2 --
 configs/Wits_Pro_A20_DKT_defconfig         |  2 --
 configs/i12-tvbox_defconfig                |  3 +-
 configs/icnova-a20-swac_defconfig          |  3 +-
 configs/mixtile_loftq_defconfig            |  2 --
 drivers/net/Kconfig                        | 54 ++++++++++++++++++++++++------
 include/configs/sunxi-common.h             |  3 --
 31 files changed, 57 insertions(+), 72 deletions(-)

diff --git a/configs/A20-OLinuXino-Lime2-eMMC_defconfig b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
index 034ae983a5..76525f4603 100644
--- a/configs/A20-OLinuXino-Lime2-eMMC_defconfig
+++ b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
@@ -22,8 +22,6 @@ CONFIG_CMD_USB_MASS_STORAGE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_PARTITION_UUIDS is not set
 CONFIG_DFU_RAM=y
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_AXP_ALDO3_VOLT=2800
 CONFIG_AXP_ALDO4_VOLT=2800
diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
index 1f2daa6706..aa8a5d5f2b 100644
--- a/configs/A20-OLinuXino-Lime2_defconfig
+++ b/configs/A20-OLinuXino-Lime2_defconfig
@@ -21,8 +21,6 @@ CONFIG_CMD_USB_MASS_STORAGE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_PARTITION_UUIDS is not set
 CONFIG_DFU_RAM=y
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_AXP_ALDO3_VOLT=2800
 CONFIG_AXP_ALDO4_VOLT=2800
diff --git a/configs/A20-OLinuXino-Lime_defconfig b/configs/A20-OLinuXino-Lime_defconfig
index 7f63d4af54..b4b2f66ccb 100644
--- a/configs/A20-OLinuXino-Lime_defconfig
+++ b/configs/A20-OLinuXino-Lime_defconfig
@@ -16,8 +16,7 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_AXP_ALDO3_VOLT=2800
 CONFIG_AXP_ALDO4_VOLT=2800
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/A20-OLinuXino_MICRO_defconfig b/configs/A20-OLinuXino_MICRO_defconfig
index 89e87e799b..d59a480e8d 100644
--- a/configs/A20-OLinuXino_MICRO_defconfig
+++ b/configs/A20-OLinuXino_MICRO_defconfig
@@ -19,8 +19,7 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_AXP_ALDO3_VOLT=2800
 CONFIG_AXP_ALDO4_VOLT=2800
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/A20-Olimex-SOM-EVB_defconfig b/configs/A20-Olimex-SOM-EVB_defconfig
index 6c87648d4f..d52aefc984 100644
--- a/configs/A20-Olimex-SOM-EVB_defconfig
+++ b/configs/A20-Olimex-SOM-EVB_defconfig
@@ -20,8 +20,6 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_AXP_ALDO3_VOLT=2800
 CONFIG_AXP_ALDO4_VOLT=2800
diff --git a/configs/Bananapi_defconfig b/configs/Bananapi_defconfig
index fe75eef513..5a45506571 100644
--- a/configs/Bananapi_defconfig
+++ b/configs/Bananapi_defconfig
@@ -17,7 +17,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_NETCONSOLE=y
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Bananapro_defconfig b/configs/Bananapro_defconfig
index df65922e83..1503c41d3e 100644
--- a/configs/Bananapro_defconfig
+++ b/configs/Bananapro_defconfig
@@ -19,8 +19,6 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
 CONFIG_NETCONSOLE=y
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_AXP_ALDO4_VOLT=2500
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/CSQ_CS908_defconfig b/configs/CSQ_CS908_defconfig
index a6fcbf5ecf..cac210c1e8 100644
--- a/configs/CSQ_CS908_defconfig
+++ b/configs/CSQ_CS908_defconfig
@@ -13,8 +13,7 @@ CONFIG_SPL=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_AXP_ALDO1_VOLT=3300
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Colombus_defconfig b/configs/Colombus_defconfig
index 1359281ff4..7ce5d5ae2b 100644
--- a/configs/Colombus_defconfig
+++ b/configs/Colombus_defconfig
@@ -23,8 +23,6 @@ CONFIG_SPL=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_AXP_ALDO1_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Cubieboard2_defconfig b/configs/Cubieboard2_defconfig
index 02c503f672..09b423104e 100644
--- a/configs/Cubieboard2_defconfig
+++ b/configs/Cubieboard2_defconfig
@@ -15,6 +15,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Cubietruck_defconfig b/configs/Cubietruck_defconfig
index f9d56c8f9d..44082ccd30 100644
--- a/configs/Cubietruck_defconfig
+++ b/configs/Cubietruck_defconfig
@@ -23,8 +23,6 @@ CONFIG_CMD_USB_MASS_STORAGE=y
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_PARTITION_UUIDS is not set
 CONFIG_DFU_RAM=y
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
diff --git a/configs/Hummingbird_A31_defconfig b/configs/Hummingbird_A31_defconfig
index 6f9b103207..c25bccc3f5 100644
--- a/configs/Hummingbird_A31_defconfig
+++ b/configs/Hummingbird_A31_defconfig
@@ -15,8 +15,6 @@ CONFIG_SPL=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_AXP_ALDO1_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Itead_Ibox_A20_defconfig b/configs/Itead_Ibox_A20_defconfig
index 4bae19f2fa..2179306666 100644
--- a/configs/Itead_Ibox_A20_defconfig
+++ b/configs/Itead_Ibox_A20_defconfig
@@ -15,6 +15,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Lamobo_R1_defconfig b/configs/Lamobo_R1_defconfig
index cc29d606a9..e7b9ad7920 100644
--- a/configs/Lamobo_R1_defconfig
+++ b/configs/Lamobo_R1_defconfig
@@ -17,7 +17,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Linksprite_pcDuino3_Nano_defconfig b/configs/Linksprite_pcDuino3_Nano_defconfig
index 80416cb7b1..74789ca56e 100644
--- a/configs/Linksprite_pcDuino3_Nano_defconfig
+++ b/configs/Linksprite_pcDuino3_Nano_defconfig
@@ -17,7 +17,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Linksprite_pcDuino3_defconfig b/configs/Linksprite_pcDuino3_defconfig
index b9f89a013e..1aa253abcb 100644
--- a/configs/Linksprite_pcDuino3_defconfig
+++ b/configs/Linksprite_pcDuino3_defconfig
@@ -15,6 +15,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Mele_A1000G_quad_defconfig b/configs/Mele_A1000G_quad_defconfig
index 5b1b5f5d7c..0152b21303 100644
--- a/configs/Mele_A1000G_quad_defconfig
+++ b/configs/Mele_A1000G_quad_defconfig
@@ -14,8 +14,7 @@ CONFIG_SPL=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_AXP_DCDC1_VOLT=3300
 CONFIG_AXP_ALDO1_VOLT=3300
 CONFIG_AXP_DLDO1_VOLT=3300
diff --git a/configs/Mele_I7_defconfig b/configs/Mele_I7_defconfig
index b60969787c..12f0c1a83c 100644
--- a/configs/Mele_I7_defconfig
+++ b/configs/Mele_I7_defconfig
@@ -13,8 +13,7 @@ CONFIG_SPL=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_AXP_DCDC1_VOLT=3300
 CONFIG_AXP_ALDO1_VOLT=3300
 CONFIG_AXP_DLDO1_VOLT=3300
diff --git a/configs/Mele_M3_defconfig b/configs/Mele_M3_defconfig
index 08e8c2dbde..382c45b800 100644
--- a/configs/Mele_M3_defconfig
+++ b/configs/Mele_M3_defconfig
@@ -16,6 +16,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Mele_M5_defconfig b/configs/Mele_M5_defconfig
index 4c377e3daf..594b230ff1 100644
--- a/configs/Mele_M5_defconfig
+++ b/configs/Mele_M5_defconfig
@@ -16,6 +16,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Mele_M9_defconfig b/configs/Mele_M9_defconfig
index dc7901f9af..64a111ec6a 100644
--- a/configs/Mele_M9_defconfig
+++ b/configs/Mele_M9_defconfig
@@ -13,8 +13,7 @@ CONFIG_SPL=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_AXP_DCDC1_VOLT=3300
 CONFIG_AXP_ALDO1_VOLT=3300
 CONFIG_AXP_DLDO1_VOLT=3300
diff --git a/configs/Orangepi_defconfig b/configs/Orangepi_defconfig
index b8c1ea4d7c..34eeb92fa6 100644
--- a/configs/Orangepi_defconfig
+++ b/configs/Orangepi_defconfig
@@ -19,7 +19,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Orangepi_mini_defconfig b/configs/Orangepi_mini_defconfig
index 19c35ef103..2609c54bc2 100644
--- a/configs/Orangepi_mini_defconfig
+++ b/configs/Orangepi_mini_defconfig
@@ -21,7 +21,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Sinlinx_SinA31s_defconfig b/configs/Sinlinx_SinA31s_defconfig
index 7f815a32cb..bdf6ebe9f5 100644
--- a/configs/Sinlinx_SinA31s_defconfig
+++ b/configs/Sinlinx_SinA31s_defconfig
@@ -17,7 +17,6 @@ CONFIG_SPL=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/Sinovoip_BPI_M2_defconfig b/configs/Sinovoip_BPI_M2_defconfig
index a2cadbc271..78afc6d668 100644
--- a/configs/Sinovoip_BPI_M2_defconfig
+++ b/configs/Sinovoip_BPI_M2_defconfig
@@ -13,8 +13,6 @@ CONFIG_SPL=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_AXP_ALDO1_VOLT=3300
 CONFIG_AXP_ALDO2_VOLT=1800
diff --git a/configs/Wits_Pro_A20_DKT_defconfig b/configs/Wits_Pro_A20_DKT_defconfig
index 8658ef6b4c..979c6a6ae8 100644
--- a/configs/Wits_Pro_A20_DKT_defconfig
+++ b/configs/Wits_Pro_A20_DKT_defconfig
@@ -19,7 +19,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/i12-tvbox_defconfig b/configs/i12-tvbox_defconfig
index 4245491b6a..b609514de8 100644
--- a/configs/i12-tvbox_defconfig
+++ b/configs/i12-tvbox_defconfig
@@ -14,6 +14,5 @@ CONFIG_SPL_I2C_SUPPORT=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/icnova-a20-swac_defconfig b/configs/icnova-a20-swac_defconfig
index 6f79c587ee..63bbd37f97 100644
--- a/configs/icnova-a20-swac_defconfig
+++ b/configs/icnova-a20-swac_defconfig
@@ -21,6 +21,5 @@ CONFIG_CMD_UNZIP=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_SUN7I_GMAC=y
+CONFIG_SUN7I_EMAC=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/mixtile_loftq_defconfig b/configs/mixtile_loftq_defconfig
index 6264b3a151..47289c6616 100644
--- a/configs/mixtile_loftq_defconfig
+++ b/configs/mixtile_loftq_defconfig
@@ -15,8 +15,6 @@ CONFIG_SPL=y
 # CONFIG_SPL_DOS_PARTITION is not set
 # CONFIG_SPL_ISO_PARTITION is not set
 # CONFIG_SPL_EFI_PARTITION is not set
-CONFIG_ETH_DESIGNWARE=y
-CONFIG_RGMII=y
 CONFIG_SUN7I_GMAC=y
 CONFIG_AXP_ALDO1_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index 336557f395..c0d141754f 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -149,11 +149,11 @@ config PCH_GBE
 	  This MAC is present in Intel Platform Controller Hub EG20T. It
 	  supports 10/100/1000 Mbps operation.
 
+config MII
+	bool
+
 config RGMII
-	bool "Enable RGMII"
-	help
-	  Enable the support of the Reduced Gigabit Media-Independent
-	  Interface (RGMII).
+	bool
 
 config PHY_GIGE
 	bool
@@ -170,17 +170,49 @@ config RTL8169
 	  This driver supports Realtek 8169 series gigabit ethernet family of
 	  PCI/PCIe chipsets/adapters.
 
-config SUN7I_GMAC
-	bool "Enable Allwinner GMAC Ethernet support"
-	select PHY_GIGE
-	help
-	  Enable the support for Sun7i GMAC Ethernet controller
-
 config SUN4I_EMAC
 	bool "Allwinner Sun4i Ethernet MAC support"
 	depends on DM_ETH
+	select MII
+	select PHYLIB
+	help
+	  This driver provides the Allwinner based SoCs with 100 Megabit
+	  network support as it is found on the sun4i and sun7i. This driver
+	  is known to have performance issues and should only be used on
+	  sun4i hardware. Newer hardware supports the SUN7I_EMAC driver,
+	  which also works with 100 Megabit PHY's.
+
+choice
+	prompt "Allwinner Sun7i GMAC support"
 	help
-	  This driver supports the Allwinner based SUN4I Ethernet MAC.
+	  This driver provides the Allwinner based SoCs network support based
+	  on the Synopsys Designware gigabit driver. The driver supports both
+	  RGMII and MII communications and can thus be used as a drop in
+	  replacement of the SUN4I_EMAC driver.
+
+config SUN7I_NONE
+	bool "Disable"
+
+config SUN7I_EMAC
+	bool "MII"
+	select ETH_DESIGNWARE
+	select PHYLIB
+	select MII
+	help
+	  If connecting the sun7i MAC to an ethernet (10/100) only PHY,
+	  select this option.
+
+config SUN7I_GMAC
+	bool "RGMII"
+	select ETH_DESIGNWARE
+	select PHYLIB
+	select RGMII
+	select PHY_GIGE
+	help
+	  If connecting the sun7i MAC to a gigabit ethernet PHY, select
+	  this option.
+
+endchoice
 
 config SUN8I_EMAC
         bool "Allwinner Sun8i Ethernet MAC support"
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index 3d8a130f38..8f97b80619 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -289,13 +289,10 @@ extern int soft_i2c_gpio_scl;
 /* Ethernet support */
 #ifdef CONFIG_SUNXI_EMAC
 #define CONFIG_PHY_ADDR		1
-#define CONFIG_MII			/* MII PHY management		*/
-#define CONFIG_PHYLIB
 #endif
 
 #ifdef CONFIG_SUNXI_GMAC
 #define CONFIG_PHY_ADDR		1
-#define CONFIG_MII			/* MII PHY management		*/
 #define CONFIG_PHY_REALTEK
 #endif
 
-- 
2.11.0



More information about the U-Boot mailing list