OSDN Git Service

MIPS: Malta: Fix CONFIG_BLK_DEV_IDE vestiges.
authorRalf Baechle <ralf@linux-mips.org>
Tue, 18 Mar 2014 20:22:46 +0000 (21:22 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Mon, 31 Mar 2014 16:17:12 +0000 (18:17 +0200)
Don't depend on CONFIG_IDE to make this more robust.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/mti-malta/malta-setup.c

index 405ff85..bf62151 100644 (file)
@@ -165,7 +165,6 @@ static void __init plat_setup_iocoherency(void)
 #endif
 }
 
-#ifdef CONFIG_BLK_DEV_IDE
 static void __init pci_clock_check(void)
 {
        unsigned int __iomem *jmpr_p =
@@ -175,18 +174,25 @@ static void __init pci_clock_check(void)
                33, 20, 25, 30, 12, 16, 37, 10
        };
        int pciclock = pciclocks[jmpr];
-       char *argptr = fw_getcmdline();
+       char *optptr, *argptr = fw_getcmdline();
 
-       if (pciclock != 33 && !strstr(argptr, "idebus=")) {
-               pr_warn("WARNING: PCI clock is %dMHz, setting idebus\n",
+       /*
+        * If user passed a pci_clock= option, don't tack on another one
+        */
+       optptr = strstr(argptr, "pci_clock=");
+       if (optptr && (optptr == argptr || optptr[-1] == ' '))
+               return;
+
+       if (pciclock != 33) {
+               pr_warn("WARNING: PCI clock is %dMHz, setting pci_clock\n",
                        pciclock);
                argptr += strlen(argptr);
-               sprintf(argptr, " idebus=%d", pciclock);
+               sprintf(argptr, " pci_clock=%d", pciclock);
                if (pciclock < 20 || pciclock > 66)
-                       pr_warn("WARNING: IDE timing calculations will be incorrect\n");
+                       pr_warn("WARNING: IDE timing calculations will be "
+                               "incorrect\n");
        }
 }
-#endif
 
 #if defined(CONFIG_VT) && defined(CONFIG_VGA_CONSOLE)
 static void __init screen_info_setup(void)
@@ -272,9 +278,7 @@ void __init plat_mem_setup(void)
 
        plat_setup_iocoherency();
 
-#ifdef CONFIG_BLK_DEV_IDE
        pci_clock_check();
-#endif
 
 #ifdef CONFIG_BLK_DEV_FD
        fd_activate();