提交 6b6fabce 编写于 作者: H Hirokazu Takata

m32r: Fix set_memory() for DISCONTIGMEM

In case CONFIG_DISCONTIGMEM is set, the memory size of system was
always determined by CONFIG_MEMORY_SIZE and was not changeable.

This patch fixes set_memory() of arch/m32r/mm/discontig.c so that
we can specify memory size by the "mem=<size>" kernel parameter.
Signed-off-by: NHirokazu Takata <takata@linux-m32r.org>
上级 bac33bd5
...@@ -32,6 +32,9 @@ typedef struct { ...@@ -32,6 +32,9 @@ typedef struct {
} mem_prof_t; } mem_prof_t;
static mem_prof_t mem_prof[MAX_NUMNODES]; static mem_prof_t mem_prof[MAX_NUMNODES];
extern unsigned long memory_start;
extern unsigned long memory_end;
static void __init mem_prof_init(void) static void __init mem_prof_init(void)
{ {
unsigned long start_pfn, holes, free_pfn; unsigned long start_pfn, holes, free_pfn;
...@@ -42,7 +45,7 @@ static void __init mem_prof_init(void) ...@@ -42,7 +45,7 @@ static void __init mem_prof_init(void)
/* Node#0 SDRAM */ /* Node#0 SDRAM */
mp = &mem_prof[0]; mp = &mem_prof[0];
mp->start_pfn = PFN_UP(CONFIG_MEMORY_START); mp->start_pfn = PFN_UP(CONFIG_MEMORY_START);
mp->pages = PFN_DOWN(CONFIG_MEMORY_SIZE); mp->pages = PFN_DOWN(memory_end - memory_start);
mp->holes = 0; mp->holes = 0;
mp->free_pfn = PFN_UP(__pa(_end)); mp->free_pfn = PFN_UP(__pa(_end));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册