[RFC/RFT 7/7] arm: meson: remove static ethernet link setup

Neil Armstrong narmstrong at baylibre.com
Thu Feb 25 09:44:38 CET 2021


The static ethernet link type config code is no more needed because now handled by
the meson8b glue driver, delete it.

Signed-off-by: Neil Armstrong <narmstrong at baylibre.com>
---
 arch/arm/include/asm/arch-meson/axg.h       | 22 -------------
 arch/arm/include/asm/arch-meson/eth.h       | 12 -------
 arch/arm/include/asm/arch-meson/g12a.h      | 35 ---------------------
 arch/arm/include/asm/arch-meson/gx.h        | 20 ------------
 arch/arm/mach-meson/board-axg.c             | 34 --------------------
 arch/arm/mach-meson/board-g12a.c            | 31 ------------------
 arch/arm/mach-meson/board-gx.c              | 35 ---------------------
 board/amlogic/beelink-s922x/beelink-s922x.c |  2 --
 board/amlogic/odroid-n2/odroid-n2.c         |  2 --
 board/amlogic/p200/p200.c                   |  2 --
 board/amlogic/p201/p201.c                   |  2 --
 board/amlogic/p212/p212.c                   |  3 --
 board/amlogic/q200/q200.c                   |  2 --
 board/amlogic/s400/s400.c                   |  2 --
 board/amlogic/sei510/sei510.c               |  3 --
 board/amlogic/sei610/sei610.c               |  3 --
 board/amlogic/u200/u200.c                   |  3 +-
 board/amlogic/vim3/vim3.c                   |  2 --
 board/amlogic/w400/w400.c                   |  2 +-
 19 files changed, 2 insertions(+), 215 deletions(-)

diff --git a/arch/arm/include/asm/arch-meson/axg.h b/arch/arm/include/asm/arch-meson/axg.h
index 91c87696e0..12042de935 100644
--- a/arch/arm/include/asm/arch-meson/axg.h
+++ b/arch/arm/include/asm/arch-meson/axg.h
@@ -31,26 +31,4 @@
 #define AXG_AO_BL31_RSVMEM_SIZE_SHIFT	16
 #define AXG_AO_BL32_RSVMEM_SIZE_MASK	0xFFFF
 
-/* Peripherals registers */
-#define AXG_PERIPHS_ADDR(off)	(AXG_PERIPHS_BASE + ((off) << 2))
-
-#define AXG_ETH_REG_0		AXG_PERIPHS_ADDR(0x50)
-#define AXG_ETH_REG_1		AXG_PERIPHS_ADDR(0x51)
-
-#define AXG_ETH_REG_0_PHY_INTF_RGMII	BIT(0)
-#define AXG_ETH_REG_0_PHY_INTF_RMII	BIT(2)
-#define AXG_ETH_REG_0_TX_PHASE(x)	(((x) & 3) << 5)
-#define AXG_ETH_REG_0_TX_RATIO(x)	(((x) & 7) << 7)
-#define AXG_ETH_REG_0_PHY_CLK_EN	BIT(10)
-#define AXG_ETH_REG_0_INVERT_RMII_CLK	BIT(11)
-#define AXG_ETH_REG_0_CLK_EN		BIT(12)
-
-/* HIU registers */
-#define AXG_HIU_ADDR(off)	(AXG_HIU_BASE + ((off) << 2))
-
-#define AXG_MEM_PD_REG_0	AXG_HIU_ADDR(0x40)
-
-/* Ethernet memory power domain */
-#define AXG_MEM_PD_REG_0_ETH_MASK	(BIT(2) | BIT(3))
-
 #endif /* __AXG_H__ */
diff --git a/arch/arm/include/asm/arch-meson/eth.h b/arch/arm/include/asm/arch-meson/eth.h
index f765cd7c4c..c0070615c2 100644
--- a/arch/arm/include/asm/arch-meson/eth.h
+++ b/arch/arm/include/asm/arch-meson/eth.h
@@ -7,18 +7,6 @@
 #ifndef __MESON_ETH_H__
 #define __MESON_ETH_H__
 
