]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/mips/ath79/setup.c
Merge remote-tracking branch 'thermal-soc/next'
[karo-tx-linux.git] / arch / mips / ath79 / setup.c
index 8755d618e116ec32fd6fff90d0081b0bb2e4bb9c..01808e85e263d5be0f87d07bbaa4ddd9b670c1c6 100644 (file)
 
 #define ATH79_SYS_TYPE_LEN     64
 
-#define AR71XX_BASE_FREQ       40000000
-#define AR724X_BASE_FREQ       5000000
-#define AR913X_BASE_FREQ       5000000
-
 static char ath79_sys_type[ATH79_SYS_TYPE_LEN];
 
 static void ath79_restart(char *command)
@@ -207,10 +203,8 @@ void __init plat_mem_setup(void)
        fdt_start = fw_getenvl("fdt_start");
        if (fdt_start)
                __dt_setup_arch((void *)KSEG0ADDR(fdt_start));
-#ifdef CONFIG_BUILTIN_DTB
-       else
-               __dt_setup_arch(__dtb_start);
-#endif
+       else if (fw_arg0 == -2)
+               __dt_setup_arch((void *)KSEG0ADDR(fw_arg1));
 
        ath79_reset_base = ioremap_nocache(AR71XX_RESET_BASE,
                                           AR71XX_RESET_SIZE);
@@ -219,10 +213,11 @@ void __init plat_mem_setup(void)
        ath79_detect_sys_type();
        ath79_ddr_ctrl_init();
 
-       if (mips_machtype != ATH79_MACH_GENERIC_OF)
+       if (mips_machtype != ATH79_MACH_GENERIC_OF) {
                detect_memory_region(0, ATH79_MEM_SIZE_MIN, ATH79_MEM_SIZE_MAX);
-
-       _machine_restart = ath79_restart;
+               /* OF machines should use the reset driver */
+               _machine_restart = ath79_restart;
+       }
        _machine_halt = ath79_halt;
        pm_power_off = ath79_halt;
 }
@@ -272,15 +267,10 @@ void __init device_tree_init(void)
        unflatten_and_copy_device_tree();
 }
 
-static void __init ath79_generic_init(void)
-{
-       /* Nothing to do */
-}
-
 MIPS_MACHINE(ATH79_MACH_GENERIC,
             "Generic",
             "Generic AR71XX/AR724X/AR913X based board",
-            ath79_generic_init);
+            NULL);
 
 MIPS_MACHINE(ATH79_MACH_GENERIC_OF,
             "DTB",