steal-board-eth-init-from-hummingboard
authorVagrant Cascadian <vagrant@debian.org>
Tue, 7 Apr 2015 20:42:30 +0000 (20:42 +0000)
committerVagrant Cascadian <vagrant@debian.org>
Tue, 7 Apr 2015 20:42:30 +0000 (20:42 +0000)
Use board_eth_init from hummingboard.c, which not only compiles, but
actually enables ethernet support.

Gbp-Pq: Topic cubox-i
Gbp-Pq: Name steal-board-eth-init-from-hummingboard.diff

board/solidrun/mx6_cubox-i/mx6_cubox-i.c

index 8b1e2e3480f635a3291777006f05b8381a643254..6e171a1fec9925187750748f27ed6e3fff96c640 100644 (file)
@@ -276,30 +276,18 @@ int board_phy_config(struct phy_device *phydev)
 
 int board_eth_init(bd_t *bis)
 {
-       int ret;
-        struct iomuxc *const iomuxc_regs
-                = (struct iomuxc *) IOMUXC_BASE_ADDR;
-       struct anatop_regs __iomem *anatop =
-                (struct anatop_regs __iomem *)ANATOP_BASE_ADDR;
-       u32 reg = 0;
-       s32 timeout = 100000;
-
-       enable_fec_anatop_clock(ENET_25MHz);
-       /* set gpr1[21] */
-        clrsetbits_le32(&iomuxc_regs->gpr[1], 0, (1 << 21));
-
-       while (timeout--) {
-               if (readl(&anatop->pll_enet) & BM_ANADIG_PLL_ENET_LOCK)
-                       break;
-       }
-
-       setup_iomux_enet();
+       struct iomuxc *const iomuxc_regs = (struct iomuxc *)IOMUXC_BASE_ADDR;
 
-       ret = cpu_eth_init(bis);
+       int ret = enable_fec_anatop_clock(ENET_25MHz);
        if (ret)
-               printf("FEC MXC: %s:failed\n", __func__);
+               return ret;
 
-       return 0;
+       /* set gpr1[ENET_CLK_SEL] */
+       setbits_le32(&iomuxc_regs->gpr[1], IOMUXC_GPR1_ENET_CLK_SEL_MASK);
+
+       setup_iomux_enet();
+
+       return cpu_eth_init(bis);
 }
 #endif