-#include <phy.h>
-
-enum {
-	/* Use Internal RMII PHY */
-	MESON_USE_INTERNAL_RMII_PHY = 1,
-};
-
-/* Configure the Ethernet MAC with the requested interface mode
- * with some optional flags.
- */
-void meson_eth_init(phy_interface_t mode, unsigned int flags);
-
 /* Generate an unique MAC address based on the HW serial */
 int meson_generate_serial_ethaddr(void);
 
diff --git a/arch/arm/include/asm/arch-meson/g12a.h b/arch/arm/include/asm/arch-meson/g12a.h
index db29cc3a00..ef4f301f7d 100644
--- a/arch/arm/include/asm/arch-meson/g12a.h
+++ b/arch/arm/include/asm/arch-meson/g12a.h
@@ -32,39 +32,4 @@
 #define G12A_AO_BL31_RSVMEM_SIZE_SHIFT	16
 #define G12A_AO_BL32_RSVMEM_SIZE_MASK	0xFFFF
 
-/* Peripherals registers */
-#define G12A_PERIPHS_ADDR(off)	(G12A_PERIPHS_BASE + ((off) << 2))
-
-#define G12A_ETH_REG_0			G12A_PERIPHS_ADDR(0x50)
-#define G12A_ETH_REG_1			G12A_PERIPHS_ADDR(0x51)
-
-#define G12A_ETH_REG_0_PHY_INTF_RGMII	BIT(0)
-#define G12A_ETH_REG_0_PHY_INTF_RMII	BIT(2)
-#define G12A_ETH_REG_0_TX_PHASE(x)	(((x) & 3) << 5)
-#define G12A_ETH_REG_0_TX_RATIO(x)	(((x) & 7) << 7)
-#define G12A_ETH_REG_0_PHY_CLK_EN	BIT(10)
-#define G12A_ETH_REG_0_INVERT_RMII_CLK	BIT(11)
-#define G12A_ETH_REG_0_CLK_EN		BIT(12)
-
-#define G12A_ETH_PHY_ADDR(off)	(G12A_ETH_PHY_BASE + ((off) << 2))
-#define ETH_PLL_CNTL0			G12A_ETH_PHY_ADDR(0x11)
-#define ETH_PLL_CNTL1			G12A_ETH_PHY_ADDR(0x12)
-#define ETH_PLL_CNTL2			G12A_ETH_PHY_ADDR(0x13)
-#define ETH_PLL_CNTL3			G12A_ETH_PHY_ADDR(0x14)
-#define ETH_PLL_CNTL4			G12A_ETH_PHY_ADDR(0x15)
-#define ETH_PLL_CNTL5			G12A_ETH_PHY_ADDR(0x16)
-#define ETH_PLL_CNTL6			G12A_ETH_PHY_ADDR(0x17)
-#define ETH_PLL_CNTL7			G12A_ETH_PHY_ADDR(0x18)
-#define ETH_PHY_CNTL0			G12A_ETH_PHY_ADDR(0x20)
-#define ETH_PHY_CNTL1			G12A_ETH_PHY_ADDR(0x21)
-#define ETH_PHY_CNTL2			G12A_ETH_PHY_ADDR(0x22)
-
-/* HIU registers */
-#define G12A_HIU_ADDR(off)	(G12A_HIU_BASE + ((off) << 2))
-
-#define G12A_MEM_PD_REG_0		G12A_HIU_ADDR(0x40)
-
-/* Ethernet memory power domain */
-#define G12A_MEM_PD_REG_0_ETH_MASK	(BIT(2) | BIT(3))
-
 #endif /* __G12A_H__ */
diff --git a/arch/arm/include/asm/arch-meson/gx.h b/arch/arm/include/asm/arch-meson/gx.h
index 743d2e8bb9..26ec5d0bc3 100644
--- a/arch/arm/include/asm/arch-meson/gx.h
+++ b/arch/arm/include/asm/arch-meson/gx.h
@@ -41,24 +41,4 @@
 #define GX_GPIO_IN(n)		GX_PERIPHS_ADDR(_GX_GPIO_OFF(n) + 1)
 #define GX_GPIO_OUT(n)	GX_PERIPHS_ADDR(_GX_GPIO_OFF(n) + 2)
 
-#define GX_ETH_REG_0		GX_PERIPHS_ADDR(0x50)
-#define GX_ETH_REG_1		GX_PERIPHS_ADDR(0x51)
-#define GX_ETH_REG_2		GX_PERIPHS_ADDR(0x56)
-#define GX_ETH_REG_3		GX_PERIPHS_ADDR(0x57)
-
-#define GX_ETH_REG_0_PHY_INTF		BIT(0)
-#define GX_ETH_REG_0_TX_PHASE(x)	(((x) & 3) << 5)
-#define GX_ETH_REG_0_TX_RATIO(x)	(((x) & 7) << 7)
-#define GX_ETH_REG_0_PHY_CLK_EN	BIT(10)
-#define GX_ETH_REG_0_INVERT_RMII_CLK	BIT(11)
-#define GX_ETH_REG_0_CLK_EN		BIT(12)
-
-/* HIU registers */
-#define GX_HIU_ADDR(off)	(GX_HIU_BASE + ((off) << 2))
-
-#define GX_MEM_PD_REG_0	GX_HIU_ADDR(0x40)
-
-/* Ethernet memory power domain */
-#define GX_MEM_PD_REG_0_ETH_MASK	(BIT(2) | BIT(3))
-
 #endif /* __GX_H__ */
diff --git a/arch/arm/mach-meson/board-axg.c b/arch/arm/mach-meson/board-axg.c
index 3b14bc9989..71ac65c636 100644
--- a/arch/arm/mach-meson/board-axg.c
+++ b/arch/arm/mach-meson/board-axg.c
@@ -91,40 +91,6 @@ static struct mm_region axg_mem_map[] = {
 
 struct mm_region *mem_map = axg_mem_map;
 
-/* Configure the Ethernet MAC with the requested interface mode
- * with some optional flags.
- */
-void meson_eth_init(phy_interface_t mode, unsigned int flags)
-{
-	switch (mode) {
-	case PHY_INTERFACE_MODE_RGMII:
-	case PHY_INTERFACE_MODE_RGMII_ID:
-	case PHY_INTERFACE_MODE_RGMII_RXID:
-	case PHY_INTERFACE_MODE_RGMII_TXID:
-		/* Set RGMII mode */
-		setbits_le32(AXG_ETH_REG_0, AXG_ETH_REG_0_PHY_INTF_RGMII |
-			     AXG_ETH_REG_0_TX_PHASE(1) |
-			     AXG_ETH_REG_0_TX_RATIO(4) |
-			     AXG_ETH_REG_0_PHY_CLK_EN |
-			     AXG_ETH_REG_0_CLK_EN);
-		break;
-
-	case PHY_INTERFACE_MODE_RMII:
-		/* Set RMII mode */
-		out_le32(AXG_ETH_REG_0, AXG_ETH_REG_0_PHY_INTF_RMII |
-					AXG_ETH_REG_0_INVERT_RMII_CLK |
-					AXG_ETH_REG_0_CLK_EN);
-		break;
-
-	default:
-		printf("Invalid Ethernet interface mode\n");
-		return;
-	}
-
-	/* Enable power gate */
-	clrbits_le32(AXG_MEM_PD_REG_0, AXG_MEM_PD_REG_0_ETH_MASK);
-}
-
 #if CONFIG_IS_ENABLED(USB_DWC3_MESON_GXL) && \
 	CONFIG_IS_ENABLED(USB_GADGET_DWC2_OTG)
 static struct dwc2_plat_otg_data meson_gx_dwc2_data;
diff --git a/arch/arm/mach-meson/board-g12a.c b/arch/arm/mach-meson/board-g12a.c
index cc7e01d014..2e59eee8f7 100644
--- a/arch/arm/mach-meson/board-g12a.c
+++ b/arch/arm/mach-meson/board-g12a.c
@@ -97,37 +97,6 @@ static struct mm_region g12a_mem_map[] = {
 
 struct mm_region *mem_map = g12a_mem_map;
 
-/* Configure the Ethernet MAC with the requested interface mode
- * with some optional flags.
- */
-void meson_eth_init(phy_interface_t mode, unsigned int flags)
-{
-	switch (mode) {
-	case PHY_INTERFACE_MODE_RGMII:
-	case PHY_INTERFACE_MODE_RGMII_ID:
-	case PHY_INTERFACE_MODE_RGMII_RXID:
-	case PHY_INTERFACE_MODE_RGMII_TXID:
-		/* Set RGMII mode */
-		setbits_le32(G12A_ETH_REG_0, G12A_ETH_REG_0_PHY_INTF_RGMII |
-			     G12A_ETH_REG_0_TX_PHASE(1) |
-			     G12A_ETH_REG_0_TX_RATIO(4) |
-			     G12A_ETH_REG_0_PHY_CLK_EN |
-			     G12A_ETH_REG_0_CLK_EN);
-		break;
-
-	case PHY_INTERFACE_MODE_RMII:
-		/* Set RMII mode */
-		out_le32(G12A_ETH_REG_0, G12A_ETH_REG_0_PHY_INTF_RMII |
-					G12A_ETH_REG_0_INVERT_RMII_CLK |
-					G12A_ETH_REG_0_CLK_EN);
-		break;
-
-	default:
-		printf("Invalid Ethernet interface mode\n");
-		return;
-	}
-}
-
 #if CONFIG_IS_ENABLED(USB_DWC3_MESON_G12A) && \
 	CONFIG_IS_ENABLED(USB_GADGET_DWC2_OTG)
 static struct dwc2_plat_otg_data meson_g12a_dwc2_data;
diff --git a/arch/arm/mach-meson/board-gx.c b/arch/arm/mach-meson/board-gx.c
index cae7af5afb..01fafd81c4 100644
--- a/arch/arm/mach-meson/board-gx.c
+++ b/arch/arm/mach-meson/board-gx.c
@@ -109,41 +109,6 @@ static struct mm_region gx_mem_map[] = {
 
 struct mm_region *mem_map = gx_mem_map;
 
-/* Configure the Ethernet MAC with the requested interface mode
- * with some optional flags.
- */
-void meson_eth_init(phy_interface_t mode, unsigned int flags)
-{
-	switch (mode) {
-	case PHY_INTERFACE_MODE_RGMII:
-	case PHY_INTERFACE_MODE_RGMII_ID:
-	case PHY_INTERFACE_MODE_RGMII_RXID:
-	case PHY_INTERFACE_MODE_RGMII_TXID:
-		/* Set RGMII mode */
-		setbits_le32(GX_ETH_REG_0, GX_ETH_REG_0_PHY_INTF |
-			     GX_ETH_REG_0_TX_PHASE(1) |
-			     GX_ETH_REG_0_TX_RATIO(4) |
-			     GX_ETH_REG_0_PHY_CLK_EN |
-			     GX_ETH_REG_0_CLK_EN);
-
-		break;
-
-	case PHY_INTERFACE_MODE_RMII:
-		/* Set RMII mode */
-		out_le32(GX_ETH_REG_0, GX_ETH_REG_0_INVERT_RMII_CLK |
-					 GX_ETH_REG_0_CLK_EN);
-
-		if (!IS_ENABLED(CONFIG_MESON_GXBB))
-			writel(0x10110181, GX_ETH_REG_2);
-
-		break;
-
-	default:
-		printf("Invalid Ethernet interface mode\n");
-		return;
-	}
-}
-
 #if CONFIG_IS_ENABLED(USB_DWC3_MESON_GXL) && \
 	CONFIG_IS_ENABLED(USB_GADGET_DWC2_OTG)
 static struct dwc2_plat_otg_data meson_gx_dwc2_data;
diff --git a/board/amlogic/beelink-s922x/beelink-s922x.c b/board/amlogic/beelink-s922x/beelink-s922x.c
index dc0d933a39..bb74426266 100644
--- a/board/amlogic/beelink-s922x/beelink-s922x.c
+++ b/board/amlogic/beelink-s922x/beelink-s922x.c
@@ -28,8 +28,6 @@ int misc_init_r(void)
 	    meson_get_soc_rev(tmp, sizeof(tmp)) > 0)
 		env_set("soc_rev", tmp);
 
-	meson_eth_init(PHY_INTERFACE_MODE_RGMII, 0);
-
 	if (!eth_env_get_enetaddr("ethaddr", mac_addr)) {
 		len = meson_sm_read_efuse(EFUSE_MAC_OFFSET,
 					  efuse_mac_addr, EFUSE_MAC_SIZE);
diff --git a/board/amlogic/odroid-n2/odroid-n2.c b/board/amlogic/odroid-n2/odroid-n2.c
index 863975e51b..88a60f34fe 100644
--- a/board/amlogic/odroid-n2/odroid-n2.c
+++ b/board/amlogic/odroid-n2/odroid-n2.c
@@ -115,8 +115,6 @@ int misc_init_r(void)
 	    meson_get_soc_rev(tmp, sizeof(tmp)) > 0)
 		env_set("soc_rev", tmp);
 
-	meson_eth_init(PHY_INTERFACE_MODE_RGMII, 0);
-
 	if (!eth_env_get_enetaddr("ethaddr", mac_addr)) {
 		len = meson_sm_read_efuse(EFUSE_MAC_OFFSET,
 					  efuse_mac_addr, EFUSE_MAC_SIZE);
diff --git a/board/amlogic/p200/p200.c b/board/amlogic/p200/p200.c
index 8f1bf8bfda..7c432f9d28 100644
--- a/board/amlogic/p200/p200.c
+++ b/board/amlogic/p200/p200.c
@@ -25,8 +25,6 @@ int misc_init_r(void)
 	char serial[EFUSE_SN_SIZE];
 	ssize_t len;
 
-	meson_eth_init(PHY_INTERFACE_MODE_RGMII, 0);
-
 	if (!eth_env_get_enetaddr("ethaddr", mac_addr)) {
 		len = meson_sm_read_efuse(EFUSE_MAC_OFFSET,
 					  mac_addr, EFUSE_MAC_SIZE);
diff --git a/board/amlogic/p201/p201.c b/board/amlogic/p201/p201.c
index 597bb71cbf..7c432f9d28 100644
--- a/board/amlogic/p201/p201.c
+++ b/board/amlogic/p201/p201.c
@@ -25,8 +25,6 @@ int misc_init_r(void)
 	char serial[EFUSE_SN_SIZE];
 	ssize_t len;
 
-	meson_eth_init(PHY_INTERFACE_MODE_RMII, 0);
-
 	if (!eth_env_get_enetaddr("ethaddr", mac_addr)) {
 		len = meson_sm_read_efuse(EFUSE_MAC_OFFSET,
 					  mac_addr, EFUSE_MAC_SIZE);
diff --git a/board/amlogic/p212/p212.c b/board/amlogic/p212/p212.c
index fbc49e9565..fcef90bce5 100644
--- a/board/amlogic/p212/p212.c
+++ b/board/amlogic/p212/p212.c
@@ -26,9 +26,6 @@ int misc_init_r(void)
 	char serial[EFUSE_SN_SIZE];
 	ssize_t len;
 
-	meson_eth_init(PHY_INTERFACE_MODE_RMII,
-		       MESON_USE_INTERNAL_RMII_PHY);
-
 	if (!eth_env_get_enetaddr("ethaddr", mac_addr)) {
 		len = meson_sm_read_efuse(EFUSE_MAC_OFFSET,
 					  mac_addr, EFUSE_MAC_SIZE);
diff --git a/board/amlogic/q200/q200.c b/board/amlogic/q200/q200.c
index 62e6fa3d19..3aa6d8f200 100644
--- a/board/amlogic/q200/q200.c
+++ b/board/amlogic/q200/q200.c
@@ -26,8 +26,6 @@ int misc_init_r(void)
 	char serial[EFUSE_SN_SIZE];
 	ssize_t len;
 
-	meson_eth_init(PHY_INTERFACE_MODE_RGMII, 0);
-
 	if (!eth_env_get_enetaddr("ethaddr", mac_addr)) {
 		len = meson_sm_read_efuse(EFUSE_MAC_OFFSET,
 					  mac_addr, EFUSE_MAC_SIZE);
diff --git a/board/amlogic/s400/s400.c b/board/amlogic/s400/s400.c
index b081942dcc..06a9044fd8 100644
--- a/board/amlogic/s400/s400.c
+++ b/board/amlogic/s400/s400.c
@@ -16,8 +16,6 @@
 
 int misc_init_r(void)
 {
-	meson_eth_init(PHY_INTERFACE_MODE_RGMII, 0);
-
 	meson_generate_serial_ethaddr();
 
 	return 0;
diff --git a/board/amlogic/sei510/sei510.c b/board/amlogic/sei510/sei510.c
index 5a5148ea68..bb188c21f7 100644
--- a/board/amlogic/sei510/sei510.c
+++ b/board/amlogic/sei510/sei510.c
@@ -18,9 +18,6 @@
 
 int misc_init_r(void)
 {
-	meson_eth_init(PHY_INTERFACE_MODE_RMII,
-		       MESON_USE_INTERNAL_RMII_PHY);
-
 	meson_generate_serial_ethaddr();
 
 	env_set("serial#", "AMLG12ASEI510");
diff --git a/board/amlogic/sei610/sei610.c b/board/amlogic/sei610/sei610.c
index 27dba93582..6490bac9eb 100644
--- a/board/amlogic/sei610/sei610.c
+++ b/board/amlogic/sei610/sei610.c
@@ -18,9 +18,6 @@
 
 int misc_init_r(void)
 {
-	meson_eth_init(PHY_INTERFACE_MODE_RMII,
-		       MESON_USE_INTERNAL_RMII_PHY);
-
 	meson_generate_serial_ethaddr();
 
 	env_set("serial#", "AMLG12ASEI610");
diff --git a/board/amlogic/u200/u200.c b/board/amlogic/u200/u200.c
index 373235d77a..06a9044fd8 100644
--- a/board/amlogic/u200/u200.c
+++ b/board/amlogic/u200/u200.c
@@ -16,8 +16,7 @@
 
 int misc_init_r(void)
 {
-	meson_eth_init(PHY_INTERFACE_MODE_RMII,
-		       MESON_USE_INTERNAL_RMII_PHY);
+	meson_generate_serial_ethaddr();
 
 	return 0;
 }
diff --git a/board/amlogic/vim3/vim3.c b/board/amlogic/vim3/vim3.c
index 7b09617cdc..6cd5f2e115 100644
--- a/board/amlogic/vim3/vim3.c
+++ b/board/amlogic/vim3/vim3.c
@@ -149,8 +149,6 @@ int misc_init_r(void)
 	char efuse_mac_addr[EFUSE_MAC_SIZE], tmp[3];
 	ssize_t len;
 
-	meson_eth_init(PHY_INTERFACE_MODE_RGMII, 0);
-
 	if (!eth_env_get_enetaddr("ethaddr", mac_addr)) {
 		len = meson_sm_read_efuse(EFUSE_MAC_OFFSET,
 					  efuse_mac_addr, EFUSE_MAC_SIZE);
diff --git a/board/amlogic/w400/w400.c b/board/amlogic/w400/w400.c
index 47a51710dc..4199198496 100644
--- a/board/amlogic/w400/w400.c
+++ b/board/amlogic/w400/w400.c
@@ -14,7 +14,7 @@
 
 int misc_init_r(void)
 {
-	meson_eth_init(PHY_INTERFACE_MODE_RGMII, 0);
+	meson_generate_serial_ethaddr();
 
 	return 0;
 }
-- 
2.25.1



More information about the U-Boot mailing list