aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/ath79/prom.c
diff options
context:
space:
mode:
authorAlban Bedel <albeu@free.fr>2014-11-07 12:44:35 +0100
committerRalf Baechle <ralf@linux-mips.org>2014-11-24 07:45:29 +0100
commit11a0f40bc98d6ae34cb3283e6008abc433e252bb (patch)
treed146396ca62f81f38904d47a9379ba598625b1ce /arch/mips/ath79/prom.c
parentMIPS: ath25: add Wireless device support (diff)
downloadlinux-dev-11a0f40bc98d6ae34cb3283e6008abc433e252bb.tar.xz
linux-dev-11a0f40bc98d6ae34cb3283e6008abc433e252bb.zip
MIPS: ath79: Use the firmware lib to parse the kernel command line
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>
Diffstat (limited to 'arch/mips/ath79/prom.c')
-rw-r--r--arch/mips/ath79/prom.c30
1 files changed, 2 insertions, 28 deletions
diff --git a/arch/mips/ath79/prom.c b/arch/mips/ath79/prom.c
index e9cbd7c2918f..80a0bffe5e1c 100644
--- a/arch/mips/ath79/prom.c
+++ b/arch/mips/ath79/prom.c
@@ -16,39 +16,13 @@
#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)