Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 27a59706 authored by Jiang Liu's avatar Jiang Liu Committed by Linus Torvalds
Browse files

mm/h8300: prepare for removing num_physpages and simplify mem_init()



Prepare for removing num_physpages and simplify mem_init().

Signed-off-by: default avatarJiang Liu <jiang.liu@huawei.com>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 3f2b73c3
Loading
Loading
Loading
Loading
+8 −28
Original line number Diff line number Diff line
@@ -121,40 +121,20 @@ void __init paging_init(void)

void __init mem_init(void)
{
	int codek = 0, datak = 0, initk = 0;
	/* DAVIDM look at setup memory map generically with reserved area */
	unsigned long tmp;
	extern unsigned long  _ramend, _ramstart;
	unsigned long len = &_ramend - &_ramstart;
	unsigned long start_mem = memory_start; /* DAVIDM - these must start at end of kernel */
	unsigned long end_mem   = memory_end; /* DAVIDM - this must not include kernel stack at top */
	unsigned long codesize = _etext - _stext;

#ifdef DEBUG
	printk(KERN_DEBUG "Mem_init: start=%lx, end=%lx\n", start_mem, end_mem);
#endif

	end_mem &= PAGE_MASK;
	high_memory = (void *) end_mem;
	pr_devel("Mem_init: start=%lx, end=%lx\n", memory_start, memory_end);

	start_mem = PAGE_ALIGN(start_mem);
	max_mapnr = num_physpages = MAP_NR(high_memory);
	high_memory = (void *) (memory_end & PAGE_MASK);
	max_mapnr = MAP_NR(high_memory);

	/* this will put all low memory onto the freelists */
	free_all_bootmem();

	codek = (_etext - _stext) >> 10;
	datak = (__bss_stop - _sdata) >> 10;
	initk = (__init_begin - __init_end) >> 10;

	tmp = nr_free_pages() << PAGE_SHIFT;
	printk(KERN_INFO "Memory available: %luk/%luk RAM, %luk/%luk ROM (%dk kernel code, %dk data)\n",
	       tmp >> 10,
	       len >> 10,
	       (rom_length > 0) ? ((rom_length >> 10) - codek) : 0,
	       rom_length >> 10,
	       codek,
	       datak
	       );
	mem_init_print_info(NULL);
	if (rom_length > 0 && rom_length > codesize)
		pr_info("Memory available: %luK/%luK ROM\n",
			(rom_length - codesize) >> 10, rom_length >> 10);
}