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 <aford...@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

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to