aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mm/init.c
diff options
context:
space:
mode:
authorJeremy Kerr <jeremy.kerr@canonical.com>2010-01-11 17:17:34 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-02-15 16:39:13 -0500
commit2b0d8c251b8876d530a6bf671eb5425838fa698a (patch)
treef8b85d4ee0f76be6a45738452e91fbbb94602b4c /arch/arm/mm/init.c
parente119bfff1f102f8d1505910cd6c09df55c776b43 (diff)
ARM: 5880/1: arm: use generic infrastructure for early params
The ARM setup code includes its own parser for early params, there's also one in the generic init code. This patch removes __early_init (and related code) from arch/arm/kernel/setup.c, and changes users to the generic early_init macro instead. The generic macro takes a char * argument, rather than char **, so we need to update the parser functions a little. Signed-off-by: Jeremy Kerr <jeremy.kerr@canonical.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mm/init.c')
-rw-r--r--arch/arm/mm/init.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c
index a04ffbbbe253..a340569b991e 100644
--- a/arch/arm/mm/init.c
+++ b/arch/arm/mm/init.c
@@ -32,19 +32,21 @@
32static unsigned long phys_initrd_start __initdata = 0; 32static unsigned long phys_initrd_start __initdata = 0;
33static unsigned long phys_initrd_size __initdata = 0; 33static unsigned long phys_initrd_size __initdata = 0;
34 34
35static void __init early_initrd(char **p) 35static int __init early_initrd(char *p)
36{ 36{
37 unsigned long start, size; 37 unsigned long start, size;
38 char *endp;
38 39
39 start = memparse(*p, p); 40 start = memparse(p, &endp);
40 if (**p == ',') { 41 if (*endp == ',') {
41 size = memparse((*p) + 1, p); 42 size = memparse(endp + 1, NULL);
42 43
43 phys_initrd_start = start; 44 phys_initrd_start = start;
44 phys_initrd_size = size; 45 phys_initrd_size = size;
45 } 46 }
47 return 0;
46} 48}
47__early_param("initrd=", early_initrd); 49early_param("initrd", early_initrd);
48 50
49static int __init parse_tag_initrd(const struct tag *tag) 51static int __init parse_tag_initrd(const struct tag *tag)
50{ 52{