ppc4xx: fdt: use fdt_fixup_ethernet()
[platform/kernel/u-boot.git] / cpu / ppc4xx / fdt.c
index 3ef3000..f351b8b 100644 (file)
  * MA 02111-1307 USA
  */
 
-/* define DEBUG for debugging output (obviously ;-)) */
-#if 0
-#define DEBUG
-#endif
-
 #include <common.h>
 #include <watchdog.h>
 #include <command.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
-/*
- * The aliases needed for this generic etherne MAC address
- * fixup function are not in place yet. So don't use this
- * approach for now. This will be enabled later.
- */
-#undef USES_FDT_ALIASES
-
-#ifndef USES_FDT_ALIASES
-static void do_fixup_macaddr(void *fdt, int offset, const void *val, int i)
-{
-       int rc;
-
-       debug("Updating node EMAC%d\n", i);
-
-       rc = fdt_setprop(fdt, offset, "mac-address", val, 6);
-       if (rc)
-               printf("Unable to update property %s, err=%s\n",
-                      "mac-address", fdt_strerror(rc));
-       rc = fdt_setprop(fdt, offset, "local-mac-address", val, 6);
-       if (rc)
-               printf("Unable to update property %s, err=%s\n",
-                      "local-mac-address", fdt_strerror(rc));
-}
-#endif /* USES_FDT_ALIASES */
-
 void ft_cpu_setup(void *blob, bd_t *bd)
 {
        char *cpu_path = "/cpus/" OF_CPU;
        sys_info_t sys_info;
-       int offset;
-       int i;
 
        get_sys_info(&sys_info);
 
@@ -86,47 +54,10 @@ void ft_cpu_setup(void *blob, bd_t *bd)
         */
        do_fixup_by_compat_u32(blob, "ns16550", "clock-frequency", gd->uart_clk, 1);
 
-#ifdef USES_FDT_ALIASES
        /*
-        * The aliases needed for this generic etherne MAC address
-        * fixup function are not in place yet. So don't use this
-        * approach for now. This will be enabled later.
+        * Fixup all ethernet nodes
+        * Note: aliases in the dts are required for this
         */
        fdt_fixup_ethernet(blob, bd);
-#else
-       offset = -1;
-       for (i = 0; i < 4; i++) {
-               /*
-                * FIXME: This will cause problems with emac3 compatible
-                * devices, like on 405GP. But hopefully when we deal
-                * with those devices, the aliases stuff will be in
-                * place.
-                */
-               offset = fdt_node_offset_by_compatible(blob, offset, "ibm,emac4");
-               if (offset < 0)
-                       break;
-
-               switch (i) {
-               case 0:
-                       do_fixup_macaddr(blob, offset, bd->bi_enetaddr, 0);
-                       break;
-#ifdef CONFIG_HAS_ETH1
-               case 1:
-                       do_fixup_macaddr(blob, offset, bd->bi_enet1addr, 1);
-                       break;
-#endif
-#ifdef CONFIG_HAS_ETH2
-               case 2:
-                       do_fixup_macaddr(blob, offset, bd->bi_enet2addr, 2);
-                       break;
-#endif
-#ifdef CONFIG_HAS_ETH3
-               case 3:
-                       do_fixup_macaddr(blob, offset, bd->bi_enet3addr, 3);
-                       break;
-#endif
-               }
-       }
-#endif /* USES_FDT_ALIASES */
 }
 #endif /* CONFIG_OF_LIBFDT */