[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20081203163217.13965.77996.stgit@warthog.procyon.org.uk>
Date: Wed, 03 Dec 2008 16:32:17 +0000
From: David Howells <dhowells@...hat.com>
To: rusty@...tcorp.com.au
Cc: dhowells@...hat.com, linux-kernel@...r.kernel.org
Subject: [PATCH 3/3] [PATCH] param: Adapt FRV to the new parameter handling
regime
Make FRV use the new core parameter code.
Signed-off-by: David Howells <dhowells@...hat.com>
---
arch/frv/kernel/setup.c | 43 ++++++++++++++-----------------------------
1 files changed, 14 insertions(+), 29 deletions(-)
diff --git a/arch/frv/kernel/setup.c b/arch/frv/kernel/setup.c
index 9548961..2f1506d 100644
--- a/arch/frv/kernel/setup.c
+++ b/arch/frv/kernel/setup.c
@@ -718,36 +718,25 @@ void __cpuinit calibrate_delay(void)
} /* end calibrate_delay() */
-/*****************************************************************************/
/*
- * look through the command line for some things we need to know immediately
- * FIXME: Use core_param or early_param.
+ * handle a specific memory limit handed over the kernel command line
*/
-static void __init parse_cmdline_early(char *cmdline)
+static int __init mem_parameter(char *data)
{
- if (!cmdline)
- return;
-
- while (*cmdline) {
- if (*cmdline == ' ')
- cmdline++;
-
- /* "mem=XXX[kKmM]" sets SDRAM size to <mem>, overriding the value we worked
- * out from the SDRAM controller mask register
- */
- if (!memcmp(cmdline, "mem=", 4)) {
- unsigned long long mem_size;
-
- mem_size = memparse(cmdline + 4, &cmdline);
- memory_end = memory_start + mem_size;
- }
-
- while (*cmdline && *cmdline != ' ')
- cmdline++;
- }
+ unsigned long long mem_size;
-} /* end parse_cmdline_early() */
+ if (!data || !*data)
+ return 0;
+ mem_size = memparse(data, NULL);
+ memory_end = memory_start + mem_size;
+ return 0;
+}
+early_param("mem", mem_parameter);
+/*
+ * retrieve the boot command line from RedBoot and stash it somewhere more
+ * appropriate
+ */
void __init arch_get_boot_command_line(void)
{
memcpy(boot_command_line, redboot_command_line, COMMAND_LINE_SIZE);
@@ -796,10 +785,6 @@ void __init setup_arch(void)
#endif
#endif
- /* deal with the command line - RedBoot may have passed one to the kernel */
- memcpy(command_line, boot_command_line, sizeof(command_line));
- parse_cmdline_early(command_line);
-
/* set up the memory description
* - by now the stack is part of the init task */
printk("Memory %08lx-%08lx\n", memory_start, memory_end);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists