MIPS: ath79: Use the firmware lib to parse the kernel command line
authorAlban Bedel <albeu@free.fr>
Fri, 7 Nov 2014 11:44:35 +0000 (12:44 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Mon, 24 Nov 2014 06:45:29 +0000 (07:45 +0100)
No need to duplicate code that is available in the firmware library.
It also give us access to the firmware environment which is needed
to read the initrd address and size.

Signed-off-by: Alban Bedel <albeu@free.fr>
Cc: linux-kernel@vger.kernel.org
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/8353/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/ath79/prom.c

index e9cbd7c2918f36bbb059f74afa09e367ce00a128..80a0bffe5e1c37ab21178eee6504970cb2a0be5b 100644 (file)
 
 #include <asm/bootinfo.h>
 #include <asm/addrspace.h>
+#include <asm/fw/fw.h>
 
 #include "common.h"
 
-static inline int is_valid_ram_addr(void *addr)
-{
-       if (((u32) addr > KSEG0) &&
-           ((u32) addr < (KSEG0 + ATH79_MEM_SIZE_MAX)))
-               return 1;
-
-       if (((u32) addr > KSEG1) &&
-           ((u32) addr < (KSEG1 + ATH79_MEM_SIZE_MAX)))
-               return 1;
-
-       return 0;
-}
-
-static __init void ath79_prom_init_cmdline(int argc, char **argv)
-{
-       int i;
-
-       if (!is_valid_ram_addr(argv))
-               return;
-
-       for (i = 0; i < argc; i++)
-               if (is_valid_ram_addr(argv[i])) {
-                       strlcat(arcs_cmdline, " ", sizeof(arcs_cmdline));
-                       strlcat(arcs_cmdline, argv[i], sizeof(arcs_cmdline));
-               }
-}
-
 void __init prom_init(void)
 {
-       ath79_prom_init_cmdline(fw_arg0, (char **)fw_arg1);
+       fw_init_cmdline();
 }
 
 void __init prom_free_prom_memory(void)