[U-Boot] [PATCH] ARM: am3517-evm: Remove manual ethernet reset code

Adam Ford aford173 at gmail.com
Sun Jun 23 05:42:14 UTC 2019


The reset line going to the ethernet controller is controlled
by a global reset controlling multiple peripherals.  There
is no need to manually invoke the reset.

Signed-off-by: Adam Ford <aford173 at gmail.com>

diff --git a/board/logicpd/am3517evm/am3517evm.c b/board/logicpd/am3517evm/am3517evm.c
index 10031a4801..e799f80d81 100644
--- a/board/logicpd/am3517evm/am3517evm.c
+++ b/board/logicpd/am3517evm/am3517evm.c
@@ -114,7 +114,6 @@ static void am3517_evm_musb_init(void)
  */
 int misc_init_r(void)
 {
-	volatile unsigned int ctr;
 	u32 reset;
 
 #if !defined(CONFIG_DM_I2C)
@@ -126,35 +125,10 @@ int misc_init_r(void)
 
 	am3517_evm_musb_init();
 
-	if (gpio_request(PHY_GPIO, "gpio_30") == 0) {
-		/* activate PHY reset */
-		gpio_direction_output(PHY_GPIO, 0);
-		gpio_set_value(PHY_GPIO, 0);
-
-		ctr  = 0;
-		do {
-			udelay(1000);
-			ctr++;
-		} while (ctr < 300);
-
-		/* deactivate PHY reset */
-		gpio_set_value(PHY_GPIO, 1);
-
-		/* allow the PHY to stabilize and settle down */
-		ctr = 0;
-		do {
-			udelay(1000);
-			ctr++;
-		} while (ctr < 300);
-
-		/* ensure that the module is out of reset */
-		reset = readl(AM3517_IP_SW_RESET);
-		reset &= (~CPGMACSS_SW_RST);
-		writel(reset, AM3517_IP_SW_RESET);
-
-		/* Free requested GPIO */
-		gpio_free(PHY_GPIO);
-	}
+	/* ensure that the Ethernet module is out of reset */
+	reset = readl(AM3517_IP_SW_RESET);
+	reset &= (~CPGMACSS_SW_RST);
+	writel(reset, AM3517_IP_SW_RESET);
 
 	return 0;
 }
-- 
2.17.1



More information about the U-Boot mailing list