avr32: added mem kernel command line option support
authorMarco Stornelli <marco.stornelli@gmail.com>
Tue, 16 Sep 2008 07:14:03 +0000 (09:14 +0200)
committerHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
Mon, 22 Sep 2008 07:51:01 +0000 (09:51 +0200)
Signed-off-by: Marco Stornelli <marco.stornelli@gmail.com>
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
arch/avr32/kernel/setup.c

index d8e623c..5c70839 100644 (file)
@@ -283,6 +283,25 @@ static int __init early_parse_fbmem(char *p)
 }
 early_param("fbmem", early_parse_fbmem);
 
+/*
+ * Pick out the memory size.  We look for mem=size@start,
+ * where start and size are "size[KkMmGg]"
+ */
+static int __init early_mem(char *p)
+{
+       resource_size_t size, start;
+
+       start = system_ram->start;
+       size  = memparse(p, &p);
+       if (*p == '@')
+               start = memparse(p + 1, &p);
+
+       system_ram->start = start;
+       system_ram->end = system_ram->start + size - 1;
+       return 0;
+}
+early_param("mem", early_mem);
+
 static int __init parse_tag_core(struct tag *tag)
 {
        if (tag->hdr.size > 2) {