]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - board/karo/tx51/tx51.c
karo: fdt: prevent duplicate call of fdt_fixup_ethernet()
[karo-tx-uboot.git] / board / karo / tx51 / tx51.c
index ec0995117ec87b8f62bd9c9b97565531cc5510ca..586663cb0e23689e3d6cda70a4f698f948ab02df 100644 (file)
@@ -476,10 +476,12 @@ int board_eth_init(bd_t *bis)
        /* Deassert RESET to the external phy */
        gpio_set_value(TX51_FEC_RST_GPIO, 1);
 
-       /* Without this delay the PHY won't work, though nothing in
-        * the datasheets suggests that it should be necessary!
+       /*
+        * Due to an RC-filter in the PHY RESET line, a minimum
+        * delay of 535us is required to let the RESET line rise
+        * above the logic high threshold of the PHY input pin.
         */
-       udelay(400);
+       udelay(550);
        imx_iomux_v3_setup_multiple_pads(tx51_fec_pads,
                                        ARRAY_SIZE(tx51_fec_pads));
 
@@ -1032,7 +1034,7 @@ static void tx51_init_mac(void)
        u8 mac[ETH_ALEN];
 
        imx_get_mac_from_fuse(0, mac);
-       if (!is_valid_ether_addr(mac)) {
+       if (!is_valid_ethaddr(mac)) {
                printf("No valid MAC address programmed\n");
                return;
        }
@@ -1127,7 +1129,6 @@ int ft_board_setup(void *blob, bd_t *bd)
                return ret;
        }
        fdt_fixup_mtdparts(blob, nodes, ARRAY_SIZE(nodes));
-       fdt_fixup_ethernet(blob);
 
        karo_fdt_fixup_touchpanel(blob, tx51_touchpanels,
                                ARRAY_SIZE(tx51_touchpanels